
2 uÀÆÆ(g,Æ) 2017 c
0 Ú ó
OceanBase
[1]
´Cpnnúimu©Ùªêâ¥, ÙO8I´|±êz TB êâ
þ±9ê TPS! êz QPS ¯þ. Ïd, XÛ¢yéXd êâ¯ÎÑ
Ö, ·óJÑã]Ô.
ÏLé©Ùªêâ¥XÚ OceanBase e©Û, ±, , OceanBase kõê
â;!:ÚõÎ?n!:, ´, 8cÎ?n!:3?n join (ë)óÿ
Ã{¢yÓó. Ïd, Ã{ÏLò?Ö©)õÎ!:Óóª¢yp
¯Î. d, 3Î?n!:¥, éu join Îö, OceanBase ´{ü/¢yG1
z1, ¿vkÜn|^M]ÚêâP{;A5, ddÎ 54äD
ÑÚ join m, XÚ3?nLêâ join Î Ç~$e. éù":, ·J
Ñ«=k/¿1ë`zY: òêâ?1©, âêâõ°A5,
õ§Öêâ; z§ÕáÖêâ, êâÕá1 join ö. l¢y
Î!:¥ join ö¿1z1 , 4/Jp OceanBase E, join ÎÇ.
©ïÄ:´ nested loop join!Hash join!semi-join join {¿1zO±9êâ
©¡©ª.
Ø©SN|Xe: 1 1 !{0OceanBase êâ¥N(9DÚ nested
loop join, merge sort join!Hash join join {Ú semi-join! ©Ùª join {; 1 2 !0
OceanBase ¥DÚ join {ÎnÚÄu semi-join DÚ join {În; 1 3 !
03 OceanBase ¥é nested loop join!Hash join!semi-join join {¿1`zO;
1 4 !l¿1ÝéÎÇK!¿1Ýé join {1ÇK,±9¿1ÝéÄ
u semi-join { join {1ÇK 3 ¡?1 ¡¢y; 1 5 !é
©?1o(.
1 'ó
OceanBase ©Ùªêâ¥NeÌ© 4 ¬: ÌÑÖì RootServer(±e
{¡ RS)! êâ ;ÑÖì ChunkServer(±e{¡ CS)! OþêâÑ Öì Update-
Server(±e{¡ UPS)±9Î?nÑÖì MergeServer(±e{¡ MS). RS KI+n8+
¥¤kÑÖì, Ìü RS; UPS ÌKI?nXÚOþêâ#,
Ìü UPS; MS KKIÂÚ)Û^r SQL ¦, ²Lc{©Û! { ©
Û!Î`zXö=uA CS ½ö UPS; CS Ì KI;XÚÄ Oê
â, ÄOêâ;ün°, .
DÚë{ki@Ìë(nested loop join){! 8¿üSë(merge sort
join){±9MFë(Hash join){. ù 3 «{JÑÑkA½¯KµÚ·^¹.
X©Ùªêâ¥uÐÚÊ9, Bernstein
[2]
qJÑ semi-join (ë){, d{
Ì~ join L§¥êâDÑd. d, 3©ÙªXÚ¥, X MapReduce!Spark
XÚuÐ, 5 õ©ÙªXÚ m©æ^aq Map/Reduce
[3]
O., ùaXÚ
3ÏL?Ö©)ª, ~ join Od. e¡{0ù{A:±9ïÄuÐ
¹.
1.1 nested loop join {
Blasgen
[4]
3 1977 cJÑ nested loop join {. T{·ÜuüLêâþ¿
评论