Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
The MongoDB Quest - a tale of shards replicas a...
Search
Robson de Almeida
October 17, 2014
Programming
0
86
The MongoDB Quest - a tale of shards replicas and a lot of data
Presentation of my talk on the Big Data track of Porto Alegre TDC 2014 event.
Robson de Almeida
October 17, 2014
Tweet
Share
More Decks by Robson de Almeida
See All by Robson de Almeida
The Road to Node(JS)
robsondealmeida
0
64
R.I.P.: REST in peace! A guide through RESTful services.
robsondealmeida
2
130
The Queue is dead! Long live the Event!
robsondealmeida
1
200
Startup for Developers: each line matters.
robsondealmeida
0
87
The Lean Startup na Prática
robsondealmeida
0
200
Other Decks in Programming
See All in Programming
なんでRustの環境構築してないのにRust製のツールが動くの? / Why Do Rust-Based Tools Run Without a Rust Environment?
ssssota
14
47k
あなたとKaigi on Rails / Kaigi on Rails + You
shimoju
0
210
Goで実践するドメイン駆動開発 AIと歩み始めた新規プロダクト開発の現在地
imkaoru
4
920
CSC305 Lecture 12
javiergs
PRO
0
240
AI 駆動開発におけるコミュニティと AWS CDK の価値
konokenj
5
290
開発組織の戦略的な役割と 設計スキル向上の効果
masuda220
PRO
10
1.8k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
700
React Nativeならぬ"Vue Native"が実現するかも?_新世代マルチプラットフォーム開発フレームワークのLynxとLynxのVue.js対応を追ってみよう_Vue Lynx
yut0naga1_fa
2
1.8k
マイベストのシンプルなデータ基盤の話 - Googleスイートとのつき合い方 / mybest-simple-data-architecture-google-nized
snhryt
0
100
Webサーバーサイド言語としてのRustについて
kouyuume
1
5k
実践Claude Code:20の失敗から学ぶAIペアプログラミング
takedatakashi
18
9k
Claude Agent SDK を使ってみよう
hyshu
0
1.4k
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
34
2.3k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
190
55k
The Cult of Friendly URLs
andyhume
79
6.6k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1k
How STYLIGHT went responsive
nonsquared
100
5.9k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
How to Ace a Technical Interview
jacobian
280
24k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
Side Projects
sachag
455
43k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Transcript
The MongoDB Quest a tale of shards, replicas and a
lot of data.
/robsondealmeida /robsondealmeida
The MongoDB Quest a tale of shards, replicas and a
lot of data.
“ MongoDB is an open-source document database. (…) Written in
C++. ”
“ MongoDB is an open-source document database. (…) Written in
C++. ”
“ MongoDB is an open-source document database. (…) Written in
C++. ”
“ MongoDB is an open-source document database. (…) Written in
C++. ”
But, MongoDB don't scale … … oh really?! These guys
don’t agree.
None
MongoDB scale … but you need to know how to
do it.
Shard divide and conquer
sharding a collection
Easy … easy … but, wait!
???
None
Scale adds complexity now we need to handle with it.
None
Routers
Routers
Routers
None
Configuration servers
Shards
Enabling shard sh.shardCollection("<database>.<collection>", shard-key-pattern)
Shard key where the magic happens.
Range Based Sharding vs Hash Based Sharding
Replication Replica sets: redundancy and availability.
Replication
Aggregation aggregation pipelines & map-reduce
Aggregation pipeline
Map-Reduce
+
Thanks. speakerdeck.com/robsondealmeida
[email protected]
Quando o cara nasce para ser programador, o cara nasce
para ser programador.