7. What is MongoDB?
• Document Oriented Database
• Replication / Sharding
• Multiple Transaction(CRUD)
• Map-Reduce also possible
• Latest Stable Version is 3.0.3(May 2015, bug hunting)
11. MongoDB 구조 간단 review -1
Mongo 샤딩은 Data collection에 대해
unlimited size를 제공
(big data를 다루는데 있어 매우 중요)
12. MongoDB 구조 간단 review - 2
mongod
- 데이터를 저장, 관리하는 서버(복제 정책 적용 가능)
mongos
- client의 요청 받아 환경 설정 서버의 partitioning
정보를 참고해 적절한 데이터 서버로 요청을 포워딩
Config Server
- sharding에 대한 환경 설정 서버
- partitioning에 대한 정보를 관리
13. MongoDB Benefit
Elements of MongoDB fit for Cloud Environment
• Open Source
• Easy Scalability(Scale out), Easy Install, Easy Use
• Scheme-less
• High Availability
30. MongoDB 이럴 때 쓰지 마세요!
• 고객이 Oracle이랑 비교할 때(RDBMS와는 태생이 다름)
• 무료라는 이야기 듣고 고객이 들이댈 때
• 재정적으로 여유가 있을 때
• License에 대한 이해가 불충분한 경우
31. 고객이 말합니다(feat. 불특정 다수의 갑님)
• 오픈 소스인데 추가 비용이 왜 필요하죠? 라이선스....? 뭐래..
• 아니 왜 오라클 보다 성능이 안 나오는것 같죠?
• 오라클은 어쩌구, MySQL은 저쩌구, 나는 왕년에 #$1!@$#$..
32.
33. MongoDB 이럴 때 쓰세요!
• 유연함과 확장이 필요할 때
• log data, SNS data 등을 적재할 때
• 다양한 open source와 연계할 때 (ex. Hadoop)
• 서비스 구성 시 다양한 시도가 필요할 때
• 고객이 open source에 대한 이해가 충분할 때
37. “Rmongo” : Dis-advantage
• 성능 상의 아쉬움
• 인터페이스가 mongo-java-driver이기 때문에 java에 대한
두려움이 있는 이들에게는 장벽으로 다가올 수 있음
(단순 사용이 아닌 패키지 구조 확인 및 customizing에 있어서..)
38. “rmongodb” Package
• MongoDB interface for R
• 인터페이스는 mongo-C-driver(ver 0.8) 를 이용하여 제공됨
• 1.8.0, Apache License
• R( >= 2.10), MongoDB, GNU Make
40. “rmongodb” Dis-Advantage
• MongoDB 3.0 이상에서부터는 인증 이슈 존재
• 패키지 유지 문제와 신규 기능에 대한 릴리즈의 어려움
→ Mongo-C-Driver 1.0+ 은 완전히 다른 API 가짐
→ 즉 0.8에서 1.0으로 업그레이드 하려면 거의 처음부터
모든 패키지를 다시 써야 함