본문 바로가기

mongodb6

MongoDB.local Seoul 2024 MongoDB.local Seoul 2024를 다녀올 기회가 생겼다. 개별 신청은 받지 않고 법인이 등록되어 있어야 가능한 것으로 이해했는데, 다행히 잘 신청이 받아들여졌다. 행사 전날까지 코엑스로만 알고 있었는데, 당일날 아침 장소가 잠실 롯데월드호텔인 것을 알고 부랴부랴 가는 길을 찾아 본 건 비밀이다. ㅎ  입구를 찾느라 시간을 다소 보냈지만, 들어서자 행사를 알리는 세로형 플랜카드가 눈에 띄었다. 호텔에서 하는 행사라 깔끔히 정돈된 느낌이었다. 다소 늦게가서 그런지 외부에는 사람들이 많지 않았다. 얼른 접수대에서 접수하고 도시락 쿠폰을 받아 입장했다. (나중에 사진을 공유하겠지만 도시락이 맘에 안 들면 그냥 나가서 식당에서 점심을 해결할 생각이었다) Big Data Assistant  실내가 꽤 .. 2024. 9. 5.
flume multi sink 설정하기 단일 싱크 구조는 아래와 같다. 하나의 source와 channel, sink를 가지는 구조이다. 위 그림에서는 Flume을 이용하여 MongoDB에 저장하는 구조이다. 여기서 하나의 Event에 대해 2군데 데이터를 전송하려면 어떻게 해야할까? 예를 들어 하나의 Event를 보냈을 때, MongoDB에도 저장하고 HDFS 에도 저장하려고 한다. 2개의 sink를 연결해 볼 수 있다. 이 경우에는 Event 정보가 MongoDB나 HDFS 둘 중에 하나만 저장이 된다. 어떤 Sink가 선택이 되는지는 알 수 없으나, 설정상 나중에 연결된 sink 부터 전달되는 듯 하다. 테스트를 해보면 위 경우 HDFS Sink를 먼저 시도한다. 이 때 HDFS sink에 실패한다면 Mongo Sink를 시도한다 이는 .. 2015. 4. 14.
MongoDB Having 쿼리 적용하기 http://docs.mongodb.org/manual/reference/sql-aggregation-comparison/ 위 페이지에서 RDBMS에서 사용하는 SQL과 Mongo Query에 대해서 비교해주고 있다. 그 중 having 절을 Mongo Query로 어떻게 생성할까? 방법만 이야기 해보면 $match를 한 번 더 하면 된다. 예를 들면 고객별 날짜별 구입가격 합을 구하는 SQL이 아래와 같이 있다고 하자. SELECT cust_id, ord_date, SUM(price) AS total FROM orders GROUP BY cust_id, ord_date 여기에 일별 총 구매가가 250 이상인 고객만 가져오고 싶다면 having 절을 사용한다. SELECT cust_id, ord_date.. 2015. 3. 5.
MongoDB Aggregation시 Document Size 오류 MongoDB aggregate 를 통해 데이터를 집계하다가 아래와 같은 오류를 접하게 되었습니다. { errmsg: \"exception: aggregation result exceeds maximum document size (16MB)\", code: 16389, ok: 0.0 }"} 원인은 MongoDB의 경우 Document기반의 NoSQL DB로 Document size가 16MB로 고정되어 있습니다.(기본적으로는 수정 불가, 단, GridFS 적용시 가능) aggregate 수행결과 또한 Document이기 때문에, 이 결과도 16MB를 초과할 수 없습니다. 위 오류는 결과가 16MB를 초과하여 발생한 것 입니다. 이를 해결하기 위해서 MongoDB 공식 사이트를 검색해보니, Aggregat.. 2015. 3. 5.