เบ„เบธเบ™เบฅเบฑเบเบชเบฐเบ™เบฐเบ‚เบญเบ‡เบเบฒเบ™เบญเบญเบเปเบšเบšเบ•เบปเบงเปเบšเบšเบ‚เปเป‰เบกเบนเบ™เบชเปเบฒเบฅเบฑเบš NoSQL

เบเบฒเบ™เบ™เปเบฒเบชเบฐเป€เบซเบ™เบต

เบ„เบธเบ™เบฅเบฑเบเบชเบฐเบ™เบฐเบ‚เบญเบ‡เบเบฒเบ™เบญเบญเบเปเบšเบšเบ•เบปเบงเปเบšเบšเบ‚เปเป‰เบกเบนเบ™เบชเปเบฒเบฅเบฑเบš NoSQL โ€œเป€เบˆเบปเป‰เบฒเบ•เป‰เบญเบ‡เปเบฅเปˆเบ™เปƒเบซเป‰เป„เบงเป€เบ—เบปเปˆเบฒเบ—เบตเปˆเบˆเบฐเป€เบฎเบฑเบ”เป„เบ”เป‰ เป€เบžเบทเปˆเบญเบˆเบฐเบขเบนเปˆเบšเปˆเบญเบ™เบ™เบฑเป‰เบ™,
เปเบฅเบฐเป€เบžเบทเปˆเบญเป„เบ›เบšเปˆเบญเบ™เปƒเบ”เบšเปˆเบญเบ™เปœเบถเปˆเบ‡, เป€เบˆเบปเป‰เบฒเบ•เป‰เบญเบ‡เปเบฅเปˆเบ™เป„เบงเบเบงเปˆเบฒเบชเบญเบ‡เป€เบ—เบปเปˆเบฒ!โ€
(c) Alice in Wonderland

เบšเบฒเบ‡เบ„เบฑเป‰เบ‡เบเปˆเบญเบ™เบซเบ™เป‰เบฒเบ™เบตเป‰เบ‚เป‰เบญเบเป„เบ”เป‰เบ–เบทเบเบ‚เปเปƒเบซเป‰เบšเบฑเบ™เบเบฒเบ เบ™เบฑเบเบงเบดเป€เบ„เบฒเบฐ เบšเปเบฅเบดเบชเบฑเบ”เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบเปˆเบฝเบงเบเบฑเบšเบซเบปเบงเบ‚เปเป‰เบ‚เบญเบ‡เบเบฒเบ™เบญเบญเบเปเบšเบšเปเบšเบšเบˆเปเบฒเบฅเบญเบ‡เบ‚เปเป‰เบกเบนเบ™, เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเบ™เบฑเปˆเบ‡เบขเบนเปˆเปƒเบ™เป‚เบ„เบ‡เบเบฒเบ™เบชเปเบฒเบฅเบฑเบšเป€เบงเบฅเบฒเบ”เบปเบ™เบ™เบฒเบ™ (เบšเบฒเบ‡เบ„เบฑเป‰เบ‡เป€เบ›เบฑเบ™เป€เบงเบฅเบฒเบซเบฅเบฒเบเบ›เบต) เบžเบงเบเป€เบฎเบปเบฒเบชเบนเบ™เป€เบชเบเบเบฒเบ™เป€เบšเบดเปˆเบ‡เป€เบซเบฑเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเป€เบเบตเบ”เบ‚เบทเป‰เบ™เบขเบนเปˆเบญเป‰เบญเบกเบฎเบญเบšเบžเบงเบเป€เบฎเบปเบฒเปƒเบ™เป‚เบฅเบเบ‚เบญเบ‡เป€เบ•เบฑเบเป‚เบ™เป‚เบฅเบขเบต IT. เปƒเบ™เบšเปเบฅเบดเบชเบฑเบ”เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ (เบกเบฑเบ™เป€เบเบตเบ”เบ‚เบถเป‰เบ™เบซเบผเบฒเบ) เป‚เบ„เบ‡เบเบฒเบ™เบˆเปเบฒเบ™เบงเบ™เบซเบผเบฒเบเบšเปเปˆเป„เบ”เป‰เปƒเบŠเป‰เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ NoSQL (เบขเปˆเบฒเบ‡เบซเบ™เป‰เบญเบเบชเปเบฒเบฅเบฑเบšเปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™), เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เปƒเบ™เบšเบปเบ”เบšเบฑเบ™เบเบฒเบเบ‚เบญเบ‡เบ‚เป‰เบญเบเบ‚เป‰เบญเบเป„เบ”เป‰เป€เบญเบปเบฒเปƒเบˆเปƒเบชเปˆเบšเบฒเบ‡เบชเปˆเบงเบ™เปƒเบซเป‰เบžเบงเบเป€เบ‚เบปเบฒเป‚เบ”เบเปƒเบŠเป‰เบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เบญเบ‡ HBase เปเบฅเบฐเบžเบฐเบเบฒเบเบฒเบกเบ—เบดเบ”เบ—เบฒเบ‡เบเบฒเบ™เบ™เปเบฒเบชเบฐเป€เบซเบ™เบตเบ‚เบญเบ‡เบญเบธเบ›เบฐเบเบญเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบฑเป‰เบ™. เบœเบนเป‰เบ—เบตเปˆเบšเปเปˆเป€เบ„เบตเบเปƒเบŠเป‰เบžเบงเบเบกเบฑเบ™เป„เบ”เป‰เบœเบปเบ™. เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐ, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เบšเบฒเบ‡เบฅเบฑเบเบชเบฐเบ™เบฐเบ‚เบญเบ‡เบเบฒเบ™เบญเบญเบเปเบšเบšเบ•เบปเบงเปเบšเบšเบ‚เปเป‰เบกเบนเบ™เป‚เบ”เบเปƒเบŠเป‰เบ•เบปเบงเบขเปˆเบฒเบ‡เบ—เบตเปˆเบ‚เป‰เบญเบเบญเปˆเบฒเบ™เบซเบฅเบฒเบเบ›เบตเบเปˆเบญเบ™ เปƒเบ™เบšเบปเบ”เบ„เบงเบฒเบก "เบเบฒเบ™เปเบ™เบฐเบ™เปเบฒ HB ase Schema Design" เป‚เบ”เบ Amandeep Khurana. เป€เบกเบทเปˆเบญเบงเบดเป€เบ„เบฒเบฐเบ•เบปเบงเบขเปˆเบฒเบ‡, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบ›เบฝเบšเบ—เบฝเบšเบ—เบฒเบ‡เป€เบฅเบทเบญเบเบซเบผเบฒเบเบขเปˆเบฒเบ‡เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบ”เบฝเบงเบเบฑเบ™เป€เบžเบทเปˆเบญเบ–เปˆเบฒเบเบ—เบญเบ”เปเบ™เบงเบ„เบงเบฒเบกเบ„เบดเบ”เบ•เบปเป‰เบ™เบ•เปเปƒเบซเป‰เบเบฑเบšเบœเบนเป‰เบŠเบปเบกเป„เบ”เป‰เบ”เบตเบ‚เบถเป‰เบ™.

เบšเปเปˆเบ”เบปเบ™เบกเบฒเบ™เบตเป‰, "เบšเปเปˆเบกเบตเบซเบเบฑเบ‡เบ—เบตเปˆเบˆเบฐเป€เบฎเบฑเบ”," เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบ–เบฒเบกเบ•เบปเบงเป€เบญเบ‡เบงเปˆเบฒ (เบ—เป‰เบฒเบเป€เบ”เบทเบญเบ™เบžเบถเบ”เบชเบฐเบžเบฒเบ—เบตเปˆเบเบฒเบงเบ™เบฒเบ™เปƒเบ™เบเบฒเบ™เบเบฑเบเบเบฑเบ™เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐเปเบกเปˆเบ™เป€เบญเบทเป‰เบญเบญเปเบฒเบ™เบงเบเปƒเบซเป‰เปเบเปˆเป€เบฅเบทเปˆเบญเบ‡เบ™เบตเป‰), เบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆเบ—เบฒเบ‡เบ—เบดเบ”เบชเบฐเบ”เบตเบˆเบฐเบชเบญเบ”เบ„เปˆเบญเบ‡เบเบฑเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบซเบผเบฒเบเบ›เบฒเบ™เปƒเบ”? เปเบ—เป‰เบˆเบดเบ‡เปเบฅเป‰เบง, เบ™เบตเป‰เปเบกเปˆเบ™เบงเบดเบ—เบตเบ—เบตเปˆเปเบ™เบงเบ„เบงเบฒเบกเบ„เบดเบ”เบชเปเบฒเบฅเบฑเบšเบšเบปเบ”เบ„เบงเบฒเบกเบ™เบตเป‰เป€เบเบตเบ”. เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเบœเบนเป‰เบ—เบตเปˆเป„เบ”เป‰เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบš NoSQL เป€เบ›เบฑเบ™เป€เบงเบฅเบฒเบซเบผเบฒเบเบกเบทเป‰เบญเบฒเบ”เบˆเบฐเบšเปเปˆเป„เบ”เป‰เบฎเบฝเบ™เบฎเบนเป‰เบชเบดเปˆเบ‡เปƒเบซเบกเปˆเบˆเบฒเบเบกเบฑเบ™ (เปเบฅเบฐเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบญเบฒเบ”เบˆเบฐเบ‚เป‰เบฒเบกเป„เบ›เป€เบ„เบดเปˆเบ‡เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡เบšเบปเบ”เบ„เบงเบฒเบกเบ—เบฑเบ™เบ—เบต). เปเบ•เปˆเบชเปเบฒเบฅเบฑเบš เบ™เบฑเบเบงเบดเป€เบ„เบฒเบฐเบชเปเบฒเบฅเบฑเบšเบœเบนเป‰เบ—เบตเปˆเบเบฑเบ‡เบšเปเปˆเบ—เบฑเบ™เป„เบ”เป‰เป€เบฎเบฑเบ”เบงเบฝเบเบขเปˆเบฒเบ‡เปƒเบเป‰เบŠเบดเบ”เบเบฑเบš NoSQL, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบ„เบดเบ”เบงเปˆเบฒเบกเบฑเบ™เบˆเบฐเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเปƒเบˆเบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบฅเบฑเบเบชเบฐเบ™เบฐเบ‚เบญเบ‡เบเบฒเบ™เบญเบญเบเปเบšเบšเปเบšเบšเบˆเปเบฒเบฅเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบชเปเบฒเบฅเบฑเบš HBase.

เบ•เบปเบงเบขเปˆเบฒเบ‡เบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐ

เปƒเบ™เบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™เบ‚เบญเบ‡เบ‚เป‰เบญเบ, เบเปˆเบญเบ™เบ—เบตเปˆเบ—เปˆเบฒเบ™เบˆเบฐเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เปƒเบŠเป‰เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ NoSQL, เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ„เบดเบ”เบขเปˆเบฒเบ‡เบฅเบฐเบญเบฝเบ”เปเบฅเบฐเบŠเบฑเปˆเบ‡เบ™เปเป‰เบฒเบซเบ™เบฑเบเบ‚เปเป‰เบ”เบตเปเบฅเบฐเบ‚เปเป‰เป€เบชเบ. เบชเปˆเบงเบ™เบซเบผเบฒเบเปเบฅเป‰เบงเบšเบฑเบ™เบซเบฒเบชเบฒเบกเบฒเบ”เปเบเป‰เป„เบ‚เป„เบ”เป‰เป‚เบ”เบเปƒเบŠเป‰ DBMSs เปเบšเบšเบ”เบฑเป‰เบ‡เป€เบ”เบตเบก. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบกเบฑเบ™เบ”เบตเบเบงเปˆเบฒเบ—เบตเปˆเบˆเบฐเบšเปเปˆเปƒเบŠเป‰ NoSQL เป‚เบ”เบเบšเปเปˆเบกเบตเป€เบซเบ”เบœเบปเบ™เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™. เบขเปˆเบฒเบ‡เปƒเบ”เบเปเบ•เบฒเบก, เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเปƒเบŠเป‰เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ NoSQL, เบ—เปˆเบฒเบ™เบ„เบงเบ™เบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเบงเปˆเบฒเบงเบดเบ—เบตเบเบฒเบ™เบญเบญเบเปเบšเบšเบขเบนเปˆเบ—เบตเปˆเบ™เบตเป‰เปเบกเปˆเบ™เปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™. เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐเบšเบฒเบ‡เบชเปˆเบงเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒเบญเบฒเบ”เบˆเบฐเบœเบดเบ”เบ›เบปเบเบเบฐเบ•เบดเบชเปเบฒเบฅเบฑเบšเบœเบนเป‰เบ—เบตเปˆเป„เบ”เป‰เบ›เบฐเบ•เบดเบšเบฑเบ”เบเปˆเบญเบ™เบซเบ™เป‰เบฒเบ™เบตเป‰เบžเบฝเบ‡เปเบ•เปˆเบเปˆเบฝเบงเบเบฑเบš DBMSs เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡ (เบญเบตเบ‡เบ•เบฒเบกเบเบฒเบ™เบชเบฑเบ‡เป€เบเบ”เบเบฒเบ™เบ‚เบญเบ‡เบ‚เป‰เบญเบ). เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เปƒเบ™เป‚เบฅเบ "เบ„เบงเบฒเบกเบชเปเบฒเบžเบฑเบ™", เบžเบงเบเป€เบฎเบปเบฒเบกเบฑเบเบˆเบฐเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป‚เบ”เบเบเบฒเบ™เบชเป‰เบฒเบ‡เปเบšเบšเบˆเปเบฒเบฅเบญเบ‡เป‚เบ”เป€เบกเบ™เบšเบฑเบ™เบซเบฒ, เปเบฅเบฐเบžเบฝเบ‡เปเบ•เปˆเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบ–เป‰เบฒเบˆเปเบฒเป€เบ›เบฑเบ™, เป€เบฎเบฑเบ”เปƒเบซเป‰เบ•เบปเบงเปเบšเบš denormalize. เปƒเบ™ NoSQL เบžเบงเบเป€เบฎเบปเบฒ เบ—เบฑเบ™เบ—เบตเบ„เบงเบ™เบ„เปเบฒเบ™เบถเบ‡เป€เบ–เบดเบ‡เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ—เบตเปˆเบ„เบฒเบ”เบงเปˆเบฒเบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบ‚เปเป‰เบกเบนเบ™ เปเบฅเบฐเปƒเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™ denormalize เบ‚เปเป‰เบกเบนเบ™. เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เบกเบตเบซเบผเบฒเบเบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡เบญเบทเปˆเบ™เป†, เป€เบŠเบดเปˆเบ‡เบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ›เบถเบเบชเบฒเบซเบฒเบฅเบทเบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰.

เปƒเบซเป‰เบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเบšเบฑเบ™เบซเบฒ "เบชเบฑเบ‡เป€เบ„เบฒเบฐ" เบ•เปเปˆเป„เบ›เบ™เบตเป‰, เป€เบŠเบดเปˆเบ‡เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบชเบทเบšเบ•เปเปˆเป€เบฎเบฑเบ”เบงเบฝเบ:

เบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบˆเปเบฒเป€เบ›เบฑเบ™เปƒเบ™เบเบฒเบ™เบญเบญเบเปเบšเบšเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบชเปเบฒเบฅเบฑเบšเบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡เบซเบกเบนเปˆเป€เบžเบทเปˆเบญเบ™เบ‚เบญเบ‡เบœเบนเป‰เปƒเบŠเป‰เบ‚เบญเบ‡เบšเบฒเบ‡เป€เบ„เบทเบญเบ‚เปˆเบฒเบเบชเบฑเบ‡เบ„เบปเบกเบ—เบตเปˆเบšเปเปˆเบกเบตเบ•เบปเบงเบ•เบปเบ™. เป€เบžเบทเปˆเบญเบ‡เปˆเบฒเบ, เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบชเบปเบกเบกเบธเบ”เบงเปˆเบฒเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบ—เบฑเบ‡เบซเบกเบปเบ”เปเบกเปˆเบ™เบกเบธเป‰เบ‡ (เปƒเบ™ Instagram, เบšเปเปˆเปเบกเปˆเบ™ Linkedin). เป‚เบ„เบ‡โ€‹เบ›เบฐโ€‹เบเบญเบšโ€‹เบเบฒเบ™โ€‹เบ„เบงเบ™โ€‹เบˆเบฐโ€‹เบญเบฐโ€‹เบ™เบธโ€‹เบเบฒเบ”โ€‹เปƒเบซเป‰โ€‹เบ—เปˆเบฒเบ™โ€‹เบ›เบฐโ€‹เบชเบดเบ”โ€‹เบ—เบดโ€‹เบœเบปเบ™โ€‹:

  • เบ•เบญเบšเบ„เปเบฒเบ–เบฒเบกเบงเปˆเบฒเบœเบนเป‰เปƒเบŠเป‰ A เบญเปˆเบฒเบ™เบœเบนเป‰เปƒเบŠเป‰ B (เบฎเบนเบšเปเบšเบšเบเบฒเบ™เบญเปˆเบฒเบ™)
  • เบญเบฐโ€‹เบ™เบธโ€‹เบเบฒเบ”โ€‹เปƒเบซเป‰โ€‹เป€เบžเบตเปˆเบก / เบฅเบปเบšโ€‹เบเบฒเบ™โ€‹เป€เบŠเบทเปˆเบญเบกโ€‹เบ•เปเปˆโ€‹เปƒเบ™โ€‹เบเปโ€‹เบฅเบฐโ€‹เบ™เบตโ€‹เบ‚เบญเบ‡โ€‹เบเบฒเบ™โ€‹เบชเบฐโ€‹เบซเบกเบฑเบ / unsubscribe เบ‚เบญเบ‡โ€‹เบœเบนเป‰โ€‹เปƒเบŠเป‰ A เบˆเบฒเบโ€‹เบœเบนเป‰โ€‹เปƒเบŠเป‰ B (เปเบกเปˆโ€‹เปเบšเบšโ€‹เบเบฒเบ™โ€‹เบ›เปˆเบฝเบ™โ€‹เปเบ›เบ‡โ€‹เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹)

เปเบ™เปˆเบ™เบญเบ™, เบกเบตเบซเบผเบฒเบเบ—เบฒเบ‡เป€เบฅเบทเบญเบเปƒเบ™เบเบฒเบ™เปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒ. เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ„เบงเบฒเบกเบชเปเบฒเบžเบฑเบ™เบ›เบปเบเบเบฐเบ•เบด, เบžเบงเบเป€เบฎเบปเบฒเบชเปˆเบงเบ™เบซเบผเบฒเบเบญเบฒเบ”เบˆเบฐเบชเป‰เบฒเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ„เบงเบฒเบกเบชเปเบฒเบžเบฑเบ™ (เบญเบฒเบ”เบˆเบฐเบ–เบทเบเบžเบดเบกเป€เบ›เบฑเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบเบธเปˆเบกเบœเบนเป‰เปƒเบŠเป‰: เบ„เบญเบšเบ„เบปเบง, เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบ, เปเบฅเบฐเบญเบทเปˆเบ™เป†, เป€เบŠเบดเปˆเบ‡เบ›เบฐเบเบญเบšเบกเบต "เป€เบžเบทเปˆเบญเบ™" เบ™เบตเป‰), เปเบฅเบฐเป€เบžเบทเปˆเบญเป€เบžเบตเปˆเบกเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบš. เบ„เบงเบฒเบกเป„เบงเปƒเบ™เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบˆเบฐเป€เบžเบตเปˆเบกเบ”เบฑเบ”เบชเบฐเบ™เบต / เบเบฒเบ™เปเบšเปˆเบ‡เบ›เบฑเบ™. เบชเปˆเบงเบ™เบซเบผเบฒเบเบญเบฒเบ”เบˆเบฐ, เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบชเบธเบ”เบ—เป‰เบฒเบเบˆเบฐเบกเบตเบฅเบฑเบเบชเบฐเบ™เบฐเป€เบŠเบฑเปˆเบ™เบ™เบตเป‰:

user_id
friend_id

Vasya
เป€เบ›เป‚เบ•

Vasya
Olya

เบ•เปเปˆเป„เบ›เบ™เบตเป‰, เป€เบžเบทเปˆเบญเบ„เบงเบฒเบกเบŠเบฑเบ”เป€เบˆเบ™เปเบฅเบฐเบ„เบงเบฒเบกเป€เบ‚เบปเป‰เบฒเปƒเบˆเบ”เบตเบ‚เบถเป‰เบ™, เบ‚เป‰เบญเบเบˆเบฐเบŠเบตเป‰เบšเบญเบเบŠเบทเปˆเปเบ—เบ™ IDs

เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ‚เบญเบ‡ HBase, เบžเบงเบเป€เบฎเบปเบฒเบฎเบนเป‰เบงเปˆเบฒ:

  • เบเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒเบ—เบตเปˆเบกเบตเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบ—เบตเปˆเบšเปเปˆเบกเบตเบœเบปเบ™เปƒเบ™เบเบฒเบ™เบชเบฐเปเบเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เป€เบ•เบฑเบกเปเบกเปˆเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰ เบชเบฐเป€เบžเบฒเบฐเป‚เบ”เบเบ„เบต
    • เปƒเบ™เบ„เบงเบฒเบกเป€เบ›เบฑเบ™เบˆเบดเบ‡, เบ™เบฑเป‰เบ™เปเบกเปˆเบ™เป€เบซเบ”เบœเบปเบ™เบ—เบตเปˆเบงเปˆเบฒเบเบฒเบ™เบ‚เบฝเบ™เบ„เปเบฒเบ–เบฒเบก SQL เบ—เบตเปˆเบ„เบธเป‰เบ™เป€เบ„เบตเบเบเบฑเบšเบซเบผเบฒเบเป†เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเป€เบ›เบฑเบ™เบ„เบงเบฒเบกเบ„เบดเบ”เบ—เบตเปˆเบšเปเปˆเบ”เบต; เปƒเบ™เบ—เบฒเบ‡เบ”เป‰เบฒเบ™เบงเบดเบŠเบฒเบเบฒเบ™, เปเบ™เปˆเบ™เบญเบ™, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบชเบปเปˆเบ‡เบ„เปเบฒเบ–เบฒเบก SQL เบเบฑเบš Joins เปเบฅเบฐเป€เบซเบ”เบœเบปเบ™เบญเบทเปˆเบ™เป†เป„เบ›เบซเบฒ HBase เบˆเบฒเบ Impala เบ”เบฝเบงเบเบฑเบ™, เปเบ•เปˆเบกเบฑเบ™เบˆเบฐเบกเบตเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเปเบ™เบงเปƒเบ” ...

เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเบ–เบทเบเบšเบฑเบ‡เบ„เบฑเบšเปƒเบซเป‰เปƒเบŠเป‰ ID เบœเบนเป‰เปƒเบŠเป‰เป€เบ›เบฑเบ™เบเบธเบ™เปเบˆ. เปเบฅเบฐเบ„เบงเบฒเบกเบ„เบดเบ”เบ—เปเบฒเบญเบดเบ”เบ‚เบญเบ‡เบ‚เป‰เบญเบเบเปˆเบฝเบงเบเบฑเบšเบซเบปเบงเบ‚เปเป‰ "เบšเปˆเบญเบ™เปƒเบ”เปเบฅเบฐเบงเบดเบ—เบตเบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒ ID เบ‚เบญเบ‡เบซเบกเบนเปˆเป€เบžเบทเปˆเบญเบ™?" เบšเบฒเบ‡เบ—เบตเบญเบฒเบ”เบกเบตเบ„เบงเบฒเบกเบ„เบดเบ”เบ—เบตเปˆเบˆเบฐเป€เบเบฑเบšเบžเบงเบเบกเบฑเบ™เป„เบงเป‰เปƒเบ™เบ–เบฑเบ™. เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ—เบตเปˆเบˆเบฐเปเบˆเป‰เบ‡เบ—เบตเปˆเบชเบธเบ”เปเบฅเบฐ "เป‚เบ‡เปˆ" เบˆเบฐเบกเบตเบฅเบฑเบเบชเบฐเบ™เบฐเป€เบŠเบฑเปˆเบ™เบ™เบตเป‰ (เปƒเบซเป‰เป‚เบ—เบซเบฒเบกเบฑเบ™ เบ—เบฒเบ‡เป€เบฅเบทเบญเบ 1 (เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™)เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบญเป‰เบฒเบ‡เบญเบตเบ‡เป€เบžเบตเปˆเบกเป€เบ•เบตเบก):

RowKey
เบฅเปเบฒเป‚เบžเบ‡

Vasya
1: Petya
2: เป‚เบญเบฅเบตเบขเบฒ
3: Dasha

เป€เบ›เป‚เบ•
1: Masha
2: Vasya

เบ—เบตเปˆเบ™เบตเป‰, เปเบ•เปˆเบฅเบฐเบชเบฒเบเบเบปเบ‡เบเบฑเบšเบœเบนเป‰เปƒเบŠเป‰เป€เบ„เบทเบญเบ‚เปˆเบฒเบเบ”เบฝเบง. เบ–เบฑเบ™เบกเบตเบŠเบทเปˆ: 1, 2, ... - เบญเบตเบ‡เบ•เบฒเบกเบˆเปเบฒเบ™เบงเบ™เบซเบกเบนเปˆเป€เบžเบทเปˆเบญเบ™, เปเบฅเบฐ ID เบ‚เบญเบ‡เบซเบกเบนเปˆเป€เบžเบทเปˆเบญเบ™เบ–เบทเบเป€เบเบฑเบšเป„เบงเป‰เปƒเบ™เบ„เปเบฅเปเบฒ. เบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเบˆเบฐเบชเบฑเบ‡เป€เบเบ”เบงเปˆเบฒเปเบ•เปˆเบฅเบฐเปเบ–เบงเบˆเบฐเบกเบตเบˆเปเบฒเบ™เบงเบ™เบ„เปเบฅเปเบฒเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™. เปƒเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เปƒเบ™เบฎเบนเบšเบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡, เปเบ–เบงเบซเบ™เบถเปˆเบ‡เบกเบตเบชเบฒเบกเบ„เปเบฅเปเบฒ (1, 2 เปเบฅเบฐ 3), เปเบฅเบฐเบ—เบตเบชเบญเบ‡เบกเบตเบžเบฝเบ‡เปเบ•เปˆเบชเบญเบ‡ (1 เปเบฅเบฐ 2) - เบ—เบตเปˆเบ™เบตเป‰เบžเบงเบเป€เบฎเบปเบฒเป€เบญเบ‡เป„เบ”เป‰เปƒเบŠเป‰เบชเบญเบ‡เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ” HBase เบ—เบตเปˆเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบšเปเปˆเบกเบต:

  • เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบ›เปˆเบฝเบ™เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ‚เบญเบ‡เบ–เบฑเบ™เปเบšเบšเป€เบ„เบทเปˆเบญเบ™เป„เบซเบง (เป€เบžเบตเปˆเบกเป€เบžเบทเปˆเบญเบ™ -> เป€เบžเบตเปˆเบกเบ–เบฑเบ™, เป€เบญเบปเบฒเป€เบžเบทเปˆเบญเบ™ -> เบฅเบถเบšเบ–เบฑเบ™)
  • เปเบ–เบงเบ•เปˆเบฒเบ‡เป†เบญเบฒเบ”เบกเบตเบญเบปเบ‡เบ›เบฐเบเบญเบšเบ–เบฑเบ™เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™

เปƒเบซเป‰เบเบงเบ”เป€เบšเบดเปˆเบ‡เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบฒเบกเบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ‚เบญเบ‡เบงเบฝเบเบ‡เบฒเบ™:

  • เบเบฒเบ™เบญเปˆเบฒเบ™เบ‚เปเป‰เบกเบนเบ™: เป€เบžเบทเปˆเบญเป€เบ‚เบปเป‰เบฒเปƒเบˆเบงเปˆเบฒ Vasya เบฅเบปเบ‡เบ—เบฐเบšเบฝเบ™เบเบฑเบš Olya, เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบ•เป‰เบญเบ‡เบฅเบปเบšเบญเบญเบ เป€เบชเบฑเป‰เบ™เบ—เบฑเบ‡เบซเบกเบปเบ” เป‚เบ”เบเบ›เบธเปˆเบก RowKey = "Vasya" เปเบฅเบฐเบˆเบฑเบ”เบฅเบฝเบ‡เบ•เบฒเบกเบ„เปˆเบฒเบ‚เบญเบ‡เบ–เบฑเบ™เบˆเบปเบ™เบเปˆเบงเบฒเบžเบงเบเป€เบฎเบปเบฒ "เบžเบปเบš" Olya เปƒเบ™เบžเบงเบเบกเบฑเบ™. เบซเบผเบท iterate เบœเปˆเบฒเบ™เบ„เปˆเบฒเบ‚เบญเบ‡เบ„เปเบฅเปเบฒเบ—เบฑเบ‡เบซเบกเบปเบ”, "เบšเปเปˆเบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡" Olya เปเบฅเบฐเบเบฑเบšเบ„เบทเบ™เบ„เปเบฒเบ•เบญเบš False;
  • เบเบฒเบ™เปเบเป‰เป„เบ‚เบ‚เปเป‰เบกเบนเบ™: เป€เบžเบตเปˆเบกเป€เบžเบทเปˆเบญเบ™: เบชเปเบฒเบฅเบฑเบšเบงเบฝเบเบ‡เบฒเบ™เบ—เบตเปˆเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป„เบ”เป‰เบฅเบปเบš เป€เบชเบฑเป‰เบ™เบ—เบฑเบ‡เบซเบกเบปเบ” เปƒเบŠเป‰เบ›เบธเปˆเบก RowKey = "Vasya" เป€เบžเบทเปˆเบญเบ„เบดเบ”เป„เบฅเปˆเบˆเปเบฒเบ™เบงเบ™เบซเบกเบนเปˆเป€เบžเบทเปˆเบญเบ™เบ‚เบญเบ‡เบฅเบฒเบงเบ—เบฑเบ‡เบซเบกเบปเบ”. เบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบˆเปเบฒเบ™เบงเบ™เป€เบžเบทเปˆเบญเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบ™เบตเป‰เป€เบžเบทเปˆเบญเบเปเบฒเบ™เบปเบ”เบˆเปเบฒเบ™เบงเบ™เบ„เปเบฅเปเบฒเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบ‚เบฝเบ™ ID เบ‚เบญเบ‡เป€เบžเบทเปˆเบญเบ™เปƒเบซเบกเปˆ.
  • เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ‚เปเป‰เบกเบนเบ™: เบเบฒเบ™เบฅเบถเบšเป€เบžเบทเปˆเบญเบ™:
    • เบ•เป‰เบญเบ‡เบเบฒเบ™เบฅเบปเบš เป€เบชเบฑเป‰เบ™เบ—เบฑเบ‡เบซเบกเบปเบ” เป‚เบ”เบเบ›เบธเปˆเบก RowKey = "Vasya" เปเบฅเบฐเบˆเบฑเบ”เบฎเบฝเบ‡เบ•เบฒเบกเบ–เบฑเบ™เป€เบžเบทเปˆเบญเบŠเบญเบเบซเบฒเบซเบ™เบถเปˆเบ‡เบ—เบตเปˆเป€เบžเบทเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบฅเบถเบšเป„เบ”เป‰เบ–เบทเบเบšเบฑเบ™เบ—เบถเบเป„เบงเป‰;
    • เบ•เปเปˆเป„เบ›, เบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เบฅเบถเบšเป€เบžเบทเปˆเบญเบ™, เบžเบงเบเป€เบฎเบปเบฒเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡ "เบ›เปˆเบฝเบ™" เบ‚เปเป‰เบกเบนเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบ–เบฑเบ™เบ”เบฝเบงเป€เบžเบทเปˆเบญเบšเปเปˆเปƒเบซเป‰ "เบŠเปˆเบญเบ‡เบซเบงเปˆเบฒเบ‡" เปƒเบ™เบ•เบปเบงเป€เบฅเบเบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ.

เบ•เบญเบ™เบ™เบตเป‰เปƒเบซเป‰เป€เบฎเบปเบฒเบ›เบฐเป€เบกเบตเบ™เบงเปˆเบฒ algorithms เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบกเบตเบ›เบฐเบชเบดเบ”เบ•เบดเบžเบฒเบšเปเบ™เบงเปƒเบ”, เป€เบŠเบดเปˆเบ‡เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบ•เป‰เบญเบ‡เป„เบ”เป‰เบ›เบฐเบ•เบดเบšเบฑเบ”เปƒเบ™เบ”เป‰เบฒเบ™ "เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ—เบตเปˆเบกเบตเป€เบ‡เบทเปˆเบญเบ™เป„เบ‚", เป‚เบ”เบเบ™เปเบฒเปƒเบŠเป‰. O-เบชเบฑเบ™เบเบฒเบฅเบฑเบ. เปƒเบซเป‰เบšเบญเบเบ‚เบฐเบซเบ™เบฒเบ”เบ‚เบญเบ‡เป€เบ„เบทเบญเบ‚เปˆเบฒเบเบชเบฑเบ‡เบ„เบปเบกเบชเบปเบกเบกเบธเบ”เบ•เบดเบ–เบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบ›เบฑเบ™ n. เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบˆเปเบฒเบ™เบงเบ™เบซเบกเบนเปˆเป€เบžเบทเปˆเบญเบ™เบชเบนเบ‡เบชเบธเบ”เบ—เบตเปˆเบœเบนเป‰เปƒเบŠเป‰เบชเบฒเบกเบฒเบ”เบกเบตเปเบกเปˆเบ™ (n-1). เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบฅเบฐเป€เบฅเบตเบ (-1) เบ™เบตเป‰เบ•เบทเปˆเบกเบญเบตเบเป€เบžเบทเปˆเบญเบˆเบธเบ”เบ›เบฐเบชเบปเบ‡เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, เป€เบžเบฒเบฐเบงเปˆเบฒเบขเบนเปˆเปƒเบ™เบ‚เบญเบšเบ‚เบญเบ‡เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบชเบฑเบ™เบเบฒเบฅเบฑเบ O เบกเบฑเบ™เบšเปเปˆเบชเปเบฒเบ„เบฑเบ™.

  • เบเบฒเบ™เบญเปˆเบฒเบ™เบ‚เปเป‰เบกเบนเบ™: เบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบˆเปเบฒเป€เบ›เบฑเบ™เบ—เบตเปˆเบˆเบฐเบฅเบปเบšเป€เบชเบฑเป‰เบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เปเบฅเบฐ iterate เบœเปˆเบฒเบ™เบ–เบฑเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบ‚เบญเบ‡เบกเบฑเบ™เบขเบนเปˆเปƒเบ™เบ‚เบญเบšเป€เบ‚เบ”เบˆเปเบฒเบเบฑเบ”. เบ™เบตเป‰เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบเบฒเบ™เบ„เบฒเบ”เบ„เบฐเป€เบ™เบ”เป‰เบฒเบ™เป€เบ—เบดเบ‡เบ‚เบญเบ‡เบ„เปˆเบฒเปƒเบŠเป‰เบˆเปˆเบฒเบเบˆเบฐเป€เบ›เบฑเบ™เบ›เบฐเบกเบฒเบ™ O(n)
  • เบเบฒเบ™เปเบเป‰เป„เบ‚เบ‚เปเป‰เบกเบนเบ™: เป€เบžเบตเปˆเบกเป€เบžเบทเปˆเบญเบ™: เป€เบžเบทเปˆเบญเบเปเบฒเบ™เบปเบ”เบˆเปเบฒเบ™เบงเบ™เบซเบกเบนเปˆเป€เบžเบทเปˆเบญเบ™, เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป€เบฎเบฑเบ”เบŠเป‰เปเบฒเบ—เบธเบเบ–เบฑเบ™เบ‚เบญเบ‡เปเบ–เบง, เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เปƒเบชเปˆเบ–เบฑเบ™เปƒเบซเบกเปˆ => O(n)
  • เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ‚เปเป‰เบกเบนเบ™: เบเบฒเบ™เบฅเบถเบšเป€เบžเบทเปˆเบญเบ™:
    • เบ„เป‰เบฒเบเบ„เบทเบเบฑเบšเบเบฒเบ™เป€เบžเบตเปˆเบก - เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบœเปˆเบฒเบ™เบ–เบฑเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เปƒเบ™เบ‚เบญเบšเป€เบ‚เบ”เบˆเปเบฒเบเบฑเบ” => O(n)
    • เบซเบผเบฑเบ‡เบˆเบฒเบเบ–เบญเบ™เบ„เปเบฅเปเบฒ, เบžเบงเบเป€เบฎเบปเบฒเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡ "เบเป‰เบฒเบ" เบžเบงเบเบกเบฑเบ™. เบ–เป‰เบฒโ€‹เบซเบฒเบโ€‹เบ—เปˆเบฒเบ™โ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ” "เบซเบปเบงโ€‹เบซเบ™เป‰เบฒโ€‹" เบ™เบตเป‰โ€‹, เบซเบผเบฑเบ‡โ€‹เบˆเบฒเบโ€‹เบ™เบฑเป‰เบ™โ€‹เปƒเบ™โ€‹เบ‚เบญเบšโ€‹เป€เบ‚เบ”โ€‹เบˆเปเบฒโ€‹เบเบฑเบ”โ€‹เบ—เบตเปˆโ€‹เบ—เปˆเบฒเบ™โ€‹เบˆเบฐโ€‹เบ•เป‰เบญเบ‡โ€‹เบเบฒเบ™โ€‹เป€เบ–เบดเบ‡ (nโ€‹-1โ€‹) เบเบฒเบ™โ€‹เบ”เปเบฒโ€‹เป€เบ™เบตเบ™โ€‹เบ‡เบฒเบ™โ€‹. เปเบ•เปˆเปƒเบ™เบ—เบตเปˆเบ™เบตเป‰เปเบฅเบฐเบ•เปเปˆเป„เบ›เปƒเบ™เบžเบฒเบเบ›เบฐเบ•เบดเบšเบฑเบ”, เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบ™เปเบฒเปƒเบŠเป‰เบงเบดเบ—เบตเบเบฒเบ™เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™, เป€เบŠเบดเปˆเบ‡เบˆเบฐเบ›เบฐเบ•เบดเบšเบฑเบ” "pseudo-shift" เบชเปเบฒเบฅเบฑเบšเบˆเปเบฒเบ™เบงเบ™เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™เบ„เบปเบ‡เบ—เบตเปˆ - เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เป€เบงเบฅเบฒเบ„เบปเบ‡เบ—เบตเปˆเบˆเบฐเบ–เบทเบเปƒเบŠเป‰เบเบฑเบšเบกเบฑเบ™, เบšเปเปˆเบงเปˆเบฒเบˆเบฐเป€เบ›เบฑเบ™ n. เป€เบงเบฅเบฒเบ„เบปเบ‡เบ—เบตเปˆเบ™เบตเป‰ (O(2) เป€เบ›เบฑเบ™เบ—เบตเปˆเปเบ™เปˆเบ™เบญเบ™) เบชเบฒเบกเบฒเบ”เบ–เบทเบเบฅเบฐเป€เบฅเบตเบเบ—เบฝเบšเบเบฑเบš O(n). เบงเบดเบ—เบตเบเบฒเบ™เปเบกเปˆเบ™เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เปƒเบ™เบฎเบนเบšเบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰: เบžเบงเบเป€เบฎเบปเบฒเบžเบฝเบ‡เปเบ•เปˆเบ„เบฑเบ”เบฅเบญเบเบ‚เปเป‰เบกเบนเบ™เบˆเบฒเบเบ–เบฑเบ™ "เบชเบธเบ”เบ—เป‰เบฒเบ" เป„เบ›เบซเบฒเบซเบ™เบถเปˆเบ‡เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบฅเบถเบšเบ‚เปเป‰เบกเบนเบ™, เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบฅเบถเบšเบ–เบฑเบ™เบชเบธเบ”เบ—เป‰เบฒเบ:
      เบ„เบธเบ™เบฅเบฑเบเบชเบฐเบ™เบฐเบ‚เบญเบ‡เบเบฒเบ™เบญเบญเบเปเบšเบšเบ•เบปเบงเปเบšเบšเบ‚เปเป‰เบกเบนเบ™เบชเปเบฒเบฅเบฑเบš NoSQL

เป‚เบ”เบเบฅเบงเบกเปเบฅเป‰เบง, เปƒเบ™เบ—เบธเบเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบฎเบฑเบšเบ„เบงเบฒเบกเบŠเบฑเบšเบŠเป‰เบญเบ™เบ—เบฒเบ‡เบ”เป‰เบฒเบ™เบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆเปเบšเบš asymptotic เบ‚เบญเบ‡ O(n).
เบ—เปˆเบฒเบ™เบญเบฒเบ”เบˆเบฐเบชเบฑเบ‡เป€เบเบ”เป€เบซเบฑเบ™เปเบฅเป‰เบงเบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเป€เบเบทเบญเบšเบชเบฐเป€เบซเบกเบตเบ•เป‰เบญเบ‡เบญเปˆเบฒเบ™เปเบ–เบงเบ—เบฑเบ‡เบซเบกเบปเบ”เบˆเบฒเบเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™, เปเบฅเบฐเปƒเบ™เบชเบญเบ‡เบเปเบฅเบฐเบ™เบตเบˆเบฒเบเบชเบฒเบก, เบžเบฝเบ‡เปเบ•เปˆเบœเปˆเบฒเบ™เบ„เปเบฅเปเบฒเบ—เบฑเบ‡เบซเบกเบปเบ”เปเบฅเบฐเบ„เบดเบ”เป„เบฅเปˆเบˆเปเบฒเบ™เบงเบ™เบซเบกเบนเปˆเป€เบžเบทเปˆเบญเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เป€เบ›เบฑเบ™เบ„เบงเบฒเบกเบžเบฐเบเบฒเบเบฒเบกเบ—เบตเปˆเบˆเบฐเป€เบžเบตเปˆเบกเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบš, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบžเบตเปˆเบกเบ–เบฑเบ™ "เบ™เบฑเบš", เป€เบŠเบดเปˆเบ‡เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบˆเปเบฒเบ™เบงเบ™เบซเบกเบนเปˆเป€เบžเบทเปˆเบญเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบ‚เบญเบ‡เบœเบนเป‰เปƒเบŠเป‰เป€เบ„เบทเบญเบ‚เปˆเบฒเบเปเบ•เปˆเบฅเบฐเบ„เบปเบ™. เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰, เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเบชเบฒเบกเบฒเบ”เบญเปˆเบฒเบ™เปเบ–เบงเบ—เบฑเบ‡เบซเบกเบปเบ”เป€เบžเบทเปˆเบญเบ„เบดเบ”เป„เบฅเปˆเบˆเปเบฒเบ™เบงเบ™เบซเบกเบนเปˆเป€เบžเบทเปˆเบญเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”, เปเบ•เปˆเบญเปˆเบฒเบ™เบžเบฝเบ‡เปเบ•เปˆเบซเบ™เบถเปˆเบ‡เบ„เปเบฅเปเบฒ "เบ™เบฑเบš". เบชเบดเปˆเบ‡เบ—เบตเปˆ เบชเบณ เบ„เบฑเบ™เปเบกเปˆเบ™เบขเปˆเบฒเบฅเบทเบกเบ›เบฑเบšเบ›เบธเบ‡ "เบ™เบฑเบš" เป€เบกเบทเปˆเบญเบˆเบฑเบ”เบเบฒเบ™เบ‚เปเป‰เบกเบนเบ™. เบ™เบฑเป‰เบ™. เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡ เบ—เบฒเบ‡เป€เบฅเบทเบญเบ 2 (เบ™เบฑเบš):

RowKey
เบฅเปเบฒเป‚เบžเบ‡

Vasya
1: Petya
2: เป‚เบญเบฅเบตเบขเบฒ
3: Dasha
เบ™เบฑเบš: 3

เป€เบ›เป‚เบ•
1: Masha
2: Vasya

เบ™เบฑเบš: 2

เป€เบกเบทเปˆเบญเบ›เบฝเบšเบ—เบฝเบšเบเบฑเบšเบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ—เปเบฒเบญเบดเบ”:

  • เบเบฒเบ™เบญเปˆเบฒเบ™เบ‚เปเป‰เบกเบนเบ™: เป€เบžเบทเปˆเบญเปƒเบซเป‰เป„เบ”เป‰เบฎเบฑเบšเบ„เปเบฒเบ•เบญเบšเบ‚เบญเบ‡เบ„เปเบฒเบ–เบฒเบก "Vasya เบญเปˆเบฒเบ™ Olya เบšเป?" เบšเปเปˆเบกเบตเบซเบเบฑเบ‡เบ›เปˆเบฝเบ™เปเบ›เบ‡ => O(n)
  • เบเบฒเบ™เปเบเป‰เป„เบ‚เบ‚เปเป‰เบกเบนเบ™: เป€เบžเบตเปˆเบกเป€เบžเบทเปˆเบญเบ™: เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เป€เบฎเบฑเบ”เปƒเบซเป‰เบเบฒเบ™เปเบŠเบเบ‚เบญเบ‡เป€เบžเบทเปˆเบญเบ™เปƒเบซเบกเปˆเบ‡เปˆเบฒเบเบ”เบฒเบ, เบ™เบฑเบšเบ•เบฑเป‰เบ‡เปเบ•เปˆเบ™เบตเป‰เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบญเปˆเบฒเบ™เป€เบชเบฑเป‰เบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เปเบฅเบฐ iterate เปƒเบ™เบ–เบฑเบ™เบ‚เบญเบ‡เบกเบฑเบ™, เปเบ•เปˆเบžเบฝเบ‡เปเบ•เปˆเบชเบฒเบกเบฒเบ”เป„เบ”เป‰เบฎเบฑเบšเบ„เปˆเบฒเบ‚เบญเบ‡เบ–เบฑเบ™ "เบ™เบฑเบš", เปเบฅเบฐเบญเบทเปˆเบ™เป†. เบ—เบฑเบ™เบ—เบตเบเปเบฒเบ™เบปเบ”เบ•เบปเบงเป€เบฅเบเบ–เบฑเบ™เป€เบžเบทเปˆเบญเปเบŠเบเป€เบžเบทเปˆเบญเบ™เปƒเบซเบกเปˆ. เบญเบฑเบ™โ€‹เบ™เบตเป‰โ€‹เป€เบฎเบฑเบ”โ€‹เปƒเบซเป‰โ€‹เบเบฒเบ™โ€‹เบซเบผเบธเบ”โ€‹เบœเปˆเบญเบ™โ€‹เบ„เบงเบฒเบกโ€‹เบชเบฑเบšโ€‹เบชเบปเบ™โ€‹เปƒเบ™โ€‹เบเบฒเบ™โ€‹เบ„เบดเบ”โ€‹เป„เบฅเปˆ O(1โ€‹)
  • เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ‚เปเป‰เบกเบนเบ™: เบเบฒเบ™เบฅเบถเบšเป€เบžเบทเปˆเบญเบ™: เป€เบกเบทเปˆเบญเบฅเบถเบšเป€เบžเบทเปˆเบญเบ™เบญเบญเบ, เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เบชเบฒเบกเบฒเบ”เปƒเบŠเป‰เบ–เบฑเบ™เบ™เบตเป‰เป€เบžเบทเปˆเบญเบซเบผเบธเบ”เบˆเปเบฒเบ™เบงเบ™เบเบฒเบ™เบ”เบณเป€เบ™เบตเบ™เบเบฒเบ™ I/O เป€เบกเบทเปˆเบญ โ€œเบ›เปˆเบฝเบ™โ€ เบ‚เปเป‰เบกเบนเบ™เปœเบถเปˆเบ‡เบ•เบฒเบฅเบฒเบ‡เป„เบ›เบ—เบฒเบ‡เบŠเป‰เบฒเบ. เปเบ•เปˆโ€‹เบ„เบงเบฒเบกโ€‹เบˆเปเบฒโ€‹เป€เบ›เบฑเบ™โ€‹เบ—เบตเปˆโ€‹เบˆเบฐ iterate เบœเปˆเบฒเบ™โ€‹เบ–เบฑเบ™โ€‹เป€เบžเบทเปˆเบญโ€‹เบŠเบญเบโ€‹เบซเบฒโ€‹เบซเบ™เบถเปˆเบ‡โ€‹เบ—เบตเปˆโ€‹เบ•เป‰เบญเบ‡โ€‹เบเบฒเบ™โ€‹เบฅเบปเบšโ€‹เบเบฑเบ‡โ€‹เบ„เบปเบ‡โ€‹เบขเบนเปˆโ€‹, เบชเบฐโ€‹เบ™เบฑเป‰เบ™ => O(n)
  • เปƒเบ™เบญเบตเบเบ”เป‰เบฒเบ™เบซเบ™เบถเปˆเบ‡, เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เบ‚เปเป‰เบกเบนเบ™เบžเบงเบเป€เบฎเบปเบฒเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป„เบ”เป‰เบ›เบฑเบšเบ›เบธเบ‡เบ–เบฑเบ™ "เบ™เบฑเบš" เบ—เบธเบเป†เบ„เบฑเป‰เบ‡, เปเบ•เปˆเบ™เบตเป‰เปƒเบŠเป‰เป€เบงเบฅเบฒเบ„เบปเบ‡เบ—เบตเปˆ, เบŠเบถเปˆเบ‡เบชเบฒเบกเบฒเบ”เบ–เบทเบเบฅเบฐเป€เบฅเบตเบเปƒเบ™เบเบญเบšเบ‚เบญเบ‡เบชเบฑเบ™เบเบฒเบฅเบฑเบ O.

เป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›, เบ—เบฒเบ‡เป€เบฅเบทเบญเบ 2 เป€เบšเบดเปˆเบ‡เบ„เบทเบงเปˆเบฒเบ”เบตเบ—เบตเปˆเบชเบธเบ”, เปเบ•เปˆเบกเบฑเบ™เบ„เป‰เบฒเบเบ„เบทเบเบฑเบš "เบงเบดเบงเบฑเบ”เบ—เบฐเบ™เบฒเบเบฒเบ™เปเบ—เบ™เบ—เบตเปˆเบˆเบฐเป€เบ›เบฑเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบงเบฑเบ”." เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เปƒเบซเป‰ "เบเบฒเบ™เบ›เบฐเบ•เบดเบงเบฑเบ”" เบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™ เบ—เบฒเบ‡โ€‹เป€เบฅเบทเบญเบ 3 (col).
เปƒเบซเป‰เบซเบฑเบ™เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡ "เบเบฑเบš": เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบกเบญเบšเบซเบกเบฒเบ ID เบœเบนเป‰เปƒเบŠเป‰เบŠเบทเปˆเบ–เบฑเบ™! เบชเบดเปˆเบ‡เบ—เบตเปˆเบˆเบฐเบ–เบทเบเบ‚เบฝเบ™เป„เบงเป‰เปƒเบ™เบ„เปเบฅเปเบฒเบ•เบปเบงเบกเบฑเบ™เป€เบญเบ‡เบšเปเปˆเบชเปเบฒเบ„เบฑเบ™เบชเปเบฒเบฅเบฑเบšเบžเบงเบเป€เบฎเบปเบฒ, เปƒเบซเป‰เบกเบฑเบ™เป€เบ›เบฑเบ™เบญเบฑเบ™เบ”เบฑเบš 1 (เป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›, เบชเบดเปˆเบ‡เบ—เบตเปˆเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบชเบฒเบกเบฒเบ”เบ–เบทเบเป€เบเบฑเบšเป„เบงเป‰เบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™, เบ•เบปเบงเบขเปˆเบฒเบ‡, เบเบธเปˆเบก "เบ„เบญเบšเบ„เบปเบง / เบซเบกเบนเปˆเป€เบžเบทเปˆเบญเบ™ / เปเบฅเบฐเบญเบทเปˆเบ™เป†."). เบงเบดเบ—เบตเบเบฒเบ™เบ™เบตเป‰เบญเบฒเบ”เบˆเบฐเบ›เบฐเบซเบฅเบฒเบ”เปƒเบˆเบเบฑเบš "layman" เบ—เบตเปˆเบšเปเปˆเป„เบ”เป‰เบเบฐเบเบฝเบกเบ—เบตเปˆเบšเปเปˆเบกเบตเบ›เบฐเบชเบปเบšเบเบฒเบ™เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ NoSQL, เปเบ•เปˆเบงเปˆเบฒเบกเบฑเบ™เปเบกเปˆเบ™เปเบ™เปˆเบ™เบญเบ™เบงเบดเบ—เบตเบเบฒเบ™เบ™เบตเป‰เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบ—เปˆเบฒเปเบฎเบ‡เบ‚เบญเบ‡ HBase เปƒเบ™เบงเบฝเบเบ‡เบฒเบ™เบ™เบตเป‰เบขเปˆเบฒเบ‡เบกเบตเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบซเบผเบฒเบ:

RowKey
เบฅเปเบฒเป‚เบžเบ‡

Vasya
Petya: 1
เป‚เบญเบฅเบตเบขเบฒ: 1
Dasha: 1

เป€เบ›เป‚เบ•
Masha: 1
เบงเบฒเบ”เบชเบฐเปœเบฒ: 1

เปƒเบ™เบ—เบตเปˆเบ™เบตเป‰เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบฎเบฑเบšเบ›เบฐเป‚เบซเบเบ”เบซเบผเบฒเบเบขเปˆเบฒเบ‡เปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™. เป€เบžเบทเปˆเบญเป€เบ‚เบปเป‰เบฒเปƒเบˆเบžเบงเบเบกเบฑเบ™, เปƒเบซเป‰เบžเบงเบเป€เบฎเบปเบฒเบงเบดเป€เบ„เบฒเบฐเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เปƒเบซเบกเปˆเปเบฅเบฐเบ›เบฐเป€เบกเบตเบ™เบ„เบงเบฒเบกเบชเบฑเบšเบชเบปเบ™เบ‚เบญเบ‡เบ„เบญเบกเบžเบดเบงเป€เบ•เบตเป‰:

  • เบเบฒเบ™เบญเปˆเบฒเบ™เบ‚เปเป‰เบกเบนเบ™: เป€เบžเบทเปˆเบญเบ•เบญเบšเบ„เปเบฒเบ–เบฒเบกเบงเปˆเบฒ Vasya เบฅเบปเบ‡เบ—เบฐเบšเบฝเบ™เบเบฑเบš Olya, เบกเบฑเบ™เบžเบฝเบ‡เบžเปเบ—เบตเปˆเบˆเบฐเบญเปˆเบฒเบ™เบซเบ™เบถเปˆเบ‡เบ„เปเบฅเปเบฒ "Olya": เบ–เป‰เบฒเบกเบฑเบ™เบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™, เบ„เปเบฒเบ•เบญเบšเปเบกเปˆเบ™เบ–เบทเบเบ•เป‰เบญเบ‡, เบ–เป‰เบฒเบšเปเปˆเปเบกเปˆเบ™ - False => O(1)
  • เบเบฒเบ™เปเบเป‰เป„เบ‚เบ‚เปเป‰เบกเบนเบ™: เป€เบžเบตเปˆเบกเป€เบžเบทเปˆเบญเบ™: เบเบฒเบ™เป€เบžเบตเปˆเบกเปเบนเปˆ: เบžเบฝเบ‡เปเบ•เปˆเป€เบžเบตเปˆเบกเบ–เบฑเบ™เปƒเปเปˆ โ€œFriend IDโ€ => O(1)
  • เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ‚เปเป‰เบกเบนเบ™: เบเบฒเบ™เบฅเบถเบšเป€เบžเบทเปˆเบญเบ™: เบžเบฝเบ‡เปเบ•เปˆเป€เบญเบปเบฒเบ–เบฑเบ™ Friend ID => O(1)

เบ”เบฑเปˆเบ‡เบ—เบตเปˆเบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบซเบฑเบ™เป„เบ”เป‰, เบ›เบฐเป‚เบซเบเบ”เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เบ‚เบญเบ‡เบฎเบนเบšเปเบšเบšเบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบงเปˆเบฒเปƒเบ™เบ—เบธเบเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™, เบžเบงเบเป€เบฎเบปเบฒเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบžเบฝเบ‡เปเบ•เปˆเบซเบ™เบถเปˆเบ‡เบ„เปเบฅเปเบฒ, เบซเบผเบตเบเป€เบงเบฑเป‰เบ™เบเบฒเบ™เบญเปˆเบฒเบ™เปเบ–เบงเบ—เบฑเบ‡เบซเบกเบปเบ”เบˆเบฒเบเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เปเบฅเบฐ, เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เบเบฒเบ™เบ™เบฑเบšเบ—เบธเบเบ–เบฑเบ™เบ‚เบญเบ‡เปเบ–เบงเบ™เบตเป‰. เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบขเบธเบ”เบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™, เปเบ•เปˆ ...

เบ—เปˆเบฒเบ™โ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™ puzzled เปเบฅเบฐโ€‹เป„เบ›โ€‹เบญเบตเบโ€‹เป€เบฅเบฑเบโ€‹เบ™เป‰เบญเบโ€‹เบ•เบฒเบกโ€‹เป€เบชเบฑเป‰เบ™โ€‹เบ—เบฒเบ‡โ€‹เบ‚เบญเบ‡โ€‹เบเบฒเบ™โ€‹เบ›เบฑเบšโ€‹เบ›เบฐโ€‹เบชเบดเบ”โ€‹เบ—เบดโ€‹เบžเบฒเบšโ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบซเบผเบธเบ”โ€‹เบœเปˆเบญเบ™โ€‹เบเบฒเบ™โ€‹เบ”เปเบฒโ€‹เป€เบ™เบตเบ™โ€‹เบ‡เบฒเบ™ I/O เปƒเบ™โ€‹เป€เบงโ€‹เบฅเบฒโ€‹เบ—เบตเปˆโ€‹เบเบฒเบ™โ€‹เป€เบ‚เบปเป‰เบฒโ€‹เป€เบ–เบดเบ‡โ€‹เบ–เบฒเบ™โ€‹เบ‚เปเป‰โ€‹เบกเบนเบ™. เบˆเบฐเป€เบ›เบฑเบ™เปเบ™เบงเปƒเบ”เบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเป€เบเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบ„เบงเบฒเบกเบชเปเบฒเบžเบฑเบ™เบ—เบตเปˆเบชเบปเบกเบšเบนเบ™เป‚เบ”เบเบเบปเบ‡เบขเบนเปˆเปƒเบ™เบ›เบธเปˆเบกเปเบ–เบงเบ•เบปเบงเบกเบฑเบ™เป€เบญเบ‡? เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เป€เบฎเบฑเบ”เปƒเบซเป‰เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เป€เบŠเบฑเปˆเบ™ userID.friendID? เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰, เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบญเปˆเบฒเบ™เบ„เปเบฅเปเบฒเบ‚เบญเบ‡เปเบ–เบงเป€เบฅเบตเบ (เบ•เบปเบงเป€เบฅเบทเบญเบ 4 (เปเบ–เบง)):

RowKey
เบฅเปเบฒเป‚เบžเบ‡

Vasya.Petya
Petya: 1

Vasya.Olya
เป‚เบญเบฅเบตเบขเบฒ: 1

Vasya.Dasha
Dasha: 1

Petya.Masha
Masha: 1

Petya.Vasya
เบงเบฒเบ”เบชเบฐเปœเบฒ: 1

เปเบ™เปˆเบ™เบญเบ™, เบเบฒเบ™เบ›เบฐเป€เบกเบตเบ™เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เปƒเบ™เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบ”เบฑเปˆเบ‡เบเปˆเบฒเบง, เบ„เบทเบเบฑเบšเบชเบฐเบšเบฑเบšเบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ, เบˆเบฐเป€เบ›เบฑเบ™ O(1). เบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบšเบ—เบฒเบ‡เป€เบฅเบทเบญเบ 3 เบˆเบฐเป€เบ›เบฑเบ™เบžเบฝเบ‡เบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบ‚เบญเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‡เบฒเบ™ I/O เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™.

เปเบฅเป‰เบง, " bow " เบชเบธเบ”เบ—เป‰เบฒเบ. เบกเบฑเบ™เบ‡เปˆเบฒเบเบ—เบตเปˆเบˆเบฐเป€เบซเบฑเบ™เบงเปˆเบฒเปƒเบ™เบ—เบฒเบ‡เป€เบฅเบทเบญเบ 4, เปเบ–เบงเป€เบเบฑเบ”เบ—เบตเปˆเบขเบนเปˆเบˆเบฐเบกเบตเบ„เบงเบฒเบกเบเบฒเบงเบ›เปˆเบฝเบ™เปเบ›เบ‡, เป€เบŠเบดเปˆเบ‡เบญเบฒเบ”เบˆเบฐเบชเบปเปˆเบ‡เบœเบปเบ™เบเบฐเบ—เบปเบšเบ•เปเปˆเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ” (เบ—เบตเปˆเบ™เบตเป‰เบžเบงเบเป€เบฎเบปเบฒเบˆเบทเปˆเบˆเปเบฒเบงเปˆเบฒ HBase เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบ‚เปเป‰เบกเบนเบ™เป€เบ›เบฑเบ™เบŠเบธเบ”เบ‚เบญเบ‡ bytes เปเบฅเบฐเปเบ–เบงเปƒเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ–เบทเบเบˆเบฑเบ”เบฎเบฝเบ‡เป‚เบ”เบเบ„เบต). เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบ•เบปเบงเปเบเบเบ—เบตเปˆเบญเบฒเบ”เบˆเบฐเบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™เปƒเบ™เบšเบฒเบ‡เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™. เป€เบžเบทเปˆเบญเบฅเบปเบšเบฅเป‰เบฒเบ‡เบญเบดเบ”เบ—เบดเบžเบปเบ™เบ™เบตเป‰, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰ hashes เบˆเบฒเบ userID เปเบฅเบฐ friendID, เปเบฅเบฐเบ™เบฑเบšเบ•เบฑเป‰เบ‡เปเบ•เปˆเบ—เบฑเบ‡เบชเบญเบ‡ hashes เบˆเบฐเบกเบตเบ„เบงเบฒเบกเบเบฒเบงเบ„เบปเบ‡เบ—เบตเปˆ, เบ—เปˆเบฒเบ™เบžเบฝเบ‡เปเบ•เปˆเบชเบฒเบกเบฒเบ” concatenate เปƒเบซเป‰เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒ, เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เปเบเบ. เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบ‚เปเป‰เบกเบนเบ™เปƒเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบˆเบฐเบกเบตเบฅเบฑเบเบชเบฐเบ™เบฐเบ™เบตเป‰ (เบ—เบฒเบ‡โ€‹เป€เบฅเบทเบญเบ 5 (hashโ€‹)):

RowKey
เบฅเปเบฒเป‚เบžเบ‡

dc084ef00e94aef49be885f9b01f51c01918fa783851db0dc1f72f83d33a5994
Petya: 1

dc084ef00e94aef49be885f9b01f51c0f06b7714b5ba522c3cf51328b66fe28a
เป‚เบญเบฅเบตเบขเบฒ: 1

dc084ef00e94aef49be885f9b01f51c00d2c2e5d69df6b238754f650d56c896a
Dasha: 1

1918fa783851db0dc1f72f83d33a59949ee3309645bd2c0775899fca14f311e1
Masha: 1

1918fa783851db0dc1f72f83d33a5994dc084ef00e94aef49be885f9b01f51c0
เบงเบฒเบ”เบชเบฐเปœเบฒ: 1

เปเบ™เปˆเบ™เบญเบ™, เบ„เบงเบฒเบกเบŠเบฑเบšเบŠเป‰เบญเบ™ algorithmic เบ‚เบญเบ‡เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเปƒเบ™เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบเปเบฒเบฅเบฑเบ‡เบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเบˆเบฐเบ„เบทเบเบฑเบ™เบเบฑเบšเบ—เบฒเบ‡เป€เบฅเบทเบญเบ 4 - เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, O(1).
เป‚เบ”เบเบฅเบงเบกเปเบฅเป‰เบง, เปƒเบซเป‰เบžเบงเบเป€เบฎเบปเบฒเบชเบฐเบซเบผเบธเบšเบเบฒเบ™เบ„เบฒเบ”เบ„เบฐเป€เบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบ‚เบญเบ‡เบ„เบงเบฒเบกเบชเบฑเบšเบชเบปเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเปƒเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ”เบฝเบง:

เบเบณเบฅเบฑเบ‡เป€เบžเบตเปˆเบกเปเบนเปˆ
เบเบณเบฅเบฑเบ‡เบเบงเบ”เบชเบญเบšเปเบนเปˆ
เบเบฒเบ™เบฅเบถเบšเป€เบžเบทเปˆเบญเบ™

เบ—เบฒเบ‡เป€เบฅเบทเบญเบ 1 (เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™)
O (n)
O (n)
O (n)

เบ—เบฒเบ‡เป€เบฅเบทเบญเบ 2 (เบ™เบฑเบš)
O (1)
O (n)
O (n)

เบ•เบปเบงเป€เบฅเบทเบญเบ 3 (เบ–เบฑเบ™)
O (1)
O (1)
O (1)

เบ—เบฒเบ‡เป€เบฅเบทเบญเบ 4 (เปเบ–เบง)
O (1)
O (1)
O (1)

เบ—เบฒเบ‡โ€‹เป€เบฅเบทเบญเบ 5 (hashโ€‹)
O (1)
O (1)
O (1)

เบ”เบฑเปˆเบ‡เบ—เบตเปˆเป€เบˆเบปเป‰เบฒเบชเบฒเบกเบฒเบ”เป€เบซเบฑเบ™เป„เบ”เป‰, เบ—เบฒเบ‡เป€เบฅเบทเบญเบ 3-5 เป€เบšเบดเปˆเบ‡เบ„เบทเบงเปˆเบฒเป€เบ›เบฑเบ™เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”เปเบฅเบฐเบ—เบฒเบ‡เบ—เบดเบ”เบชเบฐเบ”เบตเบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เปƒเบ™เป„เบฅเบเบฐเป€เบงเบฅเบฒเบ„เบปเบ‡เบ—เบตเปˆ. เปƒเบ™เป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เบ‚เบญเบ‡เบงเบฝเบเบ‡เบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, เบšเปเปˆเบกเบตเบ‚เปเป‰เบเปเบฒเบ™เบปเบ”เบขเปˆเบฒเบ‡เบŠเบฑเบ”เป€เบˆเบ™เบ—เบตเปˆเบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡เบซเบกเบนเปˆเป€เบžเบทเปˆเบญเบ™เบ‚เบญเบ‡เบœเบนเป‰เปƒเบŠเป‰เบ—เบฑเบ‡เบซเบกเบปเบ”, เปเบ•เปˆเปƒเบ™เบเบดเบ”เบˆเบฐเบเปเบฒเป‚เบ„เบ‡เบเบฒเบ™เบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡, เบกเบฑเบ™เบˆเบฐเบ”เบตเบชเปเบฒเบฅเบฑเบšเบžเบงเบเป€เบฎเบปเบฒ, เปƒเบ™เบ–เบฒเบ™เบฐเบ™เบฑเบเบงเบดเป€เบ„เบฒเบฐเบ—เบตเปˆเบ”เบต, "เบ„เบฒเบ”" เบงเปˆเบฒเบงเบฝเบเบ‡เบฒเบ™เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบญเบฒเบ”เบˆเบฐเป€เบเบตเบ”เบ‚เบทเป‰เบ™เปเบฅเบฐ. "เบเบฐเบˆเบฒเบเป€เบŸเบทเบญเบ‡." เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบ„เบงเบฒเบกเป€เบซเบฑเบ™เบญเบปเบเป€เบซเบฑเบ™เปƒเบˆเบ‚เบญเบ‡เบ‚เป‰เบญเบเปเบกเปˆเบ™เบขเบนเปˆเบ‚เป‰เบฒเบ‡เบ‚เบญเบ‡เบ—เบฒเบ‡เป€เบฅเบทเบญเบ 3. เปเบ•เปˆเบกเบฑเบ™เบเปเปˆเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบงเปˆเบฒเปƒเบ™เป‚เบ„เบ‡เบเบฒเบ™เบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ™เบตเป‰เบชเบฒเบกเบฒเบ”เบ–เบทเบเปเบเป‰เป„เบ‚เปเบฅเป‰เบงเป‚เบ”เบเบงเบดเบ—เบตเบญเบทเปˆเบ™, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เป‚เบ”เบเบšเปเปˆเบกเบตเบงเบดเป„เบชเบ—เบฑเบ”เบ—เบปเปˆเบงเป„เบ›เบเปˆเบฝเบงเบเบฑเบšเบšเบฑเบ™เบซเบฒเบ—เบฑเบ‡เบซเบกเบปเบ”, เบกเบฑเบ™เบ”เบตเบเบงเปˆเบฒเบ—เบตเปˆเบˆเบฐเบšเปเปˆเป€เบฎเบฑเบ”. เบšเบปเบ”เบชเบฐเบซเบผเบธเบšเบชเบธเบ”เบ—เป‰เบฒเบ.

เบเบฒเบ™เบเบฐเบเบฝเบกเบเบฒเบ™เบ—เบปเบ”เบฅเบญเบ‡

เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบขเบฒเบเบˆเบฐเบ—เบปเบ”เบชเบญเบšเบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบ—เบฒเบ‡เบ—เบดเบ”เบชเบฐเบ”เบตเบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡เปƒเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ” - เบ™เบตเป‰เปเบกเปˆเบ™เป€เบ›เบปเป‰เบฒเบซเบกเบฒเบเบ‚เบญเบ‡เบ„เบงเบฒเบกเบ„เบดเบ”เบ—เบตเปˆเป€เบเบตเบ”เบ‚เบทเป‰เบ™เปƒเบ™เบ—เป‰เบฒเบเบญเบฒเบ—เบดเบ”เบเบฒเบง. เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เบชเบดเปˆเบ‡เบ™เบตเป‰, เบกเบฑเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป„เบ”เป‰เบ›เบฐเป€เบกเบตเบ™เบ„เบงเบฒเบกเป„เบงเปƒเบ™เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™เบ‚เบญเบ‡ "เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ—เบตเปˆเบกเบตเป€เบ‡เบทเปˆเบญเบ™เป„เบ‚" เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเปƒเบ™เบ—เบธเบเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ—เบตเปˆเบญเบฐเบ—เบดเบšเบฒเบเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™, เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบเบฒเบ™เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™เปƒเบ™เป€เบงเบฅเบฒเบ™เบตเป‰เบเบฑเบšเบ‚เบฐเบซเบ™เบฒเบ”เบ‚เบญเบ‡เป€เบ„เบทเบญเบ‚เปˆเบฒเบเบชเบฑเบ‡เบ„เบปเบก (n). เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เป€เบ›เบปเป‰เบฒเบซเบกเบฒเบเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบชเบปเบ™เปƒเบˆเปเบฅเบฐเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบงเบฑเบ”เปเบ—เบเปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบ—เบปเบ”เบฅเบญเบ‡เปเบกเปˆเบ™เปƒเบŠเป‰เป€เบงเบฅเบฒเป‚เบ”เบ "เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ—เบตเปˆเบกเบตเป€เบ‡เบทเปˆเบญเบ™เป„เบ‚" เป€เบžเบทเปˆเบญเบ›เบฐเบ•เบดเบšเบฑเบ” "เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™เบ—เบฒเบ‡เบ—เบธเบฅเบฐเบเบดเบ”". เป‚เบ”เบ "เบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒ" เบžเบงเบเป€เบฎเบปเบฒเบซเบกเบฒเบเป€เบ–เบดเบ‡เบซเบ™เบถเปˆเบ‡เปƒเบ™เบชเบดเปˆเบ‡เบ•เปเปˆเป„เบ›เบ™เบตเป‰:

  • เป€เบžเบตเปˆเบกเปเบนเปˆเปƒเปเปˆเปœเบถเปˆเบ‡เบ„เบปเบ™
  • เบเบงเบ”เป€เบšเบดเปˆเบ‡เบงเปˆเบฒเบœเบนเป‰เปƒเบŠเป‰ A เปเบกเปˆเบ™เป€เบžเบทเปˆเบญเบ™เบ‚เบญเบ‡เบœเบนเป‰เปƒเบŠเป‰ B
  • เบเบฒเบ™โ€‹เบฅเบปเบšโ€‹เบซเบกเบนเปˆโ€‹เบซเบ™เบถเปˆเบ‡โ€‹

เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เป‚เบ”เบเบ„เปเบฒเบ™เบถเบ‡เป€เบ–เบดเบ‡เบ‚เปเป‰เบเปเบฒเบ™เบปเบ”เบ—เบตเปˆเบฅเบฐเบšเบธเป„เบงเป‰เปƒเบ™เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบเบฒเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™, เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบเบฒเบ™เบเบงเบ”เบชเบญเบšเบ›เบฐเบเบปเบ”เบญเบญเบเบ”เบฑเปˆเบ‡เบ•เปเปˆเป„เบ›เบ™เบตเป‰:

  • เบเบฒเบ™เบšเบฑเบ™เบ—เบถเบเบ‚เปเป‰เบกเบนเบ™. Random เบชเป‰เบฒเบ‡เป€เบ„เบทเบญเบ‚เปˆเบฒเบเป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™เบ‚เบญเบ‡เบ‚เบฐเบซเบ™เบฒเบ” n. เป€เบžเบทเปˆเบญเปƒเบซเป‰เป„เบ”เป‰เปƒเบเป‰เบŠเบดเบ”เบเบฑเบš "เป‚เบฅเบเบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡", เบˆเปเบฒเบ™เบงเบ™เบ‚เบญเบ‡เบซเบกเบนเปˆเป€เบžเบทเปˆเบญเบ™เบ—เบตเปˆเบœเบนเป‰เปƒเบŠเป‰เปเบ•เปˆเบฅเบฐเบ„เบปเบ™เบกเบตเบเบฑเบ‡เป€เบ›เบฑเบ™เบ•เบปเบงเปเบ›เปเบšเบšเบชเบธเปˆเบก. เบงเบฑเบ”เปเบ—เบเป€เบงเบฅเบฒเบ—เบตเปˆเบกเบฑเบ™เปƒเบŠเป‰เบชเปเบฒเบฅเบฑเบš "เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ—เบตเปˆเบกเบตเป€เบ‡เบทเปˆเบญเบ™เป„เบ‚" เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบžเบทเปˆเบญเบ‚เบฝเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบ—เบตเปˆเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เปƒเบ™ HBase. เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เปเบšเปˆเบ‡เป€เบงเบฅเบฒเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบ”เป‰เบงเบเบˆเปเบฒเบ™เบงเบ™เป€เบžเบทเปˆเบญเบ™เบ—เบตเปˆเป€เบžเบตเปˆเบก - เบ™เบตเป‰เปเบกเปˆเบ™เบงเบดเบ—เบตเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบฎเบฑเบšเป€เบงเบฅเบฒเบชเบฐเป€เบฅเปˆเบเบชเปเบฒเบฅเบฑเบš "เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™เบ—เบธเบฅเบฐเบเบดเบ”" เบซเบ™เบถเปˆเบ‡.
  • เบเบฒเบ™เบญเปˆเบฒเบ™เบ‚เปเป‰เบกเบนเบ™. เบชเปเบฒเบฅเบฑเบšเบœเบนเป‰เปƒเบŠเป‰เปเบ•เปˆเบฅเบฐเบ„เบปเบ™, เบชเป‰เบฒเบ‡เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡ "เบšเบธเบเบ„เบฐเบฅเบดเบเบเบฐเบžเบฒเบš" เบ—เบตเปˆเบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบ„เปเบฒเบ•เบญเบšเบงเปˆเบฒเบœเบนเป‰เปƒเบŠเป‰เป„เบ”เป‰เบฅเบปเบ‡เบ—เบฐเบšเบฝเบ™เปƒเบซเป‰เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเบซเบผเบทเบšเปเปˆ. เบ„เบงเบฒเบกเบเบฒเบงเบ‚เบญเบ‡เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ = เบ›เบฐเบกเบฒเบ™เบˆเปเบฒเบ™เบงเบ™เบซเบกเบนเปˆเป€เบžเบทเปˆเบญเบ™เบ‚เบญเบ‡เบœเบนเป‰เปƒเบŠเป‰, เปเบฅเบฐเบชเปเบฒเบฅเบฑเบšเป€เบ„เบดเปˆเบ‡เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡เบซเบกเบนเปˆเป€เบžเบทเปˆเบญเบ™เบ—เบตเปˆเบเบงเบ”เป€เบšเบดเปˆเบ‡เบ„เปเบฒเบ•เบญเบšเบ„เบงเบ™เบˆเบฐเป€เบ›เบฑเบ™ "เปเบกเปˆเบ™", เปเบฅเบฐเบญเบตเบเป€เบ„เบดเปˆเบ‡เบซเบ™เบถเปˆเบ‡ - "เบšเปเปˆ". เบเบฒเบ™เบเบงเบ”เบชเบญเบšเปเบกเปˆเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เปƒเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡เบ—เบตเปˆเบ„เปเบฒเบ•เบญเบš "เปเบกเปˆเบ™" เปเบฅเบฐ "เบšเปเปˆ" เบชเบฐเบซเบผเบฑเบšเบเบฑเบ™ (เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เปƒเบ™เบ—เบธเบเป†เบเปเบฅเบฐเบ™เบตเบ—เบตเปˆเบชเบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบ•เป‰เบญเบ‡เบœเปˆเบฒเบ™เบ–เบฑเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบ‚เบญเบ‡เปเบ–เบงเบชเปเบฒเบฅเบฑเบšเบ—เบฒเบ‡เป€เบฅเบทเบญเบ 1 เปเบฅเบฐ 2). เป€เบงเบฅเบฒเบเบงเบ”เบ—เบฑเบ‡เปเบปเบ”เปเบกเปˆเบ™เปเบšเปˆเบ‡เบ”เป‰เบงเบเบˆเบณเบ™เบงเบ™เปเบนเปˆเบ—เบตเปˆเบ—เบปเบ”เบชเบญเบšเป€เบžเบทเปˆเบญเปƒเบซเป‰เป„เบ”เป‰เป€เบงเบฅเบฒเบเบงเบ”เป‚เบ”เบเบชเบฐเป€เบฅเปˆเบเบ•เปเปˆเบงเบดเบŠเบฒ.
  • เบเบณเบฅเบฑเบ‡เบฅเบถเบšเบ‚เปเป‰เบกเบนเบ™. เป€เบญเบปเบฒเปเบนเปˆเบ—เบฑเบ‡เปเบปเบ”เบญเบญเบเบˆเบฒเบเบœเบนเป‰เปƒเบŠเป‰. เบเบดเปˆเบ‡เป„เบ›เบเบงเปˆเบฒเบ™เบฑเป‰เบ™, เบ„เปเบฒเบชเบฑเปˆเบ‡เบฅเบถเบšเปเบกเปˆเบ™เปเบšเบšเบชเบธเปˆเบก (เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เบžเบงเบเป€เบฎเบปเบฒ "shuffle" เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ•เบปเป‰เบ™เบชเบฐเบšเบฑเบšเบ—เบตเปˆเปƒเบŠเป‰เปƒเบ™เบเบฒเบ™เบšเบฑเบ™เบ—เบถเบเบ‚เปเป‰เบกเบนเบ™). เป€เบงเบฅเบฒเบเบงเบ”เบ—เบฑเบ‡เปเบปเบ”เปเบกเปˆเบ™เปเบšเปˆเบ‡เบญเบญเบเบ”เป‰เบงเบเบˆเบณเบ™เบงเบ™เปเบนเปˆเบ—เบตเปˆเป€เบญเบปเบฒเบญเบญเบเป€เบžเบทเปˆเบญเปƒเบซเป‰เป„เบ”เป‰เป€เบงเบฅเบฒเบชเบฐเป€เบฅเปˆเบเบ•เปเปˆเบเบฒเบ™เบเบงเบ”.

เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบชเปเบฒเบฅเบฑเบšเปเบ•เปˆเบฅเบฐ 5 เบ—เบฒเบ‡เป€เบฅเบทเบญเบเปเบšเบšเบˆเปเบฒเบฅเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เปเบฅเบฐเบชเปเบฒเบฅเบฑเบšเบ‚เบฐเบซเบ™เบฒเบ”เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบ‚เบญเบ‡เป€เบ„เบทเบญเบ‚เปˆเบฒเบเบชเบฑเบ‡เบ„เบปเบกเป€เบžเบทเปˆเบญเป€เบšเบดเปˆเบ‡เบงเปˆเบฒเป€เบงเบฅเบฒเบ›เปˆเบฝเบ™เปเบ›เบ‡เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบกเบฑเบ™เป€เบ•เบตเบšเปƒเบซเบเปˆ. เบžเบฒเบเปƒเบ™เบซเบ™เบถเปˆเบ‡ n, เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเปƒเบ™เป€เบ„เบทเบญเบ‚เปˆเบฒเบเปเบฅเบฐเบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡เบœเบนเป‰เปƒเบŠเป‰เบ—เบตเปˆเบˆเบฐเบเบงเบ”เบชเบญเบšเบ•เป‰เบญเบ‡, เปเบ™เปˆเบ™เบญเบ™, เบ„เบทเบเบฑเบ™เบชเปเบฒเบฅเบฑเบšเบ—เบฑเบ‡เบซเบกเบปเบ” 5 เบ—เบฒเบ‡เป€เบฅเบทเบญเบ.
เบชเปเบฒเบฅเบฑเบšเบ„เบงเบฒเบกเป€เบ‚เบปเป‰เบฒเปƒเบˆเบ—เบตเปˆเบ”เบตเบ‚เบถเป‰เบ™, เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰เปเบกเปˆเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบชเป‰เบฒเบ‡เบ‚เบทเป‰เบ™เบชเปเบฒเบฅเบฑเบš n = 5. "เป€เบ„เบทเปˆเบญเบ‡เบเปเบฒเป€เบ™เบตเบ”" เบ—เบตเปˆเบ‚เบฝเบ™เบˆเบฐเบœเบฐเบฅเบดเบ”เบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบก ID เบชเบฒเบกเบญเบฑเบ™เป€เบ›เบฑเบ™เบœเบปเบ™เบœเบฐเบฅเบดเบ”:

  • เบญเบฑเบ™เบ—เปเบฒเบญเบดเบ”เปเบกเปˆเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เปเบŠเบ
  • เบญเบฑเบ™เบ—เบตเบชเบญเบ‡เปเบกเปˆเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเบงเบ”เบชเบญเบš
  • เบ—เบตเบชเบฒเบก - เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบฅเบถเบš

{0: [1], 1: [4, 5, 3, 2, 1], 2: [1, 2], 3: [2, 4, 1, 5, 3], 4: [2, 1]} # ะฒัะตะณะพ 15 ะดั€ัƒะทะตะน

{0: [1, 10800], 1: [5, 10800, 2, 10801, 4, 10802], 2: [1, 10800], 3: [3, 10800, 1, 10801, 5, 10802], 4: [2, 10800]} # ะฒัะตะณะพ 18 ะฟั€ะพะฒะตั€ัะตะผั‹ั… ััƒะฑัŠะตะบั‚ะพะฒ

{0: [1], 1: [1, 3, 2, 5, 4], 2: [1, 2], 3: [4, 1, 2, 3, 5], 4: [1, 2]} # ะฒัะตะณะพ 15 ะดั€ัƒะทะตะน

เบ”เบฑเปˆเบ‡โ€‹เบ—เบตเปˆโ€‹เบ—เปˆเบฒเบ™โ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เป€เบšเบดเปˆเบ‡โ€‹, ID เบ—เบฑเบ‡โ€‹เบซเบกเบปเบ”โ€‹เบ—เบตเปˆโ€‹เบกเบตโ€‹เบซเบผเบฒเบโ€‹เบโ€‹เปˆโ€‹เบงเบฒ 10 เปƒเบ™โ€‹เบงเบฑเบ”โ€‹เบˆเบฐโ€‹เบ™เบฒโ€‹เบ™เบธโ€‹เบเบปเบกโ€‹เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบเบฒเบ™โ€‹เบเบงเบ”โ€‹เบชเบญเบšโ€‹เปเบกเปˆเบ™โ€‹เบŠเบฑเบ”โ€‹เป€เบˆเบ™โ€‹เบ—เบตเปˆโ€‹เปเบ™เปˆโ€‹เบ™เบญเบ™โ€‹เบงเปˆเบฒโ€‹เบˆเบฐโ€‹เปƒเบซเป‰โ€‹เบ„เปเบฒโ€‹เบ•เบญเบšโ€‹เบ—เบตเปˆโ€‹เบšเปเปˆโ€‹เบ–เบทเบโ€‹เบ•เป‰เบญเบ‡โ€‹. เบเบฒเบ™เปƒเบชเปˆ, เบเบงเบ”เบชเบญเบšเปเบฅเบฐเบฅเบถเบš "เป€เบžเบทเปˆเบญเบ™" เปเบกเปˆเบ™เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เบขเปˆเบฒเบ‡เปเบ™เปˆเบ™เบญเบ™เปƒเบ™เบฅเปเบฒเบ”เบฑเบšเบ—เบตเปˆเบฅเบฐเบšเบธเป„เบงเป‰เปƒเบ™เบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบก.

เบเบฒเบ™เบ—เบปเบ”เบฅเบญเบ‡เป„เบ”เป‰เบ”เปเบฒเป€เบ™เบตเบ™เบขเบนเปˆเปƒเบ™เบ„เบญเบกเบžเบดเบงเป€เบ•เบตเป‚เบ™เบ”เบšเบธเบเบ—เบตเปˆเปƒเบŠเป‰ Windows 10, เบšเปˆเบญเบ™เบ—เบตเปˆ HBase เปเบฅเปˆเบ™เบขเบนเปˆเปƒเบ™เบ–เบฑเบ‡ Docker เบซเบ™เบถเปˆเบ‡, เปเบฅเบฐ Python เบเบฑเบš Jupyter Notebook เบเปเบฒเบฅเบฑเบ‡เปเบฅเปˆเบ™เบขเบนเปˆเปƒเบ™เบšเปˆเบญเบ™เบญเบทเปˆเบ™. Docker เป„เบ”เป‰เบ–เบทเบเบˆเบฑเบ”เบชเบฑเบ™ 2 เปเบเบ™ CPU เปเบฅเบฐ 2 GB เบ‚เบญเบ‡ RAM. เป€เบซเบ”เบœเบปเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”, เป€เบŠเบฑเปˆเบ™เบเบฒเบ™เบˆเปเบฒเบฅเบญเบ‡เบ‚เบญเบ‡ "เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ—เบตเปˆเบกเบตเป€เบ‡เบทเปˆเบญเบ™เป„เบ‚" เปเบฅเบฐ "เบ—เปเปˆ" เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบชเป‰เบฒเบ‡เบ‚เปเป‰เบกเบนเบ™เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเปเบฅเบฐเป€เบงเบฅเบฒเบเบฒเบ™เบงเบฑเบ”เปเบ—เบ, เป„เบ”เป‰เบ–เบทเบเบ‚เบฝเบ™เป„เบงเป‰เปƒเบ™ Python. เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เป„เบ”เป‰เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบš HBase Happybase, เป€เบžเบทเปˆเบญเบ„เบดเบ”เป„เบฅเปˆ hashes (MD5) เบชเปเบฒเบฅเบฑเบšเบ—เบฒเบ‡เป€เบฅเบทเบญเบ 5 - hashlib

เป‚เบ”เบเบ„เปเบฒเบ™เบถเบ‡เป€เบ–เบดเบ‡เบžเบฐเบฅเบฑเบ‡เบ‡เบฒเบ™เบ„เบญเบกเบžเบดเบงเป€เบ•เบตเบ‚เบญเบ‡เบ„เบญเบกเบžเบดเบงเป€เบ•เบตเป‚เบ™เบ”เบšเบธเบเป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐ, เบเบฒเบ™เป€เบ›เบตเบ”เบ•เบปเบงเบชเปเบฒเบฅเบฑเบš n = 10, 30, โ€ฆ เป„เบ”เป‰เบ–เบทเบเป€เบฅเบทเบญเบเบ—เบปเบ”เบฅเบญเบ‡. 170 โ€“ เป€เบกเบทเปˆเบญเป€เบงเบฅเบฒเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ—เบฑเบ‡เปเบปเบ”เบ‚เบญเบ‡เบฎเบญเบšเบ—เบปเบ”เบชเบญเบšเป€เบ•เบฑเบกเบฎเบนเบšเปเบšเบš (เบ—เบธเบเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบชเบณเบฅเบฑเบšเบ—เบธเบเบ—เบฒเบ‡เป€เบฅเบทเบญเบเบชเบณเบฅเบฑเบš n) เปเบกเปˆเบ™เบชเบปเบกเป€เบซเบ”เบชเบปเบกเบœเบปเบ™เบซเบผเบฒเบ เบซเบผเบทเปœเป‰เบญเบเบเบงเปˆเบฒ เปเบฅเบฐเบžเปเบ”เบตเปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบ‡เบฒเบ™เบฅเป‰เบฝเบ‡เบŠเบฒ (เป‚เบ”เบเบชเบฐเป€เบฅเปˆเบ 15 เบ™เบฒเบ—เบต).

เปƒเบ™เบ—เบตเปˆเบ™เบตเป‰เบกเบฑเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เปƒเบซเป‰เบ‚เปเป‰เบชเบฑเบ‡เป€เบเบ”เบงเปˆเบฒเปƒเบ™เบเบฒเบ™เบ—เบปเบ”เบฅเบญเบ‡เบ™เบตเป‰เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเป„เบ”เป‰เบ›เบฐเป€เบกเบตเบ™เบ•เบปเบงเป€เบฅเบเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบขเปˆเบฒเบ‡เปเบ—เป‰เบˆเบดเบ‡. เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบเบฒเบ™เบ›เบฝเบšเบ—เบฝเบšเบ‚เบญเบ‡เบชเบญเบ‡เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบญเบฒเบ”เบˆเบฐเบšเปเปˆเบ–เบทเบเบ•เป‰เบญเบ‡เบ—เบฑเบ‡เบซเบกเบปเบ”. เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบ„เบงเบฒเบกเบชเบปเบ™เปƒเบˆเปƒเบ™เบฅเบฑเบเบชเบฐเบ™เบฐเบ‚เบญเบ‡เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบตเปˆเปƒเบŠเป‰เป€เบงเบฅเบฒเป‚เบ”เบเบญเบตเบ‡เบ•เบฒเบก n, เบ™เบฑเบšเบ•เบฑเป‰เบ‡เปเบ•เปˆเบ„เปเบฒเบ™เบถเบ‡เป€เบ–เบดเบ‡เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡เบ‚เบญเบ‡ "เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบขเบทเบ™", เบกเบฑเบ™เป€เบ›เบฑเบ™เบเบฒเบ™เบเบฒเบเบซเบผเบฒเบเบ—เบตเปˆเบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ„เบฒเบ”เบ„เบฐเป€เบ™เบ—เบตเปˆเปƒเบŠเป‰เป€เบงเบฅเบฒ "เบฅเบถเบš" เบ‚เบญเบ‡เบญเบดเบ”เบ—เบดเบžเบปเบ™เบ‚เบญเบ‡ Random เปเบฅเบฐเบ›เบฑเบ”เปƒเบˆเบญเบทเปˆเบ™เป† (. เปเบฅเบฐเบงเบฝเบเบ‡เบฒเบ™เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบšเปเปˆเป„เบ”เป‰เบ•เบฑเป‰เบ‡เป„เบงเป‰).

เบœเบปเบ™เบเบฒเบ™เบ—เบปเบ”เบฅเบญเบ‡

เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ„เบฑเป‰เบ‡เบ—เปเบฒเบญเบดเบ”เปเบกเปˆเบ™เบงเบดเบ—เบตเบเบฒเบ™เบ—เบตเปˆเปƒเบŠเป‰เป€เบงเบฅเบฒเปƒเบ™เบเบฒเบ™เบ•เบทเปˆเบกเบ‚เปเป‰เบกเบนเบ™เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบซเบกเบนเปˆเป€เบžเบทเปˆเบญเบ™. เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเปเบกเปˆเบ™เบขเบนเปˆเปƒเบ™เป€เบชเบฑเป‰เบ™เบชเบฐเปเบ”เบ‡เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰.
เบ„เบธเบ™เบฅเบฑเบเบชเบฐเบ™เบฐเบ‚เบญเบ‡เบเบฒเบ™เบญเบญเบเปเบšเบšเบ•เบปเบงเปเบšเบšเบ‚เปเป‰เบกเบนเบ™เบชเปเบฒเบฅเบฑเบš NoSQL
เบ—เบฒเบ‡เป€เบฅเบทเบญเบ 3-5, เบ•เบฒเบกเบ—เบตเปˆเบ„เบฒเบ”เป„เบงเป‰, เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เป€เบงเบฅเบฒ "เบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒ" เป€เบเบทเบญเบšเบ„เบปเบ‡เบ—เบตเปˆ, เป€เบŠเบดเปˆเบ‡เบšเปเปˆเบ‚เบถเป‰เบ™เบเบฑเบšเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบ‚เบญเบ‡เบ‚เบฐเบซเบ™เบฒเบ”เป€เบ„เบทเบญเบ‚เปˆเบฒเบเปเบฅเบฐเบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡เบ—เบตเปˆเบšเปเปˆเบชเบฒเบกเบฒเบ”เปเบเบเป„เบ”เป‰เปƒเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”.
เบ—เบฒเบ‡โ€‹เป€เบฅเบทเบญเบ 2 เบเบฑเบ‡โ€‹เบชเบฐโ€‹เปเบ”เบ‡โ€‹เปƒเบซเป‰โ€‹เป€เบซเบฑเบ™โ€‹เบเบฒเบ™โ€‹เบ„เบปเบ‡โ€‹เบ—เบตเปˆโ€‹, เปเบ•เปˆโ€‹เบงเปˆเบฒโ€‹เบเบฒเบ™โ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹เบ—เบตเปˆโ€‹เบฎเป‰เบฒเบโ€‹เปเบฎเบ‡โ€‹เบเบงเปˆเบฒโ€‹เป€เบฅเบฑเบโ€‹เบ™เป‰เบญเบโ€‹, เป€เบเบทเบญเบš 2 เป€เบ—เบปเปˆเบฒโ€‹เบเบฑเบšโ€‹เบ—เบฒเบ‡โ€‹เป€เบฅเบทเบญเบ 3-5โ€‹. เปเบฅเบฐเบ™เบตเป‰เบšเปเปˆเบชเบฒเบกเบฒเบ”เปเบ•เปˆเบ›เบดเบ•เบดเบเบดเบ™เบ”เบต, เป€เบžเบฒเบฐเบงเปˆเบฒเบกเบฑเบ™เบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบ—เบดเบ”เบชเบฐเบ”เบต - เปƒเบ™เบชเบฐเบšเบฑเบšเบ™เบตเป‰เบˆเปเบฒเบ™เบงเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™ I / O เบเบฑเบš / เบˆเบฒเบ HBase เปเบกเปˆเบ™เบซเบผเบฒเบเบเบงเปˆเบฒ 2 เป€เบ—เบปเปˆเบฒ. เบ™เบตเป‰เบชเบฒเบกเบฒเบ”เป€เบ›เบฑเบ™เบซเบผเบฑเบเบ–เบฒเบ™เบ—เบฒเบ‡เบญเป‰เบญเบกเบงเปˆเบฒ bench เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, เปƒเบ™เบซเบผเบฑเบเบเบฒเบ™, เบชเบฐเบซเบ™เบญเบ‡เบ„เบงเบฒเบกเบ–เบทเบเบ•เป‰เบญเบ‡เบ—เบตเปˆเบ”เบต.
เบ—เบฒเบ‡เป€เบฅเบทเบญเบ 1 เบเบฑเบ‡, เบ•เบฒเบกเบ—เบตเปˆเบ„เบฒเบ”เป„เบงเป‰, เบเบฒเบเป€เบ›เบฑเบ™เบŠเป‰เบฒเบ—เบตเปˆเบชเบธเบ”เปเบฅเบฐเบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เป€เบ–เบดเบ‡เบเบฒเบ™เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™เป€เบชเบฑเป‰เบ™เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเปƒเบŠเป‰เป€เบงเบฅเบฒเปƒเบ™เบเบฒเบ™เป€เบžเบตเปˆเบกเป€เบŠเบดเปˆเบ‡เบเบฑเบ™เปเบฅเบฐเบเบฑเบ™เบเบฑเบšเบ‚เบฐเบซเบ™เบฒเบ”เบ‚เบญเบ‡เป€เบ„เบทเบญเบ‚เปˆเบฒเบ.
เบ•เบญเบ™เบ™เบตเป‰เปƒเบซเป‰เป€เบšเบดเปˆเบ‡เบœเบปเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ„เบฑเป‰เบ‡เบ—เบตเบชเบญเบ‡.
เบ„เบธเบ™เบฅเบฑเบเบชเบฐเบ™เบฐเบ‚เบญเบ‡เบเบฒเบ™เบญเบญเบเปเบšเบšเบ•เบปเบงเปเบšเบšเบ‚เปเป‰เบกเบนเบ™เบชเปเบฒเบฅเบฑเบš NoSQL
เบ—เบฒเบ‡เป€เบฅเบทเบญเบ 3-5 เบญเบตเบเป€เบ—เบทเปˆเบญเบซเบ™เบถเปˆเบ‡เบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบปเบงเบ•เบฒเบกเบ—เบตเปˆเบ„เบฒเบ”เป„เบงเป‰ - เป€เบงเบฅเบฒเบ„เบปเบ‡เบ—เบตเปˆ, เป€เบ›เบฑเบ™เป€เบญเบเบฐเบฅเบฒเบ”เบ‚เบญเบ‡เบ‚เบฐเบซเบ™เบฒเบ”เบ‚เบญเบ‡เป€เบ„เบทเบญเบ‚เปˆเบฒเบ. เบ•เบปเบงเป€เบฅเบทเบญเบ 1 เปเบฅเบฐ 2 เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เป€เบ–เบดเบ‡เบเบฒเบ™เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™เบ•เบฒเบกเป€เบชเบฑเป‰เบ™เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบ‚เบฐเบซเบ™เบฒเบ”เป€เบ„เบทเบญเบ‚เปˆเบฒเบเป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™เปเบฅเบฐเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบตเปˆเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™. เบเบดเปˆเบ‡เป„เบ›เบเบงเปˆเบฒเบ™เบฑเป‰เบ™, เบ—เบฒเบ‡เป€เบฅเบทเบญเบ 2 เบเบฒเบเป€เบ›เบฑเบ™เบŠเป‰เบฒเบฅเบปเบ‡เป€เบฅเบฑเบเบ™เป‰เบญเบ - เบ›เบฒเบเบปเบ”เบ‚เบทเป‰เบ™เบเป‰เบญเบ™เบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ—เบตเปˆเบˆเบฐเบžเบดเบชเบนเบ”เปเบฅเบฐเบ›เบธเบ‡เปเบ•เปˆเบ‡เบ–เบฑเบ™ "เบ™เบฑเบš" เป€เบžเบตเปˆเบกเป€เบ•เบตเบก, เป€เบŠเบดเปˆเบ‡เบˆเบฐเบเบฒเบเป€เบ›เบฑเบ™เบ—เบตเปˆเบชเบฑเบ‡เป€เบเบ”เป€เบซเบฑเบ™เบซเบผเบฒเบเป€เบกเบทเปˆเบญเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบง. เปเบ•เปˆเบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบˆเบฐเบเบฑเบ‡เบ›เบฐเบ•เบดเป€เบชเบ”เบˆเบฒเบเบเบฒเบ™เปเบ•เป‰เบกเบšเบปเบ”เบชเบฐเบซเบผเบธเบš, เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเบ„เบงเบฒเบกเบ–เบทเบเบ•เป‰เบญเบ‡เบ‚เบญเบ‡เบเบฒเบ™เบ›เบฝเบšเบ—เบฝเบšเบ™เบตเป‰เปเบกเปˆเบ™เบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เบ•เปเปˆเบฒ. เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เบญเบฑเบ”เบ•เบฒเบชเปˆเบงเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰ (เบ—เบฒเบ‡เป€เบฅเบทเบญเบเปƒเบ”, 1 เบซเบผเบท 2, เปเบกเปˆเบ™เป„เบง) เป„เบ”เป‰เบ›เปˆเบฝเบ™เบˆเบฒเบเบเบฒเบ™เปเบฅเปˆเบ™เป„เบ›เบชเบนเปˆเบเบฒเบ™เปเบฅเปˆเบ™ (เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆเบฎเบฑเบเบชเบฒเบฅเบฑเบเบชเบฐเบ™เบฐเบ‚เบญเบ‡เบเบฒเบ™เป€เบžเบดเปˆเบ‡เบžเบฒเบญเบฒเป„เบชเปเบฅเบฐ "เบ„เปเปเบฅเบฐเบ„เป").

เบ”เบต, เป€เบชเบฑเป‰เบ™เบชเบฐเปเบ”เบ‡เบชเบธเบ”เบ—เป‰เบฒเบเปเบกเปˆเบ™เบœเบปเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบเบฒเบ™เป‚เบเบเบเป‰เบฒเบ.

เบ„เบธเบ™เบฅเบฑเบเบชเบฐเบ™เบฐเบ‚เบญเบ‡เบเบฒเบ™เบญเบญเบเปเบšเบšเบ•เบปเบงเปเบšเบšเบ‚เปเป‰เบกเบนเบ™เบชเปเบฒเบฅเบฑเบš NoSQL

เบญเบตเบเป€เบ—เบทเปˆเบญ เปœเบถเปˆเบ‡, เบšเปเปˆเบกเบตเบ„เบงเบฒเบกเปเบ›เบเปƒเบˆเบขเบนเปˆเบ—เบตเปˆเบ™เบตเป‰. เบ•เบปเบงเป€เบฅเบทเบญเบ 3-5 เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เป‚เบเบเบเป‰เบฒเบเปƒเบ™เป€เบงเบฅเบฒเบ„เบปเบ‡เบ—เบตเปˆ.
เบเบดเปˆเบ‡เป„เบ›เบเบงเปˆเบฒเบ™เบฑเป‰เบ™, เบซเบ™เป‰เบฒเบชเบปเบ™เปƒเบˆ, เบ—เบฒเบ‡เป€เบฅเบทเบญเบ 4 เปเบฅเบฐ 5, เบšเปเปˆเป€เบซเบกเบทเบญเบ™เบเบฑเบšเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ, เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบซเบ™เป‰เบญเบเบเปˆเบงเบฒเบ—เบฒเบ‡เป€เบฅเบทเบญเบ 3. เบ›เบฒเบเบปเบ”เบ‚เบทเป‰เบ™, เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบฅเบถเบšเปเบ–เบงเปเบกเปˆเบ™เบฅเบฒเบ„เบฒเปเบžเบ‡เบเบงเปˆเบฒเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบฅเบถเบšเบ–เบฑเบ™, เป€เบŠเบดเปˆเบ‡เป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›เปเบฅเป‰เบงเบกเบตเป€เบซเบ”เบœเบปเบ™.

เบ—เบฒเบ‡เป€เบฅเบทเบญเบ 1 เปเบฅเบฐ 2, เบ•เบฒเบกเบ—เบตเปˆเบ„เบฒเบ”เป„เบงเป‰, เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เป€เบ–เบดเบ‡เบเบฒเบ™เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™เบ•เบฒเบกเป€เบชเบฑเป‰เบ™เบเบปเบ‡เบ•เบฒเบกเป€เบงเบฅเบฒ. เปƒเบ™เบ‚เบฐเบ™เบฐเบ”เบฝเบงเบเบฑเบ™, เบ—เบฒเบ‡เป€เบฅเบทเบญเบ 2 เปเบกเปˆเบ™เบ„เบปเบ‡เบ—เบตเปˆเบŠเป‰เบฒเบเบงเปˆเบฒเบ—เบฒเบ‡เป€เบฅเบทเบญเบ 1 - เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ” I/O เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเป€เบžเบทเปˆเบญ "เบฎเบฑเบเบชเบฒ" เบ–เบฑเบ™เบ™เบฑเบš.

เบšเบปเบ”เบชเบฐเบซเบผเบธเบšเบ—เบปเปˆเบงเป„เบ›เบ‚เบญเบ‡เบเบฒเบ™เบ—เบปเบ”เบฅเบญเบ‡:

  • เบ—เบฒเบ‡เป€เบฅเบทเบญเบ 3-5 เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เป€เบ–เบดเบ‡เบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบซเบผเบฒเบเบเบงเปˆเบฒเป€เบเบปเปˆเบฒเบเป‰เบญเบ™เบงเปˆเบฒเบžเบงเบเป€เบ‚เบปเบฒเปƒเบŠเป‰เบ›เบฐเป‚เบซเบเบ”เบˆเบฒเบ HBase; เบเบดเปˆเบ‡เป„เบ›เบเบงเปˆเบฒเบ™เบฑเป‰เบ™, เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‚เบญเบ‡เบžเบงเบเบกเบฑเบ™เปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบเบฑเบšเบเบฑเบ™เปเบฅเบฐเบเบฑเบ™เป‚เบ”เบเบ„เบปเบ‡เบ—เบตเปˆเปเบฅเบฐเบšเปเปˆเบ‚เบถเป‰เบ™เบเบฑเบšเบ‚เบฐเบซเบ™เบฒเบ”เบ‚เบญเบ‡เป€เบ„เบทเบญเบ‚เปˆเบฒเบ.
  • เบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡เบฅเบฐเบซเบงเปˆเบฒเบ‡เบ—เบฒเบ‡เป€เบฅเบทเบญเบ 4 เปเบฅเบฐ 5 เบšเปเปˆเป„เบ”เป‰เบ–เบทเบเบšเบฑเบ™เบ—เบถเบเป„เบงเป‰. เปเบ•เปˆเบ™เบตเป‰เบšเปเปˆเป„เบ”เป‰เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบ—เบฒเบ‡เป€เบฅเบทเบญเบ 5 เบšเปเปˆเบ„เบงเบ™เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰. เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบงเปˆเบฒเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ—เบปเบ”เบฅเบญเบ‡เบ—เบตเปˆเปƒเบŠเป‰, เป‚เบ”เบเบ„เปเบฒเบ™เบถเบ‡เป€เบ–เบดเบ‡เบฅเบฑเบเบชเบฐเบ™เบฐเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‚เบญเบ‡ bench เบเบฒเบ™เบ—เบปเบ”เบชเบญเบš, เบšเปเปˆเป„เบ”เป‰เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบเบงเบ”เบžเบปเบš.
  • เบฅเบฑเบเบชเบฐเบ™เบฐเบ‚เบญเบ‡เบเบฒเบ™เป€เบžเบตเปˆเบกเบ‚เบทเป‰เบ™เปƒเบ™เป„เบฅเบเบฐเป€เบงเบฅเบฒเบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เป€เบžเบทเปˆเบญเบ›เบฐเบ•เบดเบšเบฑเบ” "เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ—เบธเบฅเบฐเบเบดเบ”" เบเบฑเบšเบ‚เปเป‰เบกเบนเบ™เป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›เบขเบทเบ™เบขเบฑเบ™เบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆเบ—เบฒเบ‡เบ—เบดเบ”เบชเบฐเบ”เบตเบ—เบตเปˆเป„เบ”เป‰เบฎเบฑเบšเบเปˆเบญเบ™เบซเบ™เป‰เบฒเบ™เบตเป‰เบชเปเบฒเบฅเบฑเบšเบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ—เบฑเบ‡เบซเบกเบปเบ”.

Epilogue

เบเบฒเบ™เบ—เบปเบ”เบฅเบญเบ‡เบ—เบตเปˆเบซเบเบฒเบšเบ„เบฒเบเบ—เบตเปˆเบ”เปเบฒเป€เบ™เบตเบ™เป„เบ›เบ™เบฑเป‰เบ™เบšเปเปˆเบ„เบงเบ™เบ–เบทเป€เบ›เบฑเบ™เบ„เบงเบฒเบกเบˆเบดเบ‡เบขเปˆเบฒเบ‡เปเบ—เป‰เบˆเบดเบ‡. เบกเบตเบซเบผเบฒเบเบ›เบฑเบ”เปƒเบˆเบ—เบตเปˆเบšเปเปˆเป„เบ”เป‰เบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเปเบฅเบฐเบšเบดเบ”เป€เบšเบทเบญเบ™เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš (เบเบฒเบ™เป€เบซเบ™เบฑเบ‡เบ•เบตเบ‡เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เป€เบซเบฑเบ™เป„เบ”เป‰เบŠเบฑเบ”เป€เบˆเบ™เปƒเบ™เบเบฒเบŸเบ—เบตเปˆเบกเบตเบ‚เบฐเบซเบ™เบฒเบ”เป€เบ„เบทเบญเบ‚เปˆเบฒเบเบ‚เบฐเบซเบ™เบฒเบ”เบ™เป‰เบญเบ). เบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเบขเปˆเบฒเบ‡, เบ„เบงเบฒเบกเป„เบงเบ‚เบญเบ‡ thrift, เป€เบŠเบดเปˆเบ‡เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป‚เบ”เบ happybase, เบ›เบฐเบฅเบดเบกเบฒเบ™เปเบฅเบฐเบงเบดเบ—เบตเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เป€เบซเบ”เบœเบปเบ™เบ—เบตเปˆเบ‚เป‰เบญเบเบ‚เบฝเบ™เปƒเบ™ Python (เบ‚เป‰เบญเบเบšเปเปˆเบชเบฒเบกเบฒเบ”เบญเป‰เบฒเบ‡เบงเปˆเบฒเบฅเบฐเบซเบฑเบ”เบ–เบทเบเบ‚เบฝเบ™เบขเปˆเบฒเบ‡เบ–เบทเบเบ•เป‰เบญเบ‡เปเบฅเบฐเบกเบตเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบ™เปเบฒเปƒเบŠเป‰เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เบ‚เบญเบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เบฑเบ‡เบซเบกเบปเบ”), เบšเบฒเบ‡เบ—เบต. เบ„เบธเบ™โ€‹เบ™เบฐโ€‹เบชเบปเบกโ€‹เบšเบฑเบ”โ€‹เบ‚เบญเบ‡ HBase cachingโ€‹, เบเบดเบ”โ€‹เบˆเบฐโ€‹เบเปเบฒโ€‹เบžเบทเป‰เบ™โ€‹เบ–เบฒเบ™โ€‹เบ‚เบญเบ‡ Windows 10 เปƒเบ™โ€‹เบ„เบญเบกโ€‹เบžเบดเบงโ€‹เป€เบ•เบตโ€‹เบ‚เบญเบ‡โ€‹เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹, เปเบฅเบฐโ€‹เบญเบทเปˆเบ™เป†โ€‹. เป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›, เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบชเบปเบกเบกเบธเบ”เบงเปˆเบฒเบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆเบ—เบฒเบ‡เบ—เบดเบ”เบชเบฐเบ”เบตเบ—เบฑเบ‡เบซเบกเบปเบ”เป„เบ”เป‰เบ—เบปเบ”เบฅเบญเบ‡เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เบ„เบงเบฒเบกเบ–เบทเบเบ•เป‰เบญเบ‡เบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ. เบ”เบต, เบซเบผเบทเบขเปˆเบฒเบ‡เบซเบ™เป‰เบญเบเบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เบšเปเปˆเป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบ›เบฐเบ•เบดเป€เบชเบ”เบžเบงเบเป€เบ‚เบปเบฒเบ”เป‰เบงเบ "เบเบฒเบ™เป‚เบˆเบกเบ•เบตเบซเบปเบง".

เบชเบฐเบซเบผเบธเบšเปเบฅเป‰เบง, เบ„เบณเปเบ™เบฐเบ™เบณเบชเบณเบฅเบฑเบšเบ—เบธเบเบ„เบปเบ™เบ—เบตเปˆเบซเบฒเบเปเปˆเป€เบฅเบตเปˆเบกเบญเบญเบเปเบšเบšเบ•เบปเบงเปเบšเบšเบ‚เปเป‰เบกเบนเบ™เปƒเบ™ HBase: abstract เบˆเบฒเบเบ›เบฐเบชเบปเบšเบเบฒเบ™เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒเบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡ เปเบฅเบฐเบˆเบทเปˆ โ€œเบ„เบณเบชเบฑเปˆเบ‡โ€:

  • เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบเบฒเบ™เบญเบญเบเปเบšเบš, เบžเบงเบเป€เบฎเบปเบฒเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบˆเบฒเบเบซเบ™เป‰เบฒเบงเบฝเบเปเบฅเบฐเบฎเบนเบšเปเบšเบšเบ‚เบญเบ‡เบเบฒเบ™เบซเบกเบนเบ™เปƒเบŠเป‰เบ‚เปเป‰เบกเบนเบ™, เปเบฅเบฐเบšเปเปˆเปเบกเปˆเบ™เบกเบฒเบˆเบฒเบเบฎเบนเบšเปเบšเบšเป‚เบ”เป€เบกเบ™
  • เบเบฒเบ™โ€‹เป€เบ‚เบปเป‰เบฒโ€‹เป€เบ–เบดเบ‡โ€‹เบ›เบฐโ€‹เบชเบดเบ”โ€‹เบ—เบดโ€‹เบžเบฒเบš (เป‚เบ”เบโ€‹เบšเปเปˆโ€‹เบกเบตโ€‹เบเบฒเบ™โ€‹เบชเบฐโ€‹เปเบเบ™โ€‹เบ•เบฒโ€‹เบ•เบฐโ€‹เบฅเบฒเบ‡โ€‹เป€เบ•เบฑเบกโ€‹) โ€“ เบžเบฝเบ‡โ€‹เปเบ•เปˆโ€‹เป‚เบ”เบโ€‹เบเบฒเบ™โ€‹เบเบฐโ€‹เปเบˆโ€‹
  • เบเบฒเบ™เบ›เบฑเบšเบ•เบปเบงเบœเบดเบ”เบ›เบปเบเบเบฐเบ•เบด
  • เปเบ–เบงเบ•เปˆเบฒเบ‡เป†เบชเบฒเบกเบฒเบ”เบšเบฑเบ™เบˆเบธเบ–เบฑเบ™เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™
  • เบญเบปเบ‡เบ›เบฐเบเบญเบšเปเบšเบšเป„เบ”เบ™เบฒเบกเบดเบเบ‚เบญเบ‡เบฅเปเบฒเป‚เบžเบ‡

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: www.habr.com

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™