Share
Embed
Transcript
83 slides
-
ܻח যڌѱ ࢥ٬ਸ ೮חо? 2018֙ 6ਘ 1ੌ ܻ٣झೖ ҅ ӣӔ
© RIDI Corp. -
2 ߊ ࣗѐ ܻח যڌѱ ࢥ٬ਸ ೮חо? ӣӔ ܻ٣ী 16֙
11ਘ ੑࢎ ࢶܽ ੋఠ֔ Ҋ١Ү সӝמਃਗ (3ѐਘ թ ƃƃ) -
1. ߓ҃ 2. ࢥ٬ী ೧ Ѿೠ Ѫٜ • ࢥ٘ ః
• ࢥ٬ ߑध • ࢥ٘ ഛ ߑध • ؘఠ 3. Ӓ റ ঠӝ 3 ݾର ܻח যڌѱ ࢥ٬ਸ ೮חо? -
5 ҳݒݾ۾ ѐࢶসਸ ೞѱ عणפ. ܻח যڌѱ ࢥ٬ਸ ೮חо? ӝઓ
ࠗ೮؍ ӝמ ۩࣌ Ѩ࢝द ױӂ֢ উؽ -> ۩࣌ ٜযоࢲ ଼ਸ ࣚࣻ ইঠೣ ҳݒ, ৈ, ਊӂ ఠ হ ୭न ҳݒࣽ ۳݅ ਗ -
6 ҳݒݾ۾ ѐࢶসਸ ೞѱ عणפ. ܻח যڌѱ ࢥ٬ਸ ೮חо? “[ױ೯ࠄ,
ো]۽ աׇࢲࠅ ࣻ ب۾ పҊܻܳ ٜ݅যप ࣻ աਃ?” “ৈೠ ଼ ޘ 200ৈӂ ֈחؘ Ӓী ਗೞח ଼ ӝо ցޖ ൨٘֎ਃ” “ҳݒݾ۾ ೠӖࣽਵ۽ աৌغѱ ࠗఌ ખ ೧ਃ” “ױ೯ࠄਵ۽ ೠӂ ࠙ੋؘ ো۽ 20ചө ࠙ۄҊ ݶ ҳݒӂࣻо ցޖ ഛ ৢۄоਗ਼ইਃ.” Ҋёٜ ࣘੋ ਃ -
9 ҳݒݾ۾ ؘఠ ҳࢿೞӝ ܻח যڌѱ ࢥ٬ਸ ೮חо? ਃҳ ࢎ೦ٜҗ
݆ࣻ ாझٜਸ ܻೡ ؘఠ ਃ -
10 ҳݒݾ۾ ؘఠ ҳࢿೞӝ ܻח যڌѱ ࢥ٬ਸ ೮חо? ҳݒݾ۾ ؘఠח
ਬ ଼ ప࠶ী ઙࣘ. -
11 ਬ ଼ ప࠶ ޖट ప࠶ੋоਃ? ܻח যڌѱ ࢥ٬ਸ ೮חо?
ҳݒݾ۾ ؘఠ ҳࢿೞӝ -
12 • ਬо ҳݒೠ ଼ ӝ۾غח ప࠶ • ਬ ଼
ప࠶ ࢎղীࢲ о Ҋ ࡅܰѱ טযաח ప࠶ • അ ড 3.5র Ѥ • ਬ ଼ ప࠶ ݆ ࢎਊೞח ప࠶ • ਬ ଼ ప࠶ ୶о/ࣻ ࠼ߣೞ. • ݆ ࢎਊীࢲ ߽ݾਸ ҳݒݾ۾ ؘఠ ҳࢿೞӝ ܻח যڌѱ ࢥ٬ਸ ೮חо? -
14 ҳݒݾ۾ ؘఠ ҳࢿೞӝ • ੋझఢझ 1ѐ/ప࠶ 1ѐী Write߽ݾ ߊࢤೠ.
• ؘఠ Ѥࣻо ૐоೡ ࣻ۾ ప࠶ झః݃ ߸҃ ࠗझ۞ਕ. • झః݃ ߸҃ী 1ੌ࢚ Ѧܽ. • ࢜۽ ਃҳࢎ೦ ࢤ҂ਸٸ ਬোೞѱ ೞӝ ൨ٜ. • 3রѤਸ ج೮Ҋ ૐо୶ࣁܳ ࠌਸٸ ప࠶ 1ѐ۽ ҙܻೞӝ ൨ٜ. ܻח যڌѱ ࢥ٬ਸ ೮חо? -
15 ӝઓ ҳݒݾ۾ਸ ҙܻೞ؍ ѻҊ ח ޙઁ ܻח
যڌѱ ࢥ٬ਸ ೮חо? -
16 ࢎप ҳݒݾ۾ ѐࢶ ݾ ߈ ߽ݾ ಽযղӝ ܻח
যڌѱ ࢥ٬ਸ ೮חо? -
20 ؘఠо যڃ ࢥ٘۽ ٜযт ӝળ غח ч ؘఠܳ Ӑੌೞѱ
࠙ߓೞӝ ਤ೧ࢲח ࢥ٘ ఃо ݒ ݒ ਃೞ. ؘఠо Ӑੌೞѱ ࠙ߓغ ޅೞݶ ౠ ࢥ٘ী ܻࣗझ ࢎਊ ށܾ ࣻ . ࢥ٘ ః ܻח যڌѱ ࢥ٬ਸ ೮חо? -
21 VS ࢥ٘ ః ਬ ID ଼ ID ܻח যڌѱ
ࢥ٬ਸ ೮חо? • ਬ Ҋਬ ੋؙझ • Integer ఋੑ • ଼ Ҋਬ ੋؙझ • String ఋੑ -
22 ࢲ࠺झ ౠࢿ࢚ ਬӝ߈ ؘఠ݅ ઓೠ. ਬ ױਤ۽ ޘযࢲ Write೧ঠ
ೞח ҃о . ೠ ਬ ؘఠо ৈ۞ ࢥ٘ী ಌઉਵݶ ӝמҳഅ о ൨ٜ. ࢥ٘ ః ਬ ID ܻח যڌѱ ࢥ٬ਸ ೮חо? -
24 ࢥ٬ ߑध • ࢥ٘ ః ߧਤ۽ ࠙ߓ • ࢥ٘
ഛ औ. • ex) 4001ߣ ~ 5000ߣ Shard D • ܻࣗझ ࢎਊ ౠ ࢥ٘ী ށܾ оמࢿ ઓ • (ࢥ٘ ః % ࢥ٘ ࣻ) чਵ۽ ࠙ߓ • Range basedী ࠺೧ ܻࣗझ ࢎਊ Ӑੌ • ࢥ٘о ୶оغݶ(ࢥ٘ ః % ࢥ٘ ࣻ) ч ߸ ҃غӝ ٸޙী ؘఠܳ ࠙ߓ ೧ঠೠ. VS Range based Shard C Shard A Shard B 1~2000 2000 ~ 3000 3000 ~ 4000 Modulus Based 1 C B A C B A C B A C B A B A 2 3 1 2 3 1 2 3 1 2 3 1 2 ܻח যڌѱ ࢥ٬ਸ ೮חо? -
25 ܻࣗझ оਊࢿҗ ؘఠ ࠙ߓ ࠺Ү Ӑੌ೮ਵݶ જѷ. Modulus based
ࢥ٬ ߑध ࢥ٘ ഛद ؘఠ ࠙ߓо ୭ࣗച عਵݶ જѷ. Range based ܻח যڌѱ ࢥ٬ਸ ೮חо? -
26 ࢥ٬ ߑध ܻח যڌѱ ࢥ٬ਸ ೮חо? ف оܳ زदী
݅ೡ ߑߨ হਸө? ܻࣗझ оਊࢿҗ ؘఠ ࠙ߓ ࠺Ү Ӑੌ೮ਵݶ જѷ. Modulus based ࢥ٘ ഛद ؘఠ ࠙ߓо ୭ࣗച عਵݶ જѷ. Range based -
27 ࠗ࠙ Key-Value झషযীࢲ ࢎਊೞח ࠙ ߑध ex) Couchbase /
Cassandra ١ ֢٘ ࣻо ߸҃ؼٸ ୶о ઁغח ֢٘ ೧ࢲ݅ ؘఠ ߸҃ ੌযդ. ࢥ٬ ߑध Consistent Hashing(ੌҙػ ೧य) ܻח যڌѱ ࢥ٬ਸ ೮חо? -
28 Consistent Hashing(ੌҙػ ೧य) 3ѐ ֢٘о ઓೞח ࢚ട Shard A
2 4 8 9 Shard B 1 6 11 12 Shard C 3 5 7 10 ܻח যڌѱ ࢥ٬ਸ ೮חо? -
29 Consistent Hashing(ੌҙػ ೧य) Shard A 2 4 9 Shard
B 1 6 Shard C 3 10 Shard D 8 11 7 5 12 ܻח যڌѱ ࢥ٬ਸ ೮חо? 1ѐо ֢٘о ୶оغݶ п ֢٘ীࢲ ੌࠗ ؘఠо ࢜۽ ֢٘۽ ز -
30 Consistent Hashing(ੌҙػ ೧य) ܻח যڌѱ ࢥ٬ਸ ೮חо? 1ѐ ֢٘о
ઁغݶ ઁػ ֢٘ ؘఠܳ աׇࢲ п ֢٘۽ ׳ Shard A 2 4 8 9 Shard B 1 6 11 12 Shard C 3 5 7 10 Shard D -
32 Consistent Hashing(ੌҙػ ೧य) 3ѐ ֢٘ܳ ೧द೧ࢲ ೧द ݂ਸ ݅ٚ.
1 7 4 ܻח যڌѱ ࢥ٬ਸ ೮חо? -
33 Consistent Hashing(ੌҙػ ೧य) ؘఠܳ hash ೠ. ӏী ٮۄ пп
֢٘ী ٜযр. 1 7 4 2 3 4 6 5 8 9 ܻח যڌѱ ࢥ٬ਸ ೮חо? -
34 Consistent Hashing(ੌҙػ ೧य) ܻח যڌѱ ࢥ٬ਸ ೮חо? Ӓ۞ա അ
ݽण ֢٘ ࠙ನо ೞ ঋ. ۆ࢝ ֢٘ ઁद ࠙ഘ࢝ ֢٘ী ࠗ ழ. 1 4 2 3 4 6 5 8 9 -
35 Consistent Hashing(ੌҙػ ೧य) ֢٘ܳ ৈ۞ ѐ о࢚ ֢٘۽ ҳࢿ
֢٘ ࠙ನо ೧ݶ ؘఠب ബҗਵ۽ ࠙ߓػ. ܻח যڌѱ ࢥ٬ਸ ೮חо? 1 4 7 2 3 5 6 8 9 1 1 1 -
36 ܻࣗझ оਊࢿҗ ؘఠ ࠙ߓ ࠺Ү Ӑੌ೮ਵݶ જѷ. ࢥ٘ ഛद
ؘఠ ࠙ߓо ୭ࣗച عਵݶ જѷ. ࢥ٬ ߑध Consistent Hashing ف о ӝળ ݽف ݅ ܻח যڌѱ ࢥ٬ਸ ೮חо? -
37 Consistent Hashing ؘఠ ࠙ పझ ਬ ࠙ನо о Ӑੌೠ
Ѫ ঌҊ્ܻ ࣘبо ࡅܲ Ѫ ܻח যڌѱ ࢥ٬ਸ ೮חо? -
38 Consistent Hashing ؘఠ ࠙ పझ ܻח যڌѱ ࢥ٬ਸ ೮חо?
Replica ߹ ਬ ࠙ನ ࠺Ү ߸ز ҅ࣻ (ળಞର / ಣӐ) md5 - replica 1024 2.4% md5 - replica 512 4.3% blake2b - replica 1024 2.6% blake2b - replica 512 4.6% xxhash - replica 1024 3.2% xxhash - replica 512 5.9% -
39 Consistent Hashing ؘఠ ࠙ పझ ܻח যڌѱ ࢥ٬ਸ ೮חо?
о࢚ ֢٘ ࣻܳ 1024۽ ೞݶ ೧द ݂ ӝо ցޖ ழ. ରо ח Ѫ ইפӝ ٸޙী 512ѐ۽ Ѿ೮. ࠙ನח md5о ؊ જ݅ blake2b৬ ରо ঋҊ blake2bо md5ࠁ ࡅܲ ঌҊ્ܻӝ ٸޙী blake2b۽ Ѿ೮. -
40 Consistent Hashing ؘఠ ࠙ పझ ܻח যڌѱ ࢥ٬ਸ ೮חо?
blake2b, о࢚ ֢٘ࣻ 512ѐ۽ Ѿ! -
42 ࢥ٘ ഛ ߑউ ࢥ٬ਸ ೞח ਬח ࠗೞ࠙ਸ ਤ೧ࢲ. Ӓ۞ա
ࢥ٬ਸ ೧ب ې טযաҊ ೠ ࢥ٘ ؘఠо ழݶ ڙэ ࠗೞо ߊࢤೞחؘ ٸ ࢥ٘ ࣻܳ ט۰ঠ ೠ. ೞ݅, ࢥ٘ܳ טܻח Ѥ ࠺ਊ সӝ ٸޙী ܻ Ӓ ߑউਸ ࢤп೧ࠅ ਃо . ܻח যڌѱ ࢥ٬ਸ ೮חо? -
43 ࢥ٘ ഛ ߑউ ఋࢎ ࢎ۹: Kakao 1. ؘఠܳ ࠙ߓ
ೞӝ ਤ೧ Table Crawler৬ Replication Protocolਸ ਊೠ ਕழ ҳഅ 2. ف о ਕழܳ ڸਕ ࢜۽ ڸਕك DB Instanceী ؘఠܳ Syncೣ 3. ؘఠ Ѩૐ റ Live • ࠶۽Ӓ Ӗ ଵҊ - ղࠗ Ѩૐ ױ҅ۄҊ ݺदغয. ܻח যڌѱ ࢥ٬ਸ ೮חо? -
44 ࢥ٘ ഛ ߑউ ఋࢎ ࢎ۹: Tumblr ۠ Databaseҳࢿ णפ.
master blog 1-1000 slave blog 1-1000 slave blog 1-1000 ܻח যڌѱ ࢥ٬ਸ ೮חо? -
45 ࢥ٘ ഛ ߑউ ఋࢎ ࢎ۹: Tumblr ࢲ࠺झী ైੑೞ ঋ
࢜۽ ठۨ࠳ ୶оೞҊ ؘఠܳ ߈ਵ۽ ա׃ master blog 1-1000 slave blog 1-1000 slave blog 1-1000 slave blog 501- 1000 slave blog 1-500 slave blog 1-500 slave blog 1-500 slave blog 501- 1000 slave blog 501- 1000 ܻח যڌѱ ࢥ٬ਸ ೮חо? -
46 ࢥ٘ ഛ ߑউ ఋࢎ ࢎ۹: Tumblr ݃झఠ۽ о؍ Read/Writeܳ
୶оػ Slave۽ ز master blog 1-1000 slave blog 1-1000 slave blog 1-1000 slave blog 501- 1000 slave blog 1-500 slave blog 1-500 slave blog 1-500 slave blog 501- 1000 slave blog 501- 1000 R/W R/W ܻח যڌѱ ࢥ٬ਸ ೮חо? -
47 ࢥ٘ ഛ ߑউ ఋࢎ ࢎ۹: Tumblr ӝઓ ݃झఠ৬ ܻܻா࣌ਸ
ઁѢೞҊ ؘఠ ࠁ master2 blog 501- 1000 master1 blog 1-500 slave blog 1-500 slave blog 1-500 slave blog 501- 1000 slave blog 501- 1000 Master blog 1-1000 slave blog 1-1000 slave blog 1-1000 X ܻח যڌѱ ࢥ٬ਸ ೮חо? -
48 ࢲ࠺झী ైੑೞ ঋ ठۨ࠳ܳ ୶оೠ റ ؘఠܳ աׇࢲ ೠ.
Tumblr ݈۽ח ޖױ ഛۄҊ ೠ. ࢥ٘ ഛ ߑউ ఋࢎ ࢎ۹: Tumblr ܻח যڌѱ ࢥ٬ਸ ೮חо? -
49 ࢥ٘ ഛ ߑউ ܻח যڌѱ ࢥ٬ਸ ೮חо? ഛद ٘ܳ
ਊೠ ࠙ߓ(ਕழ) ؘఠ ࠁহ ࢥ٘ ഛࢿ/ؘఠ न܉ࢿਸ ࠁೞҊ र. -
50 ഛद ٘ܳ ਊೠ ࠙ߓ(ਕழ) ؘఠ ࠁহ ࢥ٘ ഛࢿ/ؘఠ
न܉ࢿਸ ࠁೞҊ र. ࢥ٘ ഛ ߑউ ੋۄܳ ా೧ࢲ ࢥ٘ܳ ҙܻ೧ࠁחѤ যڄө? ܻח যڌѱ ࢥ٬ਸ ೮חо? -
51 ੋझఢझী MySQL Databaseܳ ࠙ ٜ݅যفҊ ܻࣗझо ࠗೡٸ ੋझఢझܳ ഛೞח
ߑध Databaseܳ Logical DB, ੋझఢझܳ Physical DBۄҊ ܴ ࠢ. ࢥ٘ ഛ ߑউ ܻח যڌѱ ࢥ٬ਸ ೮חо? -
53 ࢥ٘ ഛ ߑউ Instance B Instance A WAS Shard
C Shard B Shard D Event Worker Shard A READ Write Replication ܻח যڌѱ ࢥ٬ਸ ೮חо? -
54 ࢥ٘ ഛ ߑউ Instance B Instance A WAS Shard
C Shard B Shard D Event Worker Instance A` Instance B` Shard A READ Write Replication ܻח যڌѱ ࢥ٬ਸ ೮חо? -
55 ࢥ٘ ഛ ߑউ Instance B Instance A WAS Shard
C Shard B Shard D Event Worker Instance A` Instance B` Shard A Shard B Shard D READ Write Replication ܻח যڌѱ ࢥ٬ਸ ೮חо? -
56 ࢥ٘ ഛ ߑউ Instance B Instance A WAS Shard
C Shard B Shard D Event Worker Instance A` Instance B` Shard A Shard B Shard D READ Write Replication ܻח যڌѱ ࢥ٬ਸ ೮חо? -
57 ࢥ٘ ഛ ߑউ Instance B Instance A WAS Shard
C Shard B Shard D Event Worker Instance A` Instance B` Shard A Shard B Shard D READ Write Replication ܻח যڌѱ ࢥ٬ਸ ೮חо? -
58 ࢥ٘ ഛ ߑউ Instance B Instance A WAS Shard
C Shard B Shard D Event Worker Instance A` Instance B` Shard A Shard B Shard D READ Write Replication ܻח যڌѱ ࢥ٬ਸ ೮חо? -
59 ࢥ٘ ഛ ߑউ Instance B Instance A WAS Shard
C Event Worker Instance A` Instance B` Shard A Shard B Shard D READ Write Replication ܻח যڌѱ ࢥ٬ਸ ೮חо? -
60 ࢥ٘ ഛ ߑউ ୭۽ ഛೡ ࣻ ח Physical DBࣻо
೧ઉ ח ױ . Logical DB ࣻ ܳ ט۰ঠ ೞחؘ ҃ ؘఠܳ ࠙ߓ ೧ঠೠ. ܻח যڌѱ ࢥ٬ਸ ೮חо? -
61 ࢥ٘ ഛ ߑউ ೞ݅ ҡଳ. Consistent Hash ߑधਵ۽ ؘఠܳ
࠙ߓೞӝ ٸޙী ࢚ਵ۽ ࠙ߓ/Ѩૐ դبо ծ. ܻח যڌѱ ࢥ٬ਸ ೮חо? -
63 ؘఠ ҳݒݾ۾ ਃҳࢎ೦ਸ ҳഅೞӝ ਤ೧ࢲח ଼ ؘఠ৬ JOIN
ࣻ But, ܲ DBী ઓೞח ؘఠ৬ JOIN ࠛоמ ݽٚ ࢥ٘ী ҕాਵ۽ ઓೞח ؘఠ ప࠶ ਃೞ. ܻח যڌѱ ࢥ٬ਸ ೮חо? -
64 ؘఠ Shard A Book Item Source Book Item
Shard B Book Worker ܻח যڌѱ ࢥ٬ਸ ೮חо? ਗࠄਸ فҊ ࢥ٘ী ࠂઁೞח ѐ֛ (Ӓր Replication…) -
65 ؘఠ ؘఠܳ ࢥ٘ী ನೣೣਵ۽ॄ ۽ ௪ܻܳ
ࢿೡٸ ਬױਤ۽ ࢤпೞݶ ױੌ DBۢ ࢎਊೡ ࣻ ܻח যڌѱ ࢥ٬ਸ ೮חо? -
66 ୨ ܻ • ࢥ٘ ః • ਬ ID •
ࢥ٬ ߑध • Consistent Hashܳ ਊೠ ࠙ߓ • ࢥ٘ ഛ ߑध • ࠙ೠ Logical DBࢤࢿ, Physical DB݅ ഛ • ؘఠ • Sourceܳ فҊ п ࢥ٘ী ࠂઁೞח ߑध ܻח যڌѱ ࢥ٬ਸ ೮חо? -
68 Ѿೠ ଼ٜਸ ҳഅೠ ۄ࠳۞ܻ ࢿ https://github.com/ridi/django-shard-library ৻Ҵੋ झఋ 4ѐ
ନযષ ƃƃƃ ܻח যڌѱ ࢥ٬ਸ ೮חо? ই ݆ ࠗೠ ҳੑפ. ৈ۞࠙ ݆ ҙब ߄ۉפ :) -
69 ܻח যڌѱ ࢥ٬ਸ ೮חо? Terraformਸ ాೠ RDSੋۄ ҙܻ ୶റ
҅ദ ࢥ٘ ഛ زച ࢥ٘ ۄ࠳۞ܻ ӝמ ؊ ۄ࠳۞ܻѱ ъച -
71 ؘఠ ࠙ߓೡٸ ৵ Replicationਵ۽ উ೮աਃ? MySQL Tableױਤ۽ Replication
غਗ਼ইਃ? Q & A Question 1 -
72 Q & A Answer 1 ؘఠܳ п ࢥ٘ী
֍য۰ݶ Master-Master Replicationਵ۽ ҳ ࢿ೧ঠפ. അ RDS ҃ Aurora৻ীח Master-Master Replicationਸ ਗೞ ঋইࢲ ਕழܳ ా೧ ؘఠܳ ࠙ߓೞҊ णפ. -
73 ৵ Aurora উ 㛣աਃ? Master-Master Replicationب ਗೞҊ ࢿמب ؊
ੜ աয়ਗ਼ইਃ? Q & A Question 2 -
74 Q & A Answer 2 ѐߊೞݶࢲ ௪ܻౚ ખ ݆
ٜযщणפ. Auroraо MySQLഐജۄ Ҋ ೞחؘ ੋఠಕझ݅ ഐജੋ Storage engineө ഐജੋ ഛੋ೧ࠅ ਃо যࢲ بੑೞ ޅ೮णפ. ҅ദ оҊ णפ :) -
76 Q & A Answer 3 গदীח RDS Multi AZܳ
ా೧ࢲ ࠂҳೡ ҅ദੑפ. -
77 ࢥ٘ ഛद ୭ 5࠙ب ѦܾѢۄҊ ݈ॹೞ࣑חؘ 5࠙زউ ҳݒݾ۾ ߈
উغח Ѣ ইצоਃ? Q & A Question 4 -
78 Q & A Answer 4 ୭ୡ ਃҳࢎ೦ ܻೡٸ ইޖܻ
ןযب ୭ 5࠙উীח ҳݒݾ۾ী ߈ػ Ҋ ೮חؘ, ࢥ٘ ഛө Ҋ۰ೠ 5࠙ੑפ. Ӓېب 5࠙ ૣ दр ই פۄࢲ ഛਸ ೞѱ غݶ غب۾ Ѩ ࢜߷दр ਊ೧ࢲ ೯ೡ ҅ദ ੑפ. -
79 ࢥ٘ ഛೡٸ Writeܳ ઁѢೞݶ ҳݒ೧ب ؘఠ উऺחѢ ইצоਃ? Q
& A Question 5 -
80 Q & A Answer 5 ѐߊೡٸ CQRSಁఢਵ۽ ҳഅਸ ೮णפ.
ী Ӓܿীࢲ Writeܳ ઁѢ ೞחѤ ௸ ؘఠܳ ࢥ٘۽ ॳח Ѫਸ ઁѢೞח Ѣۄࢲ ࢥ٘ ഛীب ҳݒೠ ӝ۾ ௸ী ӝ۾ؾפ. যࢲ ࢥ٘ ഛ ৮ܐغݶ द ܻغ ӝ ٸޙী Write־ۅ হणפ. -
81 ଵҊ ޙࢲ • ఋࢎࢎ۹ • http://tech.kakao.com/2016/07/01/adt-mysql-shard-rebalancing/ • https://pegasuskim.wordpress.com/2015/12/17/tumblr-sharding/ •
http://assets.en.oreilly.com/1/event/74/ Massively%20Sharded%20MySQL%20at%20Tumblr%20Presentation.pdf • http://highscalability.com/blog/2012/2/13/tumblr-architecture-15-billion-page-views-a-month-and-harder.html • https://engineering.tumblr.com/post/7658008285/efficiently-copying-files-to-multiple-destinations • Karger Consistent Hashing • https://charsyam.wordpress.com/2016/10/02/%EC%9E%85-%EA%B0%9C%EB%B0%9C-consistent- hashing-%EC%97%90-%EB%8C%80%ED%95%9C-%EA%B8%B0%EC%B4%88/ • https://www.akamai.com/es/es/multimedia/documents/technical-publication/consistent-hashing-and-random- trees-distributed-caching-protocols-for-relieving-hot-spots-on-the-world-wide-web-technical-publication.pdf • Jump Consistent Hashing • https://arxiv.org/pdf/1406.2294.pdf