Google Cloud SpannerαŸ– αž›αŸ’αž’ αž’αžΆαž€αŸ’αžšαž€αŸ‹ αž“αž·αž„αž’αžΆαž€αŸ’αžšαž€αŸ‹

αž‡αŸ†αžšαžΆαž”αžŸαž½αžšαž’αŸ’αž“αž€αžŸαŸ’αžšαž»αž€ Khabrovsk αŸ” αž‡αžΆαž’αž˜αŸ’αž˜αžαžΆ αž™αžΎαž„αž”αž“αŸ’αžαž…αŸ‚αž€αžšαŸ†αž›αŸ‚αž€αžŸαž˜αŸ’αž—αžΆαžšαŸˆαžŠαŸ‚αž›αž‚αž½αžšαž±αŸ’αž™αž…αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸ αž˜αž»αž“αž–αŸαž›αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αžœαž‚αŸ’αž‚αžŸαž·αž€αŸ’αžŸαžΆαžαŸ’αž˜αžΈαŸ” αžαŸ’αž„αŸƒαž“αŸαŸ‡ αž‡αžΆαž–αž·αžŸαŸαžŸαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€ αž™αžΎαž„αž”αžΆαž“αž”αŸ„αŸ‡αž–αž»αž˜αŸ’αž–αž’αžαŸ’αžαž”αž‘αž˜αž½αž™αž’αŸ†αž–αžΈ Google Cloud Spanner αžŠαžΎαž˜αŸ’αž”αžΈαžŸαŸ’αžšαž”αž–αŸαž›αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž€αžΆαžšαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αžœαž‚αŸ’αž‚αžŸαž·αž€αŸ’αžŸαžΆ "AWS αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸ".

Google Cloud SpannerαŸ– αž›αŸ’αž’ αž’αžΆαž€αŸ’αžšαž€αŸ‹ αž“αž·αž„αž’αžΆαž€αŸ’αžšαž€αŸ‹

αžŠαžΎαž˜αž‘αžΎαž™αž”αžΆαž“αž…αž»αŸ‡αž•αŸ’αžŸαžΆαž™αž€αŸ’αž“αž»αž„ αž”αŸ’αž›αž»αž€ Lightspeed HQ.

αž€αŸ’αž“αž»αž„αž“αžΆαž˜αž‡αžΆαž€αŸ’αžšαž»αž˜αž αŸŠαž»αž“αžŠαŸ‚αž›αž•αŸ’αžαž›αŸ‹αž‡αžΌαž“αž“αžΌαžœαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž†αžΌαžαž€αžΆαžαžŠαŸ‚αž›αž˜αžΆαž“αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž›αžΎαž–αž–αž€αž‡αžΆαž…αŸ’αžšαžΎαž“αžŠαž›αŸ‹αž’αŸ’αž“αž€αž›αž€αŸ‹αžšαžΆαž™ αž—αŸ„αž‡αž“αžΈαž™αžŠαŸ’αž‹αžΆαž“ αž“αž·αž„αž’αŸ’αž“αž€αž›αž€αŸ‹αž’αž“αž‘αžΆαž‰αž‡αž»αŸ†αžœαž·αž‰αž–αž·αž—αž–αž›αŸ„αž€ Lightspeed αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž”αŸ’αžšαž—αŸαž‘αž•αŸ’αžŸαŸαž„αž‚αŸ’αž“αžΆαž“αŸƒαžœαŸαž‘αž·αž€αžΆαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžšαžŽαžΈαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžš αžœαž·αž—αžΆαž‚ αž“αž·αž„αžŸαŸ’αžœαŸ‚αž„αžšαž€αž•αŸ’αžŸαŸαž„αŸ—αž‚αŸ’αž“αžΆαŸ” αžœαŸαž‘αž·αž€αžΆαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž“αžΈαž˜αž½αž™αŸ—αž˜αžΆαž“αž…αŸ†αžŽαž»αž…αžαŸ’αž›αžΆαŸ†αž„ αž“αž·αž„αž…αŸ†αžŽαž»αž…αžαŸ’αžŸαŸ„αž™αžšαŸ€αž„αŸ—αžαŸ’αž›αž½αž“αŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž αžΎαž™ αž“αŸ…αž–αŸαž›αžŠαŸ‚αž› Google αžŽαŸ‚αž“αžΆαŸ† Cloud Spanner αž‘αŸ…αž€αžΆαž“αŸ‹αž‘αžΈαž•αŸ’αžŸαžΆαžš αž›αž€αŸ’αžαžŽαŸˆαž–αž·αžŸαŸαžŸαžŠαŸ‚αž›αž˜αž·αž“αž’αžΆαž…αž˜αžΎαž›αžƒαžΎαž‰αž“αŸ…αž€αŸ’αž“αž»αž„αž–αž·αž—αž–αž“αŸƒαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‘αŸ†αž“αžΆαž€αŸ‹αž‘αŸ†αž“αž„ αžŠαžΌαž…αž‡αžΆαž€αžΆαžšαž’αŸ’αžœαžΎαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“αž•αŸ’αžŠαŸαž€αžŸαŸ’αž‘αžΎαžšαžαŸ‚αž‚αŸ’αž˜αžΆαž“αžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹ αž“αž·αž„αž€αž·αž…αŸ’αž…αž–αŸ’αžšαž˜αž–αŸ’αžšαŸ€αž„αž€αž˜αŸ’αžšαž·αžαžŸαŸαžœαžΆαž€αž˜αŸ’αž˜ 99,999% (SLA)αŸ” - αž™αžΎαž„αž˜αž·αž“αž’αžΆαž…αžαž€αžαžΆαž“αž±αž€αžΆαžŸαžŠαžΎαž˜αŸ’αž”αžΈαž‘αž‘αž½αž›αž”αžΆαž“αžŠαŸƒαžšαž”αžŸαŸ‹αž™αžΎαž„!

αžŠαžΎαž˜αŸ’αž”αžΈαž•αŸ’αžαž›αŸ‹αž“αžΌαžœαž‘αž·αžŠαŸ’αž‹αž—αžΆαž–αž‘αžΌαž‘αŸ…αžŠαŸαž‘αžΌαž›αŸ†αž‘αžΌαž›αžΆαž™αž“αŸƒαž”αž‘αž–αž·αžŸαŸ„αž’αž“αŸαžšαž”αžŸαŸ‹αž™αžΎαž„αž‡αžΆαž˜αž½αž™ Cloud Spanner αž€αŸαžŠαžΌαž…αž‡αžΆαž›αž€αŸ’αžαžŽαŸˆαžœαž·αž“αž·αž…αŸ’αž†αŸαž™αžœαžΆαž™αžαž˜αŸ’αž›αŸƒαžŠαŸ‚αž›αž™αžΎαž„αž”αžΆαž“αž”αŸ’αžšαžΎ αž™αžΎαž„αž“αžΉαž„αž‚αŸ’αžšαž”αžŠαžŽαŸ’αžαž”αŸ‹αž›αžΎαž”αŸ’αžšαž’αžΆαž“αž”αž‘αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸ–

  1. αž›αž€αŸ’αžαžŽαŸˆαžœαž·αž“αž·αž…αŸ’αž†αŸαž™αžœαžΆαž™αžαž˜αŸ’αž›αŸƒαžšαž”αžŸαŸ‹αž™αžΎαž„αŸ”
  2. Cloud Spanner αž“αž·αž™αžΆαž™αžŠαŸ„αž™αžŸαž„αŸ’αžαŸαž”
  3. αž€αžΆαžšαžœαžΆαž™αžαž˜αŸ’αž›αŸƒαžšαž”αžŸαŸ‹αž™αžΎαž„αŸ”
  4. αž€αžΆαžšαžšαž€αžƒαžΎαž‰αžšαž”αžŸαŸ‹αž™αžΎαž„

Google Cloud SpannerαŸ– αž›αŸ’αž’ αž’αžΆαž€αŸ’αžšαž€αŸ‹ αž“αž·αž„αž’αžΆαž€αŸ’αžšαž€αŸ‹

1. αž›αž€αŸ’αžαžŽαŸˆαžœαž·αž“αž·αž…αŸ’αž†αŸαž™αžœαžΆαž™αžαž˜αŸ’αž›αŸƒαžšαž”αžŸαŸ‹αž™αžΎαž„αŸ”

αž˜αž»αž“αž“αžΉαž„αž…αžΌαž›αž‘αŸ…αž€αŸ’αž“αž»αž„αž—αžΆαž–αž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αžšαž”αžŸαŸ‹ Cloud Spanner αž—αžΆαž–αžŸαŸ’αžšαžŠαŸ€αž„αž‚αŸ’αž“αžΆ αž“αž·αž„αž—αžΆαž–αžαž»αžŸαž‚αŸ’αž“αžΆαžšαž”αžŸαŸ‹αžœαžΆαž‡αžΆαž˜αž½αž™αž“αžΉαž„αžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαž“αŸ…αž›αžΎαž‘αžΈαž•αŸ’αžŸαžΆαžš αžŸαžΌαž˜αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαž€αžšαžŽαžΈαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžŸαŸ†αžαžΆαž“αŸ‹αŸ—αžŠαŸ‚αž›αž™αžΎαž„αž˜αžΆαž“αž“αŸ…αž€αŸ’αž“αž»αž„αž…αž·αžαŸ’αžαž“αŸ…αž–αŸαž›αž–αž·αž…αžΆαžšαžŽαžΆαž€αž“αŸ’αž›αŸ‚αž„αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαžŠαžΆαž€αŸ‹αž±αŸ’αž™αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ Cloud Spanner αž“αŸ…αž€αŸ’αž“αž»αž„αž αŸαžŠαŸ’αž‹αžΆαžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αžšαž”αžŸαŸ‹αž™αžΎαž„αŸ–

  • αž‡αžΆαž€αžΆαžšαž‡αŸ†αž“αž½αžŸαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ SQL αž”αŸ’αžšαž–αŸƒαžŽαžΈ (αž›αŸαž…αž’αŸ’αž›αŸ„)
  • αžšαž”αŸ€αž”αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™ OLTP αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžš OLAP

αž…αŸ†αžŽαžΆαŸ†: αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž—αžΆαž–αžŸαžΆαž˜αž‰αŸ’αž‰ αž“αž·αž„αž—αžΆαž–αž„αžΆαž™αžŸαŸ’αžšαž½αž›αž“αŸƒαž€αžΆαžšαž”αŸ’αžšαŸ€αž”αž’αŸ€αž” αž’αžαŸ’αžαž”αž‘αž“αŸαŸ‡αž”αŸ’αžšαŸ€αž”αž’αŸ€αž” Cloud Spanner αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž”αŸ†αžšαŸ‚αž”αŸ†αžšαž½αž› MySQL αž“αŸƒαž‚αŸ’αžšαž½αžŸαžΆαžšαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™ GCP Cloud SQL αž“αž·αž„ Amazon AWS RDS αŸ”

αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ Cloud Spanner αž‡αžΆαž€αžΆαžšαž‡αŸ†αž“αž½αžŸαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ SQL αž”αŸ’αžšαž–αŸƒαžŽαžΈ

αž“αŸ…αž€αŸ’αž“αž»αž„αž”αžšαž·αžŸαŸ’αžαžΆαž“ αž”αŸ’αžšαž–αŸƒαžŽαžΈ αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž–αŸαž›αžœαŸαž›αžΆαž†αŸ’αž›αžΎαž™αžαž”αžŸαŸ†αžŽαž½αžšαžšαž”αžŸαŸ‹αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžαž·αžαž‡αž·αž αž¬αž›αžΎαžŸαž–αžΈαž€αž˜αŸ’αžšαž·αžαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžŠαŸ‚αž›αž”αžΆαž“αž€αŸ†αžŽαžαŸ‹αž‡αžΆαž˜αž»αž“ (αž‡αžΆαž…αž˜αŸ’αž”αž„αžŠαŸ„αž™αžŸαžΆαžšαžαŸ‚αž€αžΆαžšαž€αžΎαž“αž‘αžΎαž„αž“αŸƒαž…αŸ†αž“αž½αž“αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ αž“αž·αž„/αž¬αžŸαŸ†αžŽαžΎ) αž˜αžΆαž“αžœαž·αž’αžΈαž‡αžΆαž…αŸ’αžšαžΎαž“αžŠαžΎαž˜αŸ’αž”αžΈαž€αžΆαžαŸ‹αž”αž“αŸ’αžαž™αž–αŸαž›αžœαŸαž›αžΆαž†αŸ’αž›αžΎαž™αžαž”αž‘αŸ…αž€αž˜αŸ’αžšαž·αžαžŠαŸ‚αž›αž’αžΆαž…αž‘αž‘αž½αž›αž™αž€αž”αžΆαž“αŸ” αž‘αŸ„αŸ‡αž‡αžΆαž™αŸ‰αžΆαž„αžŽαžΆαž€αŸαžŠαŸ„αž™ αžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž—αžΆαž‚αž…αŸ’αžšαžΎαž“αž–αžΆαž€αŸ‹αž–αŸαž“αŸ’αž’αž“αžΉαž„αž€αžΆαžšαž’αŸ’αžœαžΎαž’αž“αŸ’αžαžšαžΆαž‚αž˜αž“αŸαžŠαŸ„αž™αžŠαŸƒαŸ”

αž‡αžΆαž§αž‘αžΆαž αžšαžŽαŸ αž‡αŸ†αž αžΆαž“αžŠαŸ†αž”αžΌαž„αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž’αž“αž»αžœαžαŸ’αžαž‚αžΊαžαŸ’αžšαžΌαžœαž˜αžΎαž›αž”αŸ‰αžΆαžšαŸ‰αžΆαž˜αŸ‰αŸ‚αžαŸ’αžšαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŠαŸ‚αž›αž‘αžΆαž€αŸ‹αž‘αž„αž“αžΉαž„αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž•αŸ’αžŸαŸαž„αŸ— αž αžΎαž™αž€αŸ‚αžŸαž˜αŸ’αžšαž½αž›αž–αž½αž€αžœαžΆαž±αŸ’αž™αžαŸ’αžšαžΌαžœαž‚αŸ’αž“αžΆαž“αžΉαž„αž‚αŸ†αžšαžΌαž€αžšαžŽαžΈαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž›αŸ’αž’αž”αŸ†αž•αž»αžαŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαžœαžΆαž˜αž·αž“αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαžΆαž“αŸ‹αž‘αŸ αž’αŸ’αž“αž€αž’αžΆαž…αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž’αŸ’αžœαžΎαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αž‰αŸ’αžˆαžš αž¬αž•αŸ’αžŠαŸαž€αŸ”

αž€αžΆαžšαž’αŸ’αžœαžΎαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“αž”αž‰αŸ’αžˆαžšαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž€αžΆαžšαž’αŸ’αžœαžΎαž±αŸ’αž™αž”αŸ’αžšαžŸαžΎαžšαž‘αžΎαž„αž“αžΌαžœαž§αž‘αžΆαž αžšαžŽαŸαž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αŸ αž‡αžΆαž’αž˜αŸ’αž˜αžαžΆαžŠαŸ„αž™αž€αžΆαžšαž”αž“αŸ’αžαŸ‚αž˜αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš/αžŸαŸ’αž“αžΌαž›αž”αž“αŸ’αžαŸ‚αž˜ RAM αž€αžΆαž“αŸ‹αžαŸ‚αž…αŸ’αžšαžΎαž“ αž€αžΆαžšαž•αŸ’αž‘αž»αž€αž›αžΏαž“αž‡αžΆαž„αž˜αž»αž“αŸ” αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‘αŸ†αž“αžΆαž€αŸ‹αž‘αŸ†αž“αž„ (αžŠαŸ‚αž›αž”αŸ’αžšαžΎαžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžšαŸ’αžαž–αž αž»αžαŸ’αžŸαŸ‚) αžŠαžΌαž…αž‡αžΆαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“ MySQL αž›αŸ’αž’αž”αž‰αŸ’αžˆαžšαŸ”

αž˜αžΆαž“αž‚αž»αžŽαžœαž·αž”αžαŸ’αžαž·αž‡αžΆαž…αŸ’αžšαžΎαž“αž…αŸ†αž–αŸ„αŸ‡αžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžšαŸ’αžαž“αŸαŸ‡ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž‡αžΆαž€αŸ‹αžŸαŸ’αžαŸ‚αž„αž”αŸ†αž•αž»αžαž‚αžΊαž‘αŸ†αž αŸ†αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αŸαž’αžαž·αž”αžšαž˜αžΆαž“αŸ…αž›αžΎαž‘αžΈαž•αŸ’αžŸαžΆαžšαŸ” αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹αž“αŸƒαž§αž‘αžΆαž αžšαžŽαŸαž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αŸαž’αŸ†αž‡αžΆαž„αž‚αŸαžαŸ’αžšαžΌαžœαž”αžΆαž“αžˆαžΆαž“αžŠαž›αŸ‹ αžœαžΆαž“αŸ…αžŸαž›αŸ‹αž‡αž˜αŸ’αžšαžΎαžŸαž˜αž½αž™αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αŸ– αž€αžΆαžšαž’αŸ’αžœαžΎαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“αž•αŸ’αžŠαŸαž€αŸ”

αž€αžΆαžšαž’αŸ’αžœαžΎαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“αž•αŸ’αžαŸαž€αž‚αžΊαž‡αžΆαžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžšαŸ’αžαž˜αž½αž™αžŠαŸ‚αž›αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αŸαž€αžΆαž“αŸ‹αžαŸ‚αž…αŸ’αžšαžΎαž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜αž‘αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜ αžŠαŸ‚αž›αžαžΆαž˜αž§αžαŸ’αžŠαž˜αž‚αžαž·αž”αž„αŸ’αž€αžΎαž“αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαžαžΆαž˜αž›αŸ†αžŠαžΆαž”αŸ‹αž›αŸ†αžŠαŸ„αž™αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž…αŸ†αž“αž½αž“αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αŸαžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜αŸ” αž—αžΆαž‚αž…αŸ’αžšαžΎαž“ αž”αŸ’αžšαž–αŸƒαžŽαžΈ αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž˜αž·αž“αž’αŸ’αžœαžΎαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“αž•αŸ’αžŠαŸαž€αž”αžΆαž“αž›αŸ’αž’ αž¬αž˜αž·αž“αž’αŸ’αžœαžΎαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“αž‘αžΆαž›αŸ‹αžαŸ‚αžŸαŸ„αŸ‡αŸ” αž§αž‘αžΆαž αžšαžŽαŸ MySQL αž’αžΆαž…αž’αŸ’αžœαžΎαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“αž•αŸ’αžŠαŸαž€αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž’αžΆαž“αžŠαŸ„αž™αž”αž“αŸ’αžαŸ‚αž˜αž’αŸ’αž“αž€αž’αžΆαž“αž‘αžΆαžŸαž€αžš αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž˜αž·αž“αž’αžΆαž…αž’αŸ’αžœαžΎαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“αž•αŸ’αžŠαŸαž€αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαžŸαžšαžŸαŸαžšαž”αžΆαž“αž‘αŸαŸ”

αž˜αŸ‰αŸ’αž™αžΆαž„αžœαž·αž‰αž‘αŸ€αž αžŠαŸ„αž™αžŸαžΆαžšαž’αž˜αŸ’αž˜αž‡αžΆαžαž·αžšαž”αžŸαŸ‹αžœαžΆ Cloud Spanner αž’αžΆαž…αž’αŸ’αžœαžΎαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“αž•αŸ’αžŠαŸαž€αž”αžΆαž“αž™αŸ‰αžΆαž„αž„αžΆαž™αžŸαŸ’αžšαž½αž›αžŠαŸ„αž™αž˜αžΆαž“αž’αž“αŸ’αžαžšαžΆαž‚αž˜αž“αŸαžαž·αž…αžαž½αž…αž”αŸ†αž•αž»αžαŸ”

αž›αž€αŸ’αžαžŽαŸˆαž–αž·αžŸαŸαžŸαž–αŸαž‰αž›αŸαž‰ DBMS αž‡αžΆαžŸαŸαžœαžΆαž€αž˜αŸ’αž˜ αžαŸ’αžšαžΌαžœαžαŸ‚αžœαžΆαž™αžαž˜αŸ’αž›αŸƒαž–αžΈαž˜αž»αŸ†αž•αŸ’αžŸαŸαž„αŸ—αž‚αŸ’αž“αžΆαŸ” αž‡αžΆαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“ αž™αžΎαž„αž”αžΆαž“αž™αž€ DBMS αžŠαŸ‚αž›αž–αŸαž‰αž“αž·αž™αž˜αž”αŸ†αž•αž»αžαž“αŸ…αž€αŸ’αž“αž»αž„αž–αž–αž€ - αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ Google, GCP Cloud SQL αž“αž·αž„αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ Amazon, AWS RDS αŸ” αž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαžœαžΆαž™αžαž˜αŸ’αž›αŸƒαžšαž”αžŸαŸ‹αž™αžΎαž„ αž™αžΎαž„αž”αžΆαž“αž•αŸ’αžαŸ„αžαž›αžΎαž”αŸ’αžšαž—αŸαž‘αžŠαžΌαž…αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸˆ

  • αž€αžΆαžšαž‚αžΌαžŸαž•αŸ‚αž“αž‘αžΈαž›αž€αŸ’αžαžŽαŸˆαž–αž·αžŸαŸαžŸαŸ– αžœαž·αžŸαžΆαž›αž—αžΆαž– SQL, DDL, DML; αž”αžŽαŸ’αžŽαžΆαž›αŸαž™αž€αžΆαžšαžαž—αŸ’αž‡αžΆαž”αŸ‹/αž§αž”αž€αžšαžŽαŸαž—αŸ’αž‡αžΆαž”αŸ‹ αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžš αž“αž·αž„αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž“αŸ…αž›αžΎαŸ”
  • αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαž€αžΆαžšαž’αž—αž·αžœαžŒαŸ’αžαž“αŸαŸ– αž€αžΆαžšαž’αž—αž·αžœαžŒαŸ’αžαž“αŸ αž“αž·αž„αž€αžΆαžšαž’αŸ’αžœαžΎαžαŸαžŸαŸ’αžαž„αžΆαž™αžŸαŸ’αžšαž½αž›αŸ”
  • αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαž•αŸ’αž“αŸ‚αž€αžšαžŠαŸ’αž‹αž”αžΆαž›αŸ– αž€αžΆαžšαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αžœαžαŸ’αžαž» - αž§αž‘αžΆαž αžšαžŽαŸ αž€αžΆαžšαž’αŸ’αžœαžΎαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“αž‘αžΎαž„αž›αžΎ/αž…αž»αŸ‡αž€αŸ’αžšαŸ„αž˜ αž“αž·αž„αž€αžΆαžšαž’αŸ’αžœαžΎαž±αŸ’αž™αž”αŸ’αžšαžŸαžΎαžšαž‘αžΎαž„αž“αžΌαžœαž€αžšαžŽαžΈαŸ” SLA αž€αžΆαžšαž”αž˜αŸ’αžšαž»αž„αž‘αž»αž€αž“αž·αž„αž€αžΆαžšαž„αžΎαž”αž‘αžΎαž„αžœαž·αž‰; αž€αžΆαžšαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αžŸαž»αžœαžαŸ’αžαž·αž—αžΆαž– / αž€αžΆαžšαž…αžΌαž›αž”αŸ’αžšαžΎαŸ”

αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ Cloud Spanner αž‡αžΆαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™ OLTP αžŠαŸ‚αž›αž”αžΆαž“αž”αžΎαž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš OLAP

αžαžŽαŸˆαž–αŸαž›αžŠαŸ‚αž› Google αž˜αž·αž“αž”αžΆαž“αž’αŸ‡αž’αžΆαž„αž™αŸ‰αžΆαž„αž…αŸ’αž”αžΆαžŸαŸ‹αžαžΆ Cloud Spanner αžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαž…αž“αžΆαž‘αžΎαž„αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžœαž·αž—αžΆαž‚ αžœαžΆαž…αŸ‚αž€αžšαŸ†αž›αŸ‚αž€αž›αž€αŸ’αžαžŽαŸˆαž˜αž½αž™αž…αŸ†αž“αž½αž“αž‡αžΆαž˜αž½αž™αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαžŠαžΌαž…αž‡αžΆ Apache Impala & Kudu αž“αž·αž„ YugaByte αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαž…αž“αžΆαž‘αžΎαž„αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αž“αŸ’αž‘αž»αž€αž€αžΆαžšαž„αžΆαžšαžšαž”αžŸαŸ‹ OLAP αŸ”

αž‘αŸ„αŸ‡αž”αžΈαž‡αžΆαž˜αžΆαž“αž±αž€αžΆαžŸαžαž·αž…αžαž½αž…αžŠαŸ‚αž› Cloud Spanner αžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“ HTAP (αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžš/αž€αžΆαžšαžœαž·αž—αžΆαž‚αž€αžΌαž“αž€αžΆαžαŸ‹) αž‡αžΆαž˜αž½αž™αž“αžΉαž„αžŸαŸ†αžŽαž»αŸ†αž˜αž»αžαž„αžΆαžš OLAP αžŠαŸ‚αž›αž’αžΆαž…αž”αŸ’αžšαžΎαž”αžΆαž“ (αž…αŸ’αžšαžΎαž“ αž¬αžαž·αž…αž‡αžΆαž„αž“αŸαŸ‡) αž™αžΎαž„αž‚αž·αžαžαžΆαžœαžΆαžŸαž˜αž“αžΉαž„αž‘αž‘αž½αž›αž”αžΆαž“αž€αžΆαžšαž™αž€αž…αž·αžαŸ’αžαž‘αž»αž€αžŠαžΆαž€αŸ‹αžšαž”αžŸαŸ‹αž™αžΎαž„αŸ”

αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž‚αŸ†αž“αž·αžαž“αŸαŸ‡ αž™αžΎαž„αž”αžΆαž“αž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž›αž”αŸ’αžšαž—αŸαž‘αžŠαžΌαž…αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸˆ

  • αž€αžΆαžšαž•αŸ’αž‘αž»αž€αž‘αž·αž“αŸ’αž“αž“αŸαž™ αž›αž·αž”αž·αž€αŸ’αžšαž˜ αž“αž·αž„αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαž€αžΆαžšαž”αŸ‚αž„αž…αŸ‚αž€
  • αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαžŸαŸ†αžŽαž½αžš αž“αž·αž„ DML

2. Cloud Spanner αžŸαž„αŸ’αžαŸαž”

Google Spanner αž‚αžΊαž‡αžΆαž”αŸ’αžšαž–αŸαž“αŸ’αž’αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŠαŸ‚αž›αž˜αžΆαž“αž‘αŸ†αž“αžΆαž€αŸ‹αž‘αŸ†αž“αž„αž‡αžΆαž€αŸ’αžšαž»αž˜ (RDBMS) αžŠαŸ‚αž› Google αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž•αŸ’αž‘αžΆαž›αŸ‹αžαŸ’αž›αž½αž“αž˜αž½αž™αž…αŸ†αž“αž½αž“αŸ” Google αž”αžΆαž“αž’αŸ’αžœαžΎαž±αŸ’αž™αžœαžΆαž’αžΆαž…αž”αŸ’αžšαžΎαž”αžΆαž“αž‡αžΆαž‘αžΌαž‘αŸ…αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ Google Cloud Platform αž“αŸ…αžŠαžΎαž˜αž†αŸ’αž“αžΆαŸ† 2017 αŸ”

αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž›αž€αŸ’αžαžŽαŸˆαž˜αž½αž™αž…αŸ†αž“αž½αž“αž“αŸƒ Cloud SpannerαŸ–

  • αž…αž„αŸ’αž€αŸ„αž˜ RDBMS αžŠαŸ‚αž›αž’αžΆαž…αž’αŸ’αžœαžΎαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“αž”αžΆαž“αžαŸ’αž–αžŸαŸ‹αŸ– αž”αŸ’αžšαžΎαž€αžΆαžšαž’αŸ’αžœαžΎαžŸαž˜αž€αžΆαž›αž€αž˜αŸ’αž˜αž–αŸαž›αžœαŸαž›αžΆαž•αŸ’αž“αŸ‚αž€αžšαžΉαž„ αžŠαžΎαž˜αŸ’αž”αžΈαž’αžΆαž“αžΆαž”αžΆαž“αž“αžΌαžœαž—αžΆαž–αžŸαŸŠαžΈαžŸαž„αŸ’αžœαžΆαž€αŸ‹αž‚αŸ’αž“αžΆαž“αŸƒαž‘αž·αž“αŸ’αž“αž“αŸαž™αŸ”
  • αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž†αŸ’αž›αž„αžαžΆαžšαžΆαž„αŸ– αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž’αžΆαž…αž›αžΆαžαžŸαž“αŸ’αž’αžΉαž„αžαžΆαžšαžΆαž„αž…αŸ’αžšαžΎαž“ - αž˜αž·αž“αž…αžΆαŸ†αž”αžΆαž…αŸ‹αž€αŸ†αžŽαžαŸ‹αž…αŸ†αž–αŸ„αŸ‡αžαžΆαžšαžΆαž„αžαŸ‚αž˜αž½αž™αž‘αŸ (αž˜αž·αž“αžŠαžΌαž… Apache HBase ឬ Apache Kudu)αŸ”
  • αžαžΆαžšαžΆαž„αžŠαŸ‚αž›αž˜αžΆαž“αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž›αžΎαž€αžΌαž“αžŸαŸ„αž…αž˜αŸ’αž”αž„αŸ– αžαžΆαžšαžΆαž„αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžαŸ’αžšαžΌαžœαžαŸ‚αž˜αžΆαž“αžŸαŸ„αž”αž‹αž˜αžŠαŸ‚αž›αž”αžΆαž“αž”αŸ’αžšαž€αžΆαžŸ (PC) αžŠαŸ‚αž›αž’αžΆαž…αž˜αžΆαž“αž‡αž½αžšαžˆαžšαž‡αžΆαž…αŸ’αžšαžΎαž“αž“αŸ…αž€αŸ’αž“αž»αž„αžαžΆαžšαžΆαž„αŸ” αž‘αž·αž“αŸ’αž“αž“αŸαž™αžαžΆαžšαžΆαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαž€αŸ’αžŸαžΆαž‘αž»αž€αž€αŸ’αž“αž»αž„αž›αŸ†αžŠαžΆαž”αŸ‹αž€αž»αŸ†αž–αŸ’αž™αžΌαž‘αŸαžš αžŠαŸ‚αž›αž’αŸ’αžœαžΎαž±αŸ’αž™αžœαžΆαž˜αžΆαž“αž”αŸ’αžšαžŸαž·αž‘αŸ’αž’αž—αžΆαž– αž“αž·αž„αžšαž αŸαžŸαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαžŸαŸ’αžœαŸ‚αž„αžšαž€αž€αž»αŸ†αž–αŸ’αž™αžΌαž‘αŸαžšαŸ” αžŠαžΌαž…αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžŠαŸ‚αž›αž˜αžΆαž“αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž›αžΎαž€αž»αŸ†αž–αŸ’αž™αžΌαž‘αŸαžšαž•αŸ’αžŸαŸαž„αž‘αŸ€αž αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαžαŸ’αžšαžΌαžœαžαŸ‚αž™αž€αž‚αŸ†αžšαžΌαžαžΆαž˜αž€αžšαžŽαžΈαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžŠαŸ‚αž›αž”αžΆαž“αžšαž…αž“αžΆαž‡αžΆαž˜αž»αž“αž€αŸ’αž“αž»αž„αž…αž·αžαŸ’αžαžŠαžΎαž˜αŸ’αž”αžΈαžŸαž˜αŸ’αžšαŸαž…αž”αžΆαž“αŸ” αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž›αŸ’αž’αž”αŸ†αž•αž»αž.
  • αžαžΆαžšαžΆαž„αž†αŸ’αž“αžΌαžαŸ– αžαžΆαžšαžΆαž„αž’αžΆαž…αž˜αžΆαž“αž—αžΆαž–αž’αžΆαžŸαŸ’αžšαŸαž™αž‘αŸ…αž›αžΎαž‚αŸ’αž“αžΆαž‘αŸ…αžœαž·αž‰αž‘αŸ…αž˜αž€αŸ” αž‡αž½αžšβ€‹αžŠαŸαž€β€‹αž€αŸ’αž“αž»αž„β€‹αžαžΆαžšαžΆαž„β€‹αž€αžΌαž“β€‹αž’αžΆαž…β€‹αžαŸ’αžšαžΌαžœβ€‹αž”αžΆαž“β€‹αž•αŸ’αž‚αžΌαž•αŸ’αž‚αž„β€‹αž“αžΉαž„β€‹αž‡αž½αžšβ€‹αžŠαŸαž€β€‹αž€αŸ’αž“αž»αž„β€‹αžαžΆαžšαžΆαž„β€‹αž˜αŸαŸ” αžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžšαŸ’αžαž“αŸαŸ‡αž”αž„αŸ’αž€αžΎαž“αž›αŸ’αž”αžΏαž“αž“αŸƒαž€αžΆαžšαžŸαŸ’αžœαŸ‚αž„αžšαž€αž‘αŸ†αž“αžΆαž€αŸ‹αž‘αŸ†αž“αž„αžŠαŸ‚αž›αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž€αŸ†αžŽαžαŸ‹αž’αžαŸ’αžαžŸαž‰αŸ’αž‰αžΆαžŽαž€αŸ’αž“αž»αž„αžŠαŸ†αžŽαžΆαž€αŸ‹αž€αžΆαž›αž‚αŸ†αžšαžΌαž‘αž·αž“αŸ’αž“αž“αŸαž™ αžŠαžΌαž…αž‡αžΆαž€αžΆαžšαžŸαŸ’αžœαŸ‚αž„αžšαž€αž’αžαž·αžαž·αž‡αž“αžšαž½αž˜αž‚αŸ’αž“αžΆ αž“αž·αž„αžœαž·αž€αŸ’αž€αž™αž”αžαŸ’αžšαžšαž”αžŸαŸ‹αž–αž½αž€αž‚αŸαŸ”
  • αžŸαž“αŸ’αž‘αžŸαŸ’αžŸαž“αŸαŸ– Cloud Spanner αž‚αžΆαŸ†αž‘αŸ’αžšαžŸαž“αŸ’αž‘αžŸαŸ’αžŸαž“αŸαž”αž“αŸ’αž‘αžΆαž”αŸ‹αž”αž“αŸ’αžŸαŸ†αŸ” αž›αž·αž”αž·αž€αŸ’αžšαž˜αž˜αžΆαž“αž‡αž½αžšαžˆαžšαžŠαŸ‚αž›αž”αžΆαž“αž’αŸ’αžœαžΎαž›αž·αž”αž·αž€αŸ’αžšαž˜ αž“αž·αž„αž‡αž½αžšαžˆαžšαž€αž»αŸ†αž–αŸ’αž™αžΌαž‘αŸαžšαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž…αž„αŸ‹αž”αžΆαž“ αž›αž·αž”αž·αž€αŸ’αžšαž˜αž€αŸαž’αžΆαž…αž˜αžΆαž“αž‡αž½αžšαžˆαžšαžŠαŸ‚αž›αž˜αž·αž“αž˜αžΆαž“αž›αž·αž”αž·αž€αŸ’αžšαž˜αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαž•αž„αžŠαŸ‚αžšαŸ” αž›αž·αž”αž·αž€αŸ’αžšαž˜αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‡αŸ’αžšαŸ€αžαž‡αŸ’αžšαŸ‚αž€αž‡αžΆαž˜αž½αž™αžαžΆαžšαžΆαž„αž˜αŸ αžŠαžΎαž˜αŸ’αž”αžΈαž”αž„αŸ’αž€αžΎαž“αž›αŸ’αž”αžΏαž“αžŸαŸ†αžŽαž½αžšαŸ” αž€αžΆαžšαžšαžΉαžαž”αž“αŸ’αžαžΉαž„αž‡αžΆαž…αŸ’αžšαžΎαž“αž’αž“αž»αžœαžαŸ’αžαž…αŸ†αž–αŸ„αŸ‡αž›αž·αž”αž·αž€αŸ’αžšαž˜ αžŠαžΌαž…αž‡αžΆαž…αŸ†αž“αž½αž“αž’αžαž·αž”αžšαž˜αžΆαž“αŸƒαž‡αž½αžšαžˆαžšαž”αž“αŸ’αžαŸ‚αž˜αžŠαŸ‚αž›αžšαž€αŸ’αžŸαžΆαž‘αž»αž€αž€αŸ’αž“αž»αž„αž›αž·αž”αž·αž€αŸ’αžšαž˜αŸ” αžŠαžΌαž…αž‚αŸ’αž“αžΆαž“αŸαŸ‡αž•αž„αžŠαŸ‚αžš αžŸαŸ†αžŽαž½αžšαžαžΆαž˜αžšαž™αŸˆαž›αž·αž”αž·αž€αŸ’αžšαž˜αž’αžΆαž…αž˜αž·αž“αžαŸ’αžšαž„αŸ‹αžŠαžΌαž…αž“αŸ…αž€αŸ’αž“αž»αž„ RDBMSs αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαŸ”

β€œCloud Spanner αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαžŸαž“αŸ’αž‘αžŸαŸ’αžŸαž“αŸαžŠαŸ„αž™αžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž·αžαŸ‚αž€αŸ’αž“αž»αž„αž€αžšαžŽαžΈαž€αž˜αŸ’αžšαž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αŸ” αž‡αžΆαž–αž·αžŸαŸαžŸ Cloud Spanner αž˜αž·αž“αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαžŸαž“αŸ’αž‘αžŸαŸ’αžŸαž“αŸαž”αž“αŸ’αž‘αžΆαž”αŸ‹αž”αž“αŸ’αžŸαŸ†αžŠαŸ„αž™αžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž·αž‘αŸ αž”αŸ’αžšαžŸαž·αž“αž”αžΎαžŸαŸ†αžŽαž½αžšαžŸαŸ’αž“αžΎαžŸαž»αŸ†αž‡αž½αžšαžˆαžšαžŽαžΆαž˜αž½αž™αžŠαŸ‚αž›αž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαž€αŸ’αžŸαžΆαž‘αž»αž€αž“αŸ…αž€αŸ’αž“αž»αž„ αžŸαž“αŸ’αž‘αžŸαŸ’αžŸαž“αŸ "αŸ”

  • αž€αž·αž…αŸ’αž…αž–αŸ’αžšαž˜αž–αŸ’αžšαŸ€αž„αž€αž˜αŸ’αžšαž·αžαžŸαŸαžœαžΆαž€αž˜αŸ’αž˜ (SLA): αž€αžΆαžšαžŠαžΆαž€αŸ‹αž–αž„αŸ’αžšαžΆαž™αž“αŸ…αž€αŸ’αž“αž»αž„αžαŸ†αž”αž“αŸ‹αž˜αž½αž™αž‡αžΆαž˜αž½αž™αž“αžΉαž„ SLA αž“αŸƒ 99,99%; αž€αžΆαžšαžŠαžΆαž€αŸ‹αž–αž„αŸ’αžšαžΆαž™αž–αž αž»αžαŸ†αž”αž“αŸ‹αž‡αžΆαž˜αž½αž™αž“αžΉαž„ 99,999% SLA αŸ” αžαžŽαŸˆαž–αŸαž›αžŠαŸ‚αž› SLA αžαŸ’αž›αž½αž“αžœαžΆαž‚αŸ’αžšαžΆαž“αŸ‹αžαŸ‚αž‡αžΆαž€αž·αž…αŸ’αž…αž–αŸ’αžšαž˜αž–αŸ’αžšαŸ€αž„αž˜αž½αž™ αž“αž·αž„αž˜αž·αž“αž˜αŸ‚αž“αž‡αžΆαž€αžΆαžšαž’αžΆαž“αžΆαž“αŸƒαž”αŸ’αžšαž—αŸαž‘αžŽαžΆαž˜αž½αž™αž“αŸ„αŸ‡αž‘αŸ αžαŸ’αž‰αž»αŸ†αž‡αžΏαžαžΆαž˜αž“αž»αžŸαŸ’αžŸαž“αŸ… Google αž˜αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž–αž·αž”αžΆαž€αž˜αž½αž™αž…αŸ†αž“αž½αž“αžŠαžΎαž˜αŸ’αž”αžΈαž’αŸ’αžœαžΎαž€αžΆαžšαž‘αžΆαž˜αž‘αžΆαžšαžαŸ’αž›αžΆαŸ†αž„αž”αŸ‚αž”αž“αŸαŸ‡αŸ” (αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž‡αžΆαž―αž€αžŸαžΆαžšαž™αŸ„αž„ 99,999% αž˜αžΆαž“αž“αŸαž™αžαžΆ 26,3 αžœαž·αž“αžΆαž‘αžΈαž“αŸƒαž—αžΆαž–αž˜αž·αž“αž˜αžΆαž“αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž€αŸ’αž“αž»αž„αž˜αž½αž™αžαŸ‚αŸ” )
  • αž…αŸ’αžšαžΎαž“αž‘αŸ€αžαŸ– https://cloud.google.com/spanner/

αž…αŸ†αžŽαžΆαŸ†: αž‚αž˜αŸ’αžšαŸ„αž„ Apache Tephra αž”αž“αŸ’αžαŸ‚αž˜αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž”αŸ’αžšαžŸαžΎαžšαž‘αžΎαž„αžŠαž›αŸ‹ Apache HBase (αž₯αž‘αžΌαžœαž“αŸαŸ‡αž€αŸαžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αž“αž»αžœαžαŸ’αžαž“αŸ…αž€αŸ’αž“αž»αž„ Apache Phoenix αž‡αžΆαž”αŸαžαžΆ)αŸ”

3. αž€αžΆαžšαžœαžΆαž™αžαž˜αŸ’αž›αŸƒαžšαž”αžŸαŸ‹αž™αžΎαž„αŸ”

αžŠαžΌαž…αŸ’αž“αŸαŸ‡ αž™αžΎαž„αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž‚αŸ’αž“αžΆαž”αžΆαž“αž’αžΆαž“αž€αžΆαžšαž’αŸ‡αž’αžΆαž„αžšαž”αžŸαŸ‹ Google αž’αŸ†αž–αžΈαž’αžαŸ’αžαž”αŸ’αžšαž™αŸ„αž‡αž“αŸαž“αŸƒ Cloud Spanner - αž€αžΆαžšαž’αŸ’αžœαžΎαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“αž•αŸ’αžŠαŸαž€αžŸαŸ’αž‘αžΎαžšαžαŸ‚αž‚αŸ’αž˜αžΆαž“αžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹ αžαžŽαŸˆαž–αŸαž›αžŠαŸ‚αž›αžšαž€αŸ’αžŸαžΆαž”αžΆαž“αž“αžΌαžœαž—αžΆαž–αžŸαŸŠαžΈαžŸαž„αŸ’αžœαžΆαž€αŸ‹αž‚αŸ’αž“αžΆαžαŸ’αž–αžŸαŸ‹ αž“αž·αž„ SLA αžαŸ’αž–αžŸαŸ‹αžŽαžΆαžŸαŸ‹αŸ” αž‘αŸ„αŸ‡αž”αžΈαž‡αžΆαžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαž‘αžΆαŸ†αž„αž“αŸαŸ‡αžŸαŸ’αžαž·αžαž€αŸ’αž“αž»αž„αž€αžΆαž›αŸˆαž‘αŸαžŸαŸˆαžŽαžΆαž€αŸαžŠαŸ„αž™ αž€αžΆαžšαž›αŸ†αž”αžΆαž€αž€αŸ’αž“αž»αž„αž€αžΆαžšαžŸαž˜αŸ’αžšαŸαž…αž”αžΆαž“ αž‚αŸ„αž›αžŠαŸ…αžšαž”αžŸαŸ‹αž™αžΎαž„αž‚αžΊαž˜αž·αž“αž˜αŸ‚αž“αžŠαžΎαž˜αŸ’αž”αžΈαž”αžŠαž·αžŸαŸαž’αž–αž½αž€αž‚αŸαž“αŸ„αŸ‡αž‘αŸαŸ” αž•αŸ’αž‘αž»αž™αž‘αŸ…αžœαž·αž‰ αž…αžΌαžšαž™αžΎαž„αž•αŸ’αžαŸ„αžαž›αžΎαžšαžΏαž„αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαžŠαŸ‚αž›αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž—αžΆαž‚αž…αŸ’αžšαžΎαž“αž™αž€αž…αž·αžαŸ’αžαž‘αž»αž€αžŠαžΆαž€αŸ‹αŸ– αž—αžΆαž–αžŸαŸ’αž˜αžΎαž‚αŸ’αž“αžΆ αž“αž·αž„αž›αž‘αŸ’αž’αž—αžΆαž–αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αŸ”

αž™αžΎαž„αž”αžΆαž“αžœαžΆαž™αžαž˜αŸ’αž›αŸƒ Cloud Spanner αž‡αžΆαž€αžΆαžšαž‡αŸ†αž“αž½αžŸαžŸαž˜αŸ’αžšαžΆαž”αŸ‹ Sharded MySQL

Google Cloud SQL αž“αž·αž„ Amazon AWS RDS αžŠαŸ‚αž›αž‡αžΆ OLTP DBMSs αžŠαŸαž–αŸαž‰αž“αž·αž™αž˜αž”αŸ†αž•αž»αžαž–αžΈαžšαž“αŸ…αž€αŸ’αž“αž»αž„αž‘αžΈαž•αŸ’αžŸαžΆαžšαž–αž–αž€ αž˜αžΆαž“αžŸαŸ†αžŽαž»αŸ†αž›αž€αŸ’αžαžŽαŸˆαž–αž·αžŸαŸαžŸαž…αŸ’αžšαžΎαž“αŸ” αž‘αŸ„αŸ‡αž™αŸ‰αžΆαž„αžŽαžΆαž€αŸαžŠαŸ„αž™ αžŠαžΎαž˜αŸ’αž”αžΈαž’αŸ’αžœαžΎαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž›αžΎαžŸαž–αžΈαž‘αŸ†αž αŸ†αž“αŸƒαžαŸ’αž“αžΆαŸ†αž„αžαŸ‚αž˜αž½αž™ αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž’αž“αž»αžœαžαŸ’αžαž€αžΆαžšαž”αŸ‚αž„αž…αŸ‚αž€αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαŸ” αžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžšαŸ’αžαž“αŸαŸ‡αž”αž„αŸ’αž€αžΎαžαž—αžΆαž–αžŸαŸ’αž˜αž»αž‚αžŸαŸ’αž˜αžΆαž‰αž”αž“αŸ’αžαŸ‚αž˜αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž‘αžΆαŸ†αž„αž€αž˜αŸ’αž˜αžœαž·αž’αžΈ αž“αž·αž„αž€αžΆαžšαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αŸ” αž™αžΎαž„αž”αžΆαž“αž€αŸ’αžšαž‘αŸαž€αž˜αžΎαž›αž–αžΈαžšαž”αŸ€αž”αžŠαŸ‚αž› Spanner αžŸαž˜αž“αžΉαž„αž…αžΌαž›αž‘αŸ…αž€αŸ’αž“αž»αž„αžŸαŸαžŽαžΆαžšαžΈαž™αŸ‰αžΌαž“αŸƒαž€αžΆαžšαž”αž‰αŸ’αž…αžΌαž›αž‚αŸ’αž“αžΆαž“αžΌαžœ shards αž‡αžΆαž…αŸ’αžšαžΎαž“αž…αžΌαž›αž‘αŸ…αž€αŸ’αž“αž»αž„ instance αžαŸ‚αž˜αž½αž™ αž“αž·αž„αž’αŸ’αžœαžΈαžŠαŸ‚αž›αž›αž€αŸ’αžαžŽαŸˆαž–αž·αžŸαŸαžŸ (αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž˜αžΆαž“) αž’αžΆαž…αž“αžΉαž„αžαŸ’αžšαžΌαžœαž›αŸ‡αž”αž„αŸ‹αŸ”

αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžš SQL, DML αž“αž·αž„ DDL αž€αŸαžŠαžΌαž…αž‡αžΆαž§αž”αž€αžšαžŽαŸαž—αŸ’αž‡αžΆαž”αŸ‹ αž“αž·αž„αž”αžŽαŸ’αžŽαžΆαž›αŸαž™?

αž‡αžΆαžŠαŸ†αž”αžΌαž„ αž“αŸ…αž–αŸαž›αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž‡αžΆαž˜αž½αž™αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŽαžΆαž˜αž½αž™ αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž”αž„αŸ’αž€αžΎαžαž‚αŸ†αžšαžΌαž‘αž·αž“αŸ’αž“αž“αŸαž™αŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αž‚αž·αžαžαžΆαž’αŸ’αž“αž€αž’αžΆαž…αž—αŸ’αž‡αžΆαž”αŸ‹ JDBC Spanner αž‘αŸ…αž§αž”αž€αžšαžŽαŸ SQL αžŠαŸ‚αž›αž’αŸ’αž“αž€αž…αžΌαž›αž…αž·αžαŸ’αž αž’αŸ’αž“αž€αž“αžΉαž„αžƒαžΎαž‰αžαžΆαž’αŸ’αž“αž€αž’αžΆαž…αžŸαž½αžšαž‘αž·αž“αŸ’αž“αž“αŸαž™αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž‡αžΆαž˜αž½αž™αžœαžΆαž”αžΆαž“ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž’αŸ’αž“αž€αž˜αž·αž“αž’αžΆαž…αž”αŸ’αžšαžΎαžœαžΆαžŠαžΎαž˜αŸ’αž”αžΈαž”αž„αŸ’αž€αžΎαžαžαžΆαžšαžΆαž„ αž¬αž€αŸ‚αž”αŸ’αžšαŸ‚ (DDL) αž¬αž€αžΆαžšαž”αž‰αŸ’αž…αžΌαž›/αž’αŸ’αžœαžΎαž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž—αžΆαž–/αž›αž»αž”αžŽαžΆαž˜αž½αž™αž‘αžΎαž™αŸ” αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžš (DML) αŸ” JDBC αž•αŸ’αž›αžΌαžœαž€αžΆαžšαžšαž”αžŸαŸ‹ Google αž˜αž·αž“αž‚αžΆαŸ†αž‘αŸ’αžšαž‘αžΆαŸ†αž„αž–αžΈαžšαž“αŸαŸ‡αž‘αŸαŸ”

msgstr "αž€αž˜αŸ’αž˜αžœαž·αž’αžΈβ€‹αž”αž‰αŸ’αž‡αžΆβ€‹αž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“β€‹αž˜αž·αž“β€‹αž‚αžΆαŸ†αž‘αŸ’αžšβ€‹αžŸαŸαž…αž€αŸ’αžαžΈαžαŸ’αž›αŸ‚αž„αž€αžΆαžšαžŽαŸ DML ឬ DDL αŸ”"
αž―αž€αžŸαžΆαžš Spanner

αžŸαŸ’αžαžΆαž“αž—αžΆαž–αž˜αž·αž“αž”αŸ’αžšαžŸαžΎαžšαž‡αžΆαž„αž‡αžΆαž˜αž½αž™αž€αž»αž„αžŸαžΌαž› GCP αž‘αŸ - αž’αŸ’αž“αž€αž’αžΆαž…αž•αŸ’αž‰αžΎαž”αžΆαž“αžαŸ‚αžŸαŸ†αžŽαž½αžš SELECT αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αŸ” αžŸαŸ†αžŽαžΆαž„αž›αŸ’αž’αž˜αžΆαž“αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž”αž‰αŸ’αž‡αžΆ JDBC αžŠαŸ‚αž›αž˜αžΆαž“αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹ DML αž“αž·αž„ DDL αž–αžΈαžŸαž αž‚αž˜αž“αŸ αžšαž½αž˜αž‘αžΆαŸ†αž„αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž•αž„αžŠαŸ‚αžšαŸ” github.com/olavloite/spanner-jdbc. αžαžŽαŸˆβ€‹αž–αŸαž›β€‹αžŠαŸ‚αž›β€‹αž€αž˜αŸ’αž˜αžœαž·αž’αžΈβ€‹αž”αž‰αŸ’αž‡αžΆβ€‹αž“αŸαŸ‡β€‹αž˜αžΆαž“β€‹αž”αŸ’αžšαž™αŸ„αž‡αž“αŸβ€‹αžαŸ’αž›αžΆαŸ†αž„ αž€αž„αŸ’αžœαŸ‡β€‹αž€αž˜αŸ’αž˜αžœαž·αž’αžΈβ€‹αž”αž‰αŸ’αž‡αžΆ JDBC αž•αŸ’αž‘αžΆαž›αŸ‹β€‹αžšαž”αžŸαŸ‹ Google αž‚αžΊβ€‹αž‚αž½αžšβ€‹αž±αŸ’αž™β€‹αž—αŸ’αž‰αžΆαž€αŸ‹β€‹αž•αŸ’αž’αžΎαž›αŸ” αž‡αžΆαžŸαŸ†αžŽαžΆαž„αž›αŸ’αž’ Google αž•αŸ’αžαž›αŸ‹αž“αžΌαžœαž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαž™αŸ‰αžΆαž„αž‘αžΌαž›αŸ†αž‘αžΌαž›αžΆαž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αžŽαŸ’αžŽαžΆαž›αŸαž™αž’αžαž·αžαž·αž‡αž“ (αž•αŸ’αž’αŸ‚αž€αž›αžΎ gRPC): C#, Go, Java, node.js, PHP, Python αž“αž·αž„ Ruby αŸ”

αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžŸαŸ’αž‘αžΎαžšαžαŸ‚αž…αžΆαŸ†αž”αžΆαž…αŸ‹αž“αŸƒ APIs αž•αŸ’αž‘αžΆαž›αŸ‹αžαŸ’αž›αž½αž“αžšαž”αžŸαŸ‹ Cloud Spanner (αžŠαŸ„αž™αžŸαžΆαžšαžαŸ‚αž€αž„αŸ’αžœαŸ‡ DDL αž“αž·αž„ DML αž“αŸ…αž€αŸ’αž“αž»αž„ JDBC) αž”αžŽαŸ’αžαžΆαž›αž±αŸ’αž™αž˜αžΆαž“αžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹αž˜αž½αž™αž…αŸ†αž“αž½αž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž•αŸ’αž“αŸ‚αž€αž€αžΌαžŠαžŠαŸ‚αž›αž–αžΆαž€αŸ‹αž–αŸαž“αŸ’αž’αžŠαžΌαž…αž‡αžΆ αž”αžŽαŸ’αžαž»αŸ†αž€αžΆαžšαžαž—αŸ’αž‡αžΆαž”αŸ‹ αž¬αž€αŸ’αžšαž”αžαŸαžŽαŸ’αžŒαž…αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ (ឧ. Spring MVC) αŸ” αž‡αžΆαž’αž˜αŸ’αž˜αžαžΆ αž“αŸ…αž–αŸαž›αž”αŸ’αžšαžΎ JDBC αž’αŸ’αž“αž€αž˜αžΆαž“αžŸαŸαžšαžΈαž—αžΆαž–αž€αŸ’αž“αž»αž„αž€αžΆαžšαž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž€αŸ’αžšαž»αž˜αžαž—αŸ’αž‡αžΆαž”αŸ‹αžŠαŸ‚αž›αž’αŸ’αž“αž€αž…αžΌαž›αž…αž·αžαŸ’αž (ឧ. HikariCP, DBCP, C3PO αŸ”αž›αŸ”) αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαžΆαž€αž›αŸ’αž”αž„ αž“αž·αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž›αŸ’αž’αŸ” αž€αŸ’αž“αž»αž„αž€αžšαžŽαžΈ Spanner APIs αž•αŸ’αž‘αžΆαž›αŸ‹αžαŸ’αž›αž½αž“ αž™αžΎαž„αžαŸ’αžšαžΌαžœαž–αžΉαž„αž•αŸ’αž’αŸ‚αž€αž›αžΎ frameworks/binding pools/sessions αžŠαŸ‚αž›αž™αžΎαž„αž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαžαŸ’αž›αž½αž“αž―αž„αŸ”

αž€αžΆαžšαžšαž…αž“αžΆαžŸαŸ’αž“αžΌαž›αžŸαŸ†αžαžΆαž“αŸ‹ (PC) αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™ Cloud Spanner αž˜αžΆαž“αž›αŸ’αž”αžΏαž“αž›αžΏαž“αž“αŸ…αž–αŸαž›αž…αžΌαž›αž”αŸ’αžšαžΎαž‘αž·αž“αŸ’αž“αž“αŸαž™αžαžΆαž˜αžšαž™αŸˆαž€αž»αŸ†αž–αŸ’αž™αžΌαž‘αŸαžš αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž€αŸαžŽαŸ‚αž“αžΆαŸ†αž”αž‰αŸ’αž αžΆαžŸαŸ†αžŽαž½αžšαž˜αž½αž™αž…αŸ†αž“αž½αž“αž•αž„αžŠαŸ‚αžšαŸ”

  • αž’αŸ’αž“αž€αž˜αž·αž“αž’αžΆαž…αž’αŸ’αžœαžΎαž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž—αžΆαž–αžαž˜αŸ’αž›αŸƒαžŸαŸ„αž…αž˜αŸ’αž”αž„αž”αžΆαž“αž‘αŸαŸ” αžŠαŸ†αž”αžΌαž„αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαžαŸ‚αž›αž»αž”αž’αžΆαžαž»αž…αŸαž‰αž–αžΈαž€αž»αŸ†αž–αŸ’αž™αžΌαž‘αŸαžšαžŠαžΎαž˜ αž αžΎαž™αž”αž‰αŸ’αž…αžΌαž›αžœαžΆαž‘αžΎαž„αžœαž·αž‰αž‡αžΆαž˜αž½αž™αž“αžΉαž„αžαž˜αŸ’αž›αŸƒαžαŸ’αž˜αžΈαŸ” (αžœαžΆβ€‹αžŸαŸ’αžšαžŠαŸ€αž„β€‹αž‘αŸ…β€‹αž“αžΉαž„β€‹αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“β€‹αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“β€‹αž‘αž·αž“αŸ’αž“αž“αŸαž™/αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“β€‹αž•αŸ’αž‘αž»αž€β€‹αžŠαŸ‚αž›β€‹αžαž˜αŸ’αžšαž„αŸ‹β€‹αž‘αž·αžŸβ€‹αž€αž»αŸ†αž–αŸ’αž™αžΌαž‘αŸαžšβ€‹αž•αŸ’αžŸαŸαž„β€‹αž‘αŸ€αžβ€‹αŸ” )
  • αžšαžΆαž›αŸ‹ UPDATE αž“αž·αž„ DELETE statements αžαŸ’αžšαžΌαžœαžαŸ‚αž”αž‰αŸ’αž‡αžΆαž€αŸ‹ PC αž“αŸ…αž€αŸ’αž“αž»αž„ WHERE αžŠαžΌαž…αŸ’αž“αŸαŸ‡αžœαžΆαž˜αž·αž“αž’αžΆαž…αž‘αž‘αŸαž”αžΆαž“αž‘αŸ DELETE all statements - αžœαžΆαžαŸ’αžšαžΌαžœαžαŸ‚αž˜αžΆαž“ subquery αž‡αžΆαž“αž·αž…αŸ’αž… αž§αž‘αžΆαž αžšαžŽαŸαŸ– UPDATE xxx WHERE id IN (SELECT id αž–αžΈ table1)
  • αž€αž„αŸ’αžœαŸ‡αž‡αž˜αŸ’αžšαžΎαžŸαž”αž„αŸ’αž€αžΎαž“αžŠαŸ„αž™αžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž· αž¬αž’αŸ’αžœαžΈαžŸαŸ’αžšαžŠαŸ€αž„αž‚αŸ’αž“αžΆαžŠαŸ‚αž›αž€αŸ†αžŽαžαŸ‹αž›αŸ†αžŠαžΆαž”αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžœαžΆαž›αž€αž»αŸ†αž–αŸ’αž™αžΌαž‘αŸαžšαŸ” αžŠαžΎαž˜αŸ’αž”αžΈαž±αŸ’αž™αžœαžΆαžŠαŸ†αžŽαžΎαžšαž€αžΆαžš αžαž˜αŸ’αž›αŸƒαžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž‚αŸ’αž“αžΆαžαŸ’αžšαžΌαžœαžαŸ‚αž”αž„αŸ’αž€αžΎαžαž“αŸ…αž•αŸ’αž“αŸ‚αž€αžαžΆαž„αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαŸ”

αžŸαž“αŸ’αž‘αžŸαŸ’αžŸαž“αŸαž”αž“αŸ’αž‘αžΆαž”αŸ‹αž”αž“αŸ’αžŸαŸ†?

Google Cloud Spanner αž˜αžΆαž“αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαžŠαŸ‚αž›αž—αŸ’αž‡αžΆαž”αŸ‹αž˜αž€αž‡αžΆαž˜αž½αž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŸαž“αŸ’αž‘αžŸαŸ’αžŸαž“αŸαž”αž“αŸ’αž‘αžΆαž”αŸ‹αž”αž“αŸ’αžŸαŸ†αŸ” αž“αŸαŸ‡β€‹αž‚αžΊβ€‹αž‡αžΆβ€‹αž˜αž»αžαž„αžΆαžšβ€‹αžŠαŸβ€‹αž›αŸ’αž’β€‹αž˜αž½αž™β€‹αžŠαŸ‚αž›β€‹αž˜αž·αž“β€‹αžαŸ‚αž„αžαŸ‚β€‹αž˜αžΆαž“β€‹αž“αŸ…β€‹αž€αŸ’αž“αž»αž„β€‹αž”αž…αŸ’αž…αŸαž€αžœαž·αž‘αŸ’αž™αžΆβ€‹αž•αŸ’αžŸαŸαž„β€‹αž‘αŸ€αžβ€‹αž‘αŸαŸ” αž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“ Apache Kudu αž˜αž·αž“αž‚αžΆαŸ†αž‘αŸ’αžšαž›αž·αž”αž·αž€αŸ’αžšαž˜αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž”αž“αŸ’αžŸαŸ†αž‘αžΆαž›αŸ‹αžαŸ‚αžŸαŸ„αŸ‡ αž αžΎαž™ Apache HBase αž˜αž·αž“αž‚αžΆαŸ†αž‘αŸ’αžšαž›αž·αž”αž·αž€αŸ’αžšαž˜αžŠαŸ„αž™αž•αŸ’αž‘αžΆαž›αŸ‹αž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž’αžΆαž…αž”αž“αŸ’αžαŸ‚αž˜αž–αž½αž€αžœαžΆαžαžΆαž˜αžšαž™αŸˆ Apache Phoenix αŸ”

αž›αž·αž”αž·αž€αŸ’αžšαž˜αž“αŸ…αž€αŸ’αž“αž»αž„ Kudu αž“αž·αž„ HBase αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž™αž€αž‚αŸ†αžšαžΌαžαžΆαž˜αžαžΆαžšαžΆαž„αžŠαžΆαž…αŸ‹αžŠαŸ„αž™αž‘αŸ‚αž€αž˜αž½αž™αžŠαŸ‚αž›αž˜αžΆαž“αžŸαž˜αžΆαžŸαž—αžΆαž–αž•αŸ’αžŸαŸαž„αž‚αŸ’αž“αžΆαž“αŸƒαžŸαŸ„αž…αž˜αŸ’αž”αž„ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž’αžΆαžαžΌαž˜αž·αž€αž“αŸƒαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαžŠαŸ‚αž›αž”αžΆαž“αž’αž“αž»αžœαžαŸ’αžαž“αŸ…αž›αžΎαžαžΆαžšαžΆαž„αž˜αŸ αž“αž·αž„αžαžΆαžšαžΆαž„αž›αž·αž”αž·αž€αŸ’αžšαž˜αžŠαŸ‚αž›αž–αžΆαž€αŸ‹αž–αŸαž“αŸ’αž’αžαŸ’αžšαžΌαžœαžαŸ‚αž’αŸ’αžœαžΎαž‘αžΎαž„αž“αŸ…αž€αž˜αŸ’αžšαž·αžαž€αž˜αŸ’αž˜αžœαž·αž’αžΈ αž αžΎαž™αž˜αž·αž“αžŸαŸ†αžαžΆαž“αŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœαŸ”

αžŠαžΌαž…αžŠαŸ‚αž›αž”αžΆαž“αžšαŸ€αž”αžšαžΆαž”αŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαž–αž·αž“αž·αžαŸ’αž™αž‘αžΎαž„αžœαž·αž‰ Cloud Spanner αžŸαž“αŸ’αž‘αžŸαŸ’αžŸαž“αŸαžšαž”αžŸαŸ‹αžœαžΆαž’αžΆαž…αžαž»αžŸαž–αžΈαžŸαž“αŸ’αž‘αžŸαŸ’αžŸαž“αŸ MySQL αŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡ αž€αžΆαžšαž™αž€αž…αž·αžαŸ’αžαž‘αž»αž€αžŠαžΆαž€αŸ‹αž–αž·αžŸαŸαžŸαž‚αž½αžšαžαŸ‚αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‚αŸαž™αž€αž“αŸ…αž–αŸαž›αž”αž„αŸ’αž€αžΎαžαžŸαŸ†αžŽαž½αžš αž“αž·αž„αž‘αž˜αŸ’αžšαž„αŸ‹αžŠαžΎαž˜αŸ’αž”αžΈαž’αžΆαž“αžΆαžαžΆαžŸαž“αŸ’αž‘αžŸαŸ’αžŸαž“αŸαžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœαžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžΎαž“αŸ…αž€αž“αŸ’αž›αŸ‚αž„αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž€αžΆαžšαŸ”

αžαŸ†αžŽαžΆαž„?

αžœαžαŸ’αžαž»αžŠαŸαž–αŸαž‰αž“αž·αž™αž˜ αž“αž·αž„αž˜αžΆαž“αž”αŸ’αžšαž™αŸ„αž‡αž“αŸαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‚αžΊαž‘αž·αžŠαŸ’αž‹αž—αžΆαž–αŸ” αž–αž½αž€αž‚αŸαž’αžΆαž…αž˜αžΆαž“αž”αŸ’αžšαž™αŸ„αž‡αž“αŸαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžšαžŽαžΈαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž˜αž½αž™αž…αŸ†αž“αž½αž“αž’αŸ†; αž…αŸ†αžŽαžΌαž›αž…αž·αžαŸ’αžαž–αžΈαžšαžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ†αž‚αžΊαžŸαŸ’αžšαž‘αžΆαž”αŸ‹αž’αžšαžΌαž”αžΈαžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆ αž“αž·αž„αžŸαŸ’αžšαž‘αžΆαž”αŸ‹αžŸαž»αžœαžαŸ’αžαž·αž—αžΆαž–αŸ” αž‡αžΆαž’αž€αž»αžŸαž› Cloud Spanner αž˜αž·αž“αž‚αžΆαŸ†αž‘αŸ’αžšαž€αžΆαžšαž˜αžΎαž›αž‘αŸαŸ” αž‘αŸ„αŸ‡αž‡αžΆαž™αŸ‰αžΆαž„αžŽαžΆαž€αŸαžŠαŸ„αž™ αž“αŸαŸ‡αž€αŸ†αžŽαžαŸ‹αž™αžΎαž„αžαŸ‚αž•αŸ’αž“αŸ‚αž€αžαŸ’αž›αŸ‡αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡ αž–αžΈαž–αŸ’αžšαŸ„αŸ‡αž˜αž·αž“αž˜αžΆαž“αž–αŸαžαŸŒαž˜αžΆαž“αž›αž˜αŸ’αž’αž·αžαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž’αž“αž»αž‰αŸ’αž‰αžΆαžαž…αžΌαž›αž”αŸ’αžšαžΎαž“αŸ…αž€αž˜αŸ’αžšαž·αžαž‡αž½αžšαžˆαžš αžŠαŸ‚αž›αž€αžΆαžšαž˜αžΎαž›αž’αžΆαž…αž‡αžΆαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αžŠαŸ‚αž›αž’αžΆαž…αžŸαž˜αŸ’αžšαŸαž…αž”αžΆαž“αŸ”

αžŸαžΌαž˜αž˜αžΎαž›αž―αž€αžŸαžΆαžš Cloud Spanner αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž•αŸ’αž“αŸ‚αž€αžŠαŸ‚αž›αž›αž˜αŸ’αž’αž·αžαž’αŸ†αž–αžΈαž€αžΌαžαžΆ αž“αž·αž„αž€αžΆαžšαžšαžΉαžαž”αž“αŸ’αžαžΉαž„ (spanner / αž€αžΌαžαžΆ) αž˜αžΆαž“αž›αž€αŸ’αžαžŽαŸˆαž–αž·αžŸαŸαžŸαž˜αž½αž™αžŠαŸ‚αž›αž’αžΆαž…αž˜αžΆαž“αž”αž‰αŸ’αž αžΆαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž˜αž½αž™αž…αŸ†αž“αž½αž“αŸ– Cloud Spanner αž…αŸαž‰αž–αžΈαž”αŸ’αžšαž’αž”αŸ‹αž˜αžΆαž“αžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹αž’αžαž·αž”αžšαž˜αžΆ 100 αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž€αŸ’αž“αž»αž„αž˜αž½αž™αž§αž‘αžΆαž αžšαžŽαŸαŸ” αž‡αžΆαž€αŸ‹αžŸαŸ’αžαŸ‚αž„ αž“αŸαŸ‡αž’αžΆαž…αž‡αžΆαž§αž”αžŸαž‚αŸ’αž‚αžŠαŸαžŸαŸ†αžαžΆαž“αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαž…αž“αžΆαž‘αžΎαž„αžŠαžΎαž˜αŸ’αž”αžΈαž’αŸ’αžœαžΎαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“αžŠαž›αŸ‹αž‡αžΆαž„ 100 αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αŸ” αž‡αžΆαžŸαŸ†αžŽαžΆαž„αž›αŸ’αž’ αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž”αžΆαž“αž“αž·αž™αžΆαž™αž‡αžΆαž˜αž½αž™αž’αŸ’αž“αž€αžαŸ†αžŽαžΆαž„αž”αž…αŸ’αž…αŸαž€αž‘αŸαžŸ Google αžšαž”αžŸαŸ‹αž™αžΎαž„ αž™αžΎαž„αž”αžΆαž“αžšαž€αžƒαžΎαž‰αžαžΆαžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹αž“αŸαŸ‡αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž€αžΎαž“αž‘αžΎαž„αžŠαž›αŸ‹αžŸαŸ’αž‘αžΎαžšαžαŸ‚αž‚αŸ’αžšαž”αŸ‹αžαž˜αŸ’αž›αŸƒαžαžΆαž˜αžšαž™αŸˆ Google SupportαŸ”

αž‚αžΆαŸ†αž‘αŸ’αžšαž€αžΆαžšαž’αž—αž·αžœαžŒαŸ’αžαž“αŸ?

Cloud Spanner αž•αŸ’αžαž›αŸ‹αž“αžΌαžœαž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαž—αžΆαžŸαžΆαžŸαžšαžŸαŸαžšαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžŸαž˜αžšαž˜αŸ’αž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™ API αžšαž”αžŸαŸ‹αžœαžΆαŸ” αž”αžŽαŸ’αžŽαžΆαž›αŸαž™αžŠαŸ‚αž›αž‚αžΆαŸ†αž‘αŸ’αžšαž‡αžΆαž•αŸ’αž›αžΌαžœαž€αžΆαžšαž‚αžΊαžŸαŸ’αžαž·αžαž“αŸ…αž€αŸ’αž“αž»αž„αž•αŸ’αž“αŸ‚αž€αž“αŸƒ C#, Go, Java, node.js, PHP, Python αž“αž·αž„ Ruby αŸ” αž―αž€αžŸαžΆαžšαž“αŸαŸ‡αž‚αžΊαž›αž˜αŸ’αž’αž·αžαžŽαžΆαžŸαŸ‹ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžŠαžΌαž…αž‘αŸ…αž“αžΉαž„αž”αž…αŸ’αž…αŸαž€αžœαž·αž‘αŸ’αž™αžΆαž‘αŸ†αž“αžΎαž”αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαžŠαŸ‚αžš αžŸαž αž‚αž˜αž“αŸαž‚αžΊαžαžΌαž…αžŽαžΆαžŸαŸ‹αž”αžΎαž”αŸ’αžšαŸ€αž”αž’αŸ€αž”αž‘αŸ…αž“αžΉαž„αž”αž…αŸ’αž…αŸαž€αžœαž·αž‘αŸ’αž™αžΆαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŠαŸαž–αŸαž‰αž“αž·αž™αž˜αž”αŸ†αž•αž»αž αžŠαŸ‚αž›αž’αžΆαž…αž“αžΆαŸ†αž±αŸ’αž™αž…αŸ†αžŽαžΆαž™αž–αŸαž›αžœαŸαž›αžΆαž…αŸ’αžšαžΎαž“αž€αŸ’αž“αž»αž„αž€αžΆαžšαžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αž‰αŸ’αž αžΆ αž¬αž”αž‰αŸ’αž αžΆαž“αŸƒαž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž’αž˜αŸ’αž˜αžαžΆαŸ”

αž…αž»αŸ‡β€‹αž…αŸ†αžŽαŸ‚αž€β€‹αž€αžΆαžšβ€‹αž‚αžΆαŸ†αž‘αŸ’αžšβ€‹αžŠαž›αŸ‹β€‹αž€αžΆαžšβ€‹αž’αž—αž·αžœαžŒαŸ’αžβ€‹αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“β€‹αžœαž·αž‰?

αž™αžΎαž„β€‹αž˜αž·αž“β€‹αž”αžΆαž“β€‹αžšαž€β€‹αžƒαžΎαž‰β€‹αžœαž·αž’αžΈβ€‹αž€αŸ’αž“αž»αž„β€‹αž€αžΆαžšβ€‹αž”αž„αŸ’αž€αžΎαž Cloud Spanner instance αž“αŸ…β€‹αž€αŸ’αž“αž»αž„β€‹αž”αžšαž·αžœαŸαžŽβ€‹αž“αŸ„αŸ‡β€‹αž‘αŸαŸ” αž’αŸ’αžœαžΈαžŠαŸ‚αž›αž‡αž·αžαž”αŸ†αž•αž»αžαžŠαŸ‚αž›αž™αžΎαž„αž‘αž‘αž½αž›αž”αžΆαž“αž‚αžΊαžšαžΌαž”αž—αžΆαž– Docker αŸ” αž€αž“αŸ’αž›αžΆαžDBαžŠαŸ‚αž›αž˜αžΆαž“αž›αž€αŸ’αžαžŽαŸˆαžŸαŸ’αžšαžŠαŸ€αž„αž‚αŸ’αž“αžΆαž€αŸ’αž“αž»αž„αž‚αŸ„αž›αž€αžΆαžšαžŽαŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžαž»αžŸαž‚αŸ’αž“αžΆαžαŸ’αž›αžΆαŸ†αž„αž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαŸ” αž§αž‘αžΆαž αžšαžŽαŸ CockroachDB αž’αžΆαž…αž”αŸ’αžšαžΎ PostgreSQL JDBC αŸ” αžŠαŸ„αž™αžŸαžΆαžšαž”αžšαž·αž™αžΆαž€αžΆαžŸαž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž‚αž½αžšαžαŸ‚αž“αŸ…αž‡αž·αžαž”αžšαž·αž™αžΆαž€αžΆαžŸαž•αž›αž·αžαž€αž˜αŸ’αž˜αžαžΆαž˜αžŠαŸ‚αž›αž’αžΆαž…αž’αŸ’αžœαžΎαž‘αŸ…αž”αžΆαž“ Cloud Spanner αž‚αžΊαž˜αž·αž“αžŸαž˜αžŸαŸ’αžšαž”αž‘αŸαž–αŸ’αžšαŸ„αŸ‡αžœαžΆαžαŸ’αžšαžΌαžœαžαŸ‚αž–αžΉαž„αž•αŸ’αž’αŸ‚αž€αž›αžΎαž§αž‘αžΆαž αžšαžŽαŸ Spanner αž–αŸαž‰αž›αŸαž‰αŸ” αžŠαžΎαž˜αŸ’αž”αžΈαžŸαž“αŸ’αžŸαŸ†αž€αžΆαžšαž…αŸ†αžŽαžΆαž™ αž’αŸ’αž“αž€αž’αžΆαž…αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž§αž‘αžΆαž αžšαžŽαŸαžαŸ†αž”αž“αŸ‹αžαŸ‚αž˜αž½αž™αŸ”

αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαž•αŸ’αž“αŸ‚αž€αžšαžŠαŸ’αž‹αž”αžΆαž›?

αž€αžΆαžšαž”αž„αŸ’αž€αžΎαžαž§αž‘αžΆαž αžšαžŽαŸ Cloud Spanner αž‚αžΊαžŸαžΆαž˜αž‰αŸ’αž‰αžŽαžΆαžŸαŸ‹αŸ” αž’αŸ’αž“αž€αž‚αŸ’αžšαžΆαž“αŸ‹αžαŸ‚αžαŸ’αžšαžΌαžœαž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαžšαžœαžΆαž„αž€αžΆαžšαž”αž„αŸ’αž€αžΎαžαž–αž αž»αžαŸ†αž”αž“αŸ‹ αž¬αž§αž‘αžΆαž αžšαžŽαŸαžαŸ†αž”αž“αŸ‹αžαŸ‚αž˜αž½αž™ αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αžαŸ†αž”αž“αŸ‹ αž“αž·αž„αž…αŸ†αž“αž½αž“αžαŸ’αž“αžΆαŸ†αž„αŸ” αž€αŸ’αž“αž»αž„αžšαž™αŸˆαž–αŸαž›αžαž·αž…αž‡αžΆαž„αž˜αž½αž™αž“αžΆαž‘αžΈ αž‚αŸ†αžšαžΌαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž“αžΉαž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαŸ”

αžšαž„αŸ’αžœαžΆαžŸαŸ‹αž‡αžΆαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‡αžΆαž…αŸ’αžšαžΎαž“αž’αžΆαž…αž…αžΌαž›αž”αŸ’αžšαžΎαžŠαŸ„αž™αž•αŸ’αž‘αžΆαž›αŸ‹αž–αžΈαž‘αŸ†αž–αŸαžš Spanner αž“αŸ…αž€αŸ’αž“αž»αž„ Google Console αŸ” αž‘αž·αžŠαŸ’αž‹αž—αžΆαž–αž›αž˜αŸ’αž’αž·αžαž”αž“αŸ’αžαŸ‚αž˜αž‘αŸ€αžαž’αžΆαž…αžšαž€αž”αžΆαž“αžαžΆαž˜αžšαž™αŸˆ Stackdriver αžŠαŸ‚αž›αž’αŸ’αž“αž€αž€αŸαž’αžΆαž…αž€αŸ†αžŽαžαŸ‹αž€αž˜αŸ’αžšαž·αžαž˜αŸ‰αŸ‚αžαŸ’αžš αž“αž·αž„αž‚αŸ„αž›αž€αžΆαžšαžŽαŸαž‡αžΌαž“αžŠαŸ†αžŽαžΉαž„αž•αž„αžŠαŸ‚αžšαŸ”

αž…αžΌαž›αž”αŸ’αžšαžΎαž’αž“αž’αžΆαž“?

MySQL αž•αŸ’αžαž›αŸ‹αž“αžΌαžœαž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αž™αŸ‰αžΆαž„αž‘αžΌαž›αŸ†αž‘αžΌαž›αžΆαž™ αž“αž·αž„αž›αž˜αŸ’αž’αž·αžαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž’αž“αž»αž‰αŸ’αž‰αžΆαž/αžαž½αž“αžΆαž‘αžΈαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αŸ” αž’αŸ’αž“αž€β€‹αž’αžΆαž…β€‹αž€αŸ†αžŽαžαŸ‹β€‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’β€‹αž…αžΌαž›β€‹αž”αŸ’αžšαžΎβ€‹αžαžΆαžšαžΆαž„β€‹αž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹β€‹αž”αžΆαž“β€‹αž™αŸ‰αžΆαž„β€‹αž„αžΆαž™β€‹αžŸαŸ’αžšαž½αž› αž¬β€‹αžŸαžΌαž˜αŸ’αž”αžΈβ€‹αžαŸ‚β€‹αžŸαŸ†αžŽαž»αŸ†β€‹αžšαž„β€‹αž“αŸƒβ€‹αž‡αž½αžšβ€‹αžˆαžšβ€‹αžšαž”αžŸαŸ‹β€‹αžœαžΆβ€‹αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αŸ” Cloud Spanner αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž§αž”αž€αžšαžŽαŸ Identity & Access Management (IAM) αžšαž”αžŸαŸ‹ Google αžŠαŸ‚αž›αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž’αŸ’αž“αž€αž€αŸ†αžŽαžαŸ‹αž‚αŸ„αž›αž€αžΆαžšαžŽαŸ αž“αž·αž„αž€αžΆαžšαž’αž“αž»αž‰αŸ’αž‰αžΆαžαž€αŸ’αž“αž»αž„αž€αž˜αŸ’αžšαž·αžαžαŸ’αž–αžŸαŸ‹αž”αŸ†αž•αž»αžαŸ” αž‡αž˜αŸ’αžšαžΎαžŸαž›αž˜αŸ’αž’αž·αžαž”αŸ†αž•αž»αžαž‚αžΊαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž€αž˜αŸ’αžšαž·αžαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ αžŠαŸ‚αž›αž˜αž·αž“αžŸαž˜αž“αžΉαž„αž€αžšαžŽαžΈαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž•αž›αž·αžαž€αž˜αŸ’αž˜αž—αžΆαž‚αž…αŸ’αžšαžΎαž“αŸ” αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αž“αŸαŸ‡αž”αž„αŸ’αžαŸ†αž’αŸ’αž“αž€αž±αŸ’αž™αž”αž“αŸ’αžαŸ‚αž˜αžœαž·αž’αžΆαž“αž€αžΆαžšαžŸαž»αžœαžαŸ’αžαž·αž—αžΆαž–αž”αž“αŸ’αžαŸ‚αž˜αž‘αŸ…αž€αŸ’αž“αž»αž„αž€αžΌαžŠ αž αŸαžŠαŸ’αž‹αžΆαžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’ αž¬αž‘αžΆαŸ†αž„αž–αžΈαžšαžŠαžΎαž˜αŸ’αž”αžΈαž€αžΆαžšαž–αžΆαžšαž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž’αž“αž’αžΆαž“ Spanner αžŠαŸ„αž™αž‚αŸ’αž˜αžΆαž“αž€αžΆαžšαž’αž“αž»αž‰αŸ’αž‰αžΆαžαŸ”

αž”αž˜αŸ’αžšαž»αž„αž‘αž»αž€?

αžŠαžΎαž˜αŸ’αž”αžΈαž“αž·αž™αžΆαž™αž±αŸ’αž™αžŸαžΆαž˜αž‰αŸ’αž‰ αžœαžΆαž˜αž·αž“αž˜αžΆαž“αž€αžΆαžšαž”αž˜αŸ’αžšαž»αž„αž‘αž»αž€αž“αŸ…αž€αŸ’αž“αž»αž„ Cloud Spanner αž‘αŸαŸ” αž‘αŸ„αŸ‡αž”αžΈαž‡αžΆαžαž˜αŸ’αžšαžΌαžœαž€αžΆαžš SLA αžαŸ’αž–αžŸαŸ‹αžšαž”αžŸαŸ‹ Google αž’αžΆαž…αž’αžΆαž“αžΆαžαžΆαž’αŸ’αž“αž€αž˜αž·αž“αž”αžΆαžαŸ‹αž”αž„αŸ‹αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŽαžΆαž˜αž½αž™αžŠαŸ„αž™αžŸαžΆαžšαžαŸ‚αž€αžΆαžšαž”αžšαžΆαž‡αŸαž™αž•αŸ’αž“αŸ‚αž€αžšαžΉαž„ αž¬αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ αž€αŸ†αž αž»αžŸαžšαž”αžŸαŸ‹αž˜αž“αž»αžŸαŸ’αžŸ αž–αž·αž€αžΆαžšαž—αžΆαž–αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαŸ” αž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž“αŸαŸ‡ αž˜αž’αŸ’αž™αŸ„αž”αžΆαž™αžαŸ‚αž˜αž½αž™αž‚αžαŸ‹αžŠαžΎαž˜αŸ’αž”αžΈαž”αž˜αŸ’αžšαž»αž„αž‘αž»αž€αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‚αžΊαž€αžΆαžšαž•αŸ’αžŸαžΆαž™αžαžΆαž˜αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž–αžΈαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‘αŸ…αž€αžΆαž“αŸ‹αž”αžšαž·αž™αžΆαž€αžΆαžŸαž•αŸ’αž‘αž»αž€αžŠαžΆαž…αŸ‹αžŠαŸ„αž™αž‘αŸ‚αž€αŸ”

αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŸαŸ†αžŽαž½αžš?

αž™αžΎαž„αž”αžΆαž“αž”αŸ’αžšαžΎ Yahoo! αžŠαžΎαž˜αŸ’αž”αžΈαž•αŸ’αž‘αž»αž€αž‘αž·αž“αŸ’αž“αž“αŸαž™ αž“αž·αž„αžŸαŸ†αžŽαž½αžšαžŸαžΆαž€αž›αŸ’αž”αž„αŸ” Cloud Serving BenchmarkαŸ” αžαžΆαžšαžΆαž„αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αž”αž„αŸ’αž αžΆαž‰αž–αžΈαž”αž“αŸ’αž‘αž»αž€αž€αžΆαžšαž„αžΆαžš YCSB B αž‡αžΆαž˜αž½αž™αž“αžΉαž„αžŸαž˜αžΆαž˜αžΆαžαŸ’αžšαžŸαžšαžŸαŸαžš 95% αž‘αŸ… 5% αŸ”

Google Cloud SpannerαŸ– αž›αŸ’αž’ αž’αžΆαž€αŸ’αžšαž€αŸ‹ αž“αž·αž„αž’αžΆαž€αŸ’αžšαž€αŸ‹

* αž€αžΆαžšαž’αŸ’αžœαžΎαžαŸαžŸαŸ’αžαž•αŸ’αž‘αž»αž€αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž“αŸ…αž›αžΎ n1-standard-32 Compute Engine (CE) (32 vCPU, 120 GB memory) αž αžΎαž™αž€αžΆαžšαžŸαžΆαž€αž›αŸ’αž”αž„αž“αŸαŸ‡αž˜αž·αž“αžŠαŸ‚αž›αž˜αžΆαž“αž”αž‰αŸ’αž αžΆαž€αŸ’αž“αž»αž„αž€αžΆαžšαžŸαžΆαž€αž›αŸ’αž”αž„αž“αŸ„αŸ‡αž‘αŸαŸ”
** αž…αŸ†αž“αž½αž“αž’αžαž·αž”αžšαž·αž˜αžΆαž“αŸƒαžαŸ’αžŸαŸ‚αžŸαŸ’αžšαž‘αžΆαž™αž€αŸ’αž“αž»αž„αž§αž‘αžΆαž αžšαžŽαŸ YCSB αžαŸ‚αž˜αž½αž™αž‚αžΊ 400αŸ” αž€αžΆαžšαž’αŸ’αžœαžΎαžαŸαžŸαŸ’αž YCSB αžŸαžšαž»αž”αž…αŸ†αž“αž½αž“αž”αŸ’αžšαžΆαŸ†αž˜αž½αž™αžαŸ’αžšαžΌαžœαžαŸ‚αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαžΎαž˜αŸ’αž”αžΈαž‘αž‘αž½αž›αž”αžΆαž“αžŸαžšαž»αž”αž…αŸ†αž“αž½αž“ 2400 αžαŸ’αžŸαŸ‚αžŸαŸ’αžšαž‘αžΆαž™αŸ”

αž€αŸ’αžšαž‘αŸαž€αž˜αžΎαž›αž›αž‘αŸ’αž’αž•αž›αž‚αŸ„αž› αž‡αžΆαž–αž·αžŸαŸαžŸαž€αžΆαžšαžšαž½αž˜αž•αŸ’αžŸαŸ†αž“αŸƒαž€αžΆαžšαž•αŸ’αž‘αž»αž€ CPU αž“αž·αž„ TPS αž™αžΎαž„αž’αžΆαž…αž˜αžΎαž›αžƒαžΎαž‰αž™αŸ‰αžΆαž„αž…αŸ’αž”αžΆαžŸαŸ‹αžαžΆ Cloud Spanner αž’αŸ’αžœαžΎαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“αž”αžΆαž“αž™αŸ‰αžΆαž„αž›αŸ’αž’αŸ” αž”αž“αŸ’αž‘αž»αž€αž’αŸ’αž„αž“αŸ‹αžŠαŸ‚αž›αž”αž„αŸ’αž€αžΎαžαž‘αžΎαž„αžŠαŸ„αž™αž…αŸ†αž“αž½αž“αžŠαŸαž…αŸ’αžšαžΎαž“αž“αŸƒαžαŸ’αžŸαŸ‚αžŸαŸ’αžšαž‘αžΆαž™αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‘αžΌαž‘αžΆαžαŸ‹αžŠαŸ„αž™αž…αŸ†αž“αž½αž“αžŠαŸαž…αŸ’αžšαžΎαž“αž“αŸƒαžαŸ’αž“αžΆαŸ†αž„αž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜ Cloud Spanner αŸ” αžαžŽαŸˆαž–αŸαž›αžŠαŸ‚αž›αž—αžΆαž–αž™αžΊαžαž™αŸ‰αžΆαžœαž˜αžΎαž›αž‘αŸ…αžαŸ’αž–αžŸαŸ‹αžŽαžΆαžŸαŸ‹ αž‡αžΆαž–αž·αžŸαŸαžŸαž“αŸ…αž–αŸαž›αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‡αžΆαž˜αž½αž™ 2400 threads αž€αžΆαžšαž’αŸ’αžœαžΎαžαŸαžŸαŸ’αžαž˜αŸ’αžαž„αž‘αŸ€αžαž‡αžΆαž˜αž½αž™αž“αžΉαž„ 6 αž€αžšαžŽαžΈαžαžΌαž…αŸ—αž“αŸƒαž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž‚αžŽαž“αžΆαž”αŸ’αžšαž αŸ‚αž›αž‡αžΆαž…αžΆαŸ†αž”αžΆαž…αŸ‹αžŠαžΎαž˜αŸ’αž”αžΈαž‘αž‘αž½αž›αž”αžΆαž“αž›αŸαžαžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœαž‡αžΆαž„αž˜αž»αž“αŸ” αžœαžαŸ’αžαž»αž“αžΈαž˜αž½αž™αŸ—αž“αžΉαž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž€αžΆαžšαž’αŸ’αžœαžΎαžαŸαžŸαŸ’αž YCSB αž˜αž½αž™αž‡αŸ†αž“αž½αžŸαž±αŸ’αž™αžœαžαŸ’αžαž» CE αžŠαŸαž’αŸ†αž˜αž½αž™αžŠαŸ‚αž›αž˜αžΆαž“αž€αžΆαžšαž’αŸ’αžœαžΎαžαŸαžŸαŸ’αžαž”αŸ‰αžΆαžšαŸ‰αžΆαž‘αŸ‚αž›αž…αŸ†αž“αž½αž“ 6 αŸ” αžœαž·αž’αžΈαž“αŸαŸ‡ αžœαžΆαž“αžΉαž„αž€αžΆαž“αŸ‹αžαŸ‚αž„αžΆαž™αžŸαŸ’αžšαž½αž›αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αŸ‚αž„αž…αŸ‚αž€αžšαžœαžΆαž„αž—αžΆαž–αž™αžΊαžαž™αŸ‰αžΆαžœαž“αŸƒαžŸαŸ†αžŽαžΎαžšαž”αžŸαŸ‹ Cloud Spanner αž“αž·αž„αž—αžΆαž–αž™αžΊαžαž™αŸ‰αžΆαžœαžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜αžŠαŸ„αž™αž€αžΆαžšαž—αŸ’αž‡αžΆαž”αŸ‹αž”αžŽαŸ’αžαžΆαž‰αžšαžœαžΆαž„ Cloud Spanner αž“αž·αž„ CE instance αžŠαŸ‚αž›αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŸαžΆαž€αž›αŸ’αž”αž„αŸ”

តើ Cloud Spanner αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‡αžΆ OLAP αž™αŸ‰αžΆαž„αžŠαžΌαž…αž˜αŸ’αžαŸαž…?

αž€αžΆαžšαž”αŸ‚αž„αž…αŸ‚αž€?

αž€αžΆαžšαž”αŸ‚αž„αž…αŸ‚αž€αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‘αŸ…αž‡αžΆαž•αŸ’αž“αŸ‚αž€αž―αž€αžšαžΆαž‡αŸ’αž™αžαžΆαž„αžšαžΌαž”αžœαž“αŸ’αž αž“αž·αž„/αž¬αž‘αžΌαž‡αžΈαžαž› αžŠαŸ‚αž›αž αŸ…αžαžΆαž—αžΆαž‚αžαžΆαžŸ αž‚αžΊαž‡αžΆαž‚αŸ†αž“αž·αžαžŠαŸαž–αŸαž‰αž“αž·αž™αž˜αžŠαŸ‚αž›αž˜αžΆαž“αž“αŸ…αž€αŸ’αž“αž»αž„αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“ OLAP αž—αžΆαž‚αž…αŸ’αžšαžΎαž“αŸ” αž—αžΆαž‚αžαžΆαžŸαž’αžΆαž…αž’αŸ’αžœαžΎαž±αŸ’αž™αž”αŸ’αžšαžŸαžΎαžšαž‘αžΎαž„αž™αŸ‰αžΆαž„αžαŸ’αž›αžΆαŸ†αž„αž“αžΌαžœαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŸαŸ†αžŽαž½αžš αž“αž·αž„αž›αž‘αŸ’αž’αž—αžΆαž–αžšαž€αŸ’αžŸαžΆαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αŸ” αž…αžΌαž›αž€αžΆαž“αŸ‹αžαŸ‚αž‡αŸ’αžšαŸ…αž‘αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αŸ‚αž„αž…αŸ‚αž€αž‡αžΆαž’αžαŸ’αžαž”αž‘αžŠαžΆαž…αŸ‹αžŠαŸ„αž™αž‘αŸ‚αž€ αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž™αžΎαž„αž‚αŸ’αžšαžΆαž“αŸ‹αžαŸ‚αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαžŸαžΆαžšαŸˆαžŸαŸ†αžαžΆαž“αŸ‹αž“αŸƒαž€αžΆαžšαž˜αžΆαž“αž‚αŸ’αžšαŸ„αž„αž€αžΆαžšαžŽαŸαž€αžΆαžšαž”αŸ‚αž„αž…αŸ‚αž€ αž“αž·αž„αž€αžΆαžšαž”αŸ‚αž„αž…αŸ‚αž€αžšαž„αŸ” αžŸαž˜αžαŸ’αžαž—αžΆαž–αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αŸ†αž”αŸ‚αž€αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‘αŸ…αž‡αžΆαž—αžΆαž‚αžαžΆαžŸ αž“αž·αž„αžŸαžΌαž˜αŸ’αž”αžΈαžαŸ‚αž”αž“αŸ’αžαŸ‚αž˜αž‘αŸ€αžαž…αžΌαž›αž‘αŸ…αž€αŸ’αž“αž»αž„αž•αŸ’αž“αŸ‚αž€αžšαž„αž‚αžΊαž‡αžΆαž‚αž“αŸ’αž›αžΉαŸ‡αž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŸαŸ†αžŽαž½αžšαžœαž·αž—αžΆαž‚αŸ”

Cloud Spanner αž˜αž·αž“αž‚αžΆαŸ†αž‘αŸ’αžšαž—αžΆαž‚αžαžΆαžŸαž”αŸ‚αž”αž“αŸαŸ‡αž‘αŸαŸ” αžœαžΆαž”αŸ‚αž„αž…αŸ‚αž€αž‘αž·αž“αŸ’αž“αž“αŸαž™αžαžΆαž„αž€αŸ’αž“αž»αž„αž‘αŸ…αž‡αžΆαž’αŸ’αžœαžΈαžŠαŸ‚αž›αž‚αŸαž αŸ…αžαžΆ αž”αŸ†αž”αŸ‚αž€-s αž•αŸ’αž’αŸ‚αž€αž›αžΎαž‡αž½αžšαž‚αž“αŸ’αž›αžΉαŸ‡αž…αž˜αŸ’αž”αž„αŸ” αž€αžΆαžšαž”αŸ‚αž„αž…αŸ‚αž€αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αž“αž»αžœαžαŸ’αžαžŠαŸ„αž™αžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž·αžŠαžΎαž˜αŸ’αž”αžΈαž’αŸ’αžœαžΎαž±αŸ’αž™αž˜αžΆαž“αžαž»αž›αŸ’αž™αž—αžΆαž–αž”αž“αŸ’αž‘αž»αž€αž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜ Cloud Spanner αŸ” αž˜αž»αžαž„αžΆαžšαžŠαŸαž˜αžΆαž“αž”αŸ’αžšαž™αŸ„αž‡αž“αŸαžšαž”αžŸαŸ‹ Cloud Spanner αž‚αžΊαž€αžΆαžšαž”αŸ†αž”αŸ‚αž€αž”αž“αŸ’αž‘αž»αž€αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αžšαž”αžŸαŸ‹αžαžΆαžšαžΆαž„αž˜αŸ (αžαžΆαžšαžΆαž„αžŠαŸ‚αž›αž˜αž·αž“αž˜αžΆαž“αž€αžΆαžšαž‡αŸ’αžšαŸ€αžαž‡αŸ’αžšαŸ‚αž€αž‡αžΆαž˜αž½αž™αž•αŸ’αžŸαŸαž„αž‘αŸ€αž)αŸ” Spanner αžšαž€αžƒαžΎαž‰αžŠαŸ„αž™αžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž·αžαžΆαžαžΎαžœαžΆαž˜αžΆαž“ αž”αŸ†αž”αŸ‚αž€ αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αžΆαž“αž‰αžΉαž€αž‰αžΆαž”αŸ‹αž‡αžΆαž„αž‘αž·αž“αŸ’αž“αž“αŸαž™αž“αŸ…αž€αŸ’αž“αž»αž„αž’αŸ’αž“αž€αžŠαž‘αŸƒ αž”αŸ†αž”αŸ‚αž€-ah, αž αžΎαž™αž’αžΆαž…αžŸαž˜αŸ’αžšαŸαž…αž…αž·αžαŸ’αžαž›αžΎαž€αžΆαžšαž”αŸ†αž”αŸ‚αž€αž”αž“αŸ’αžαŸ‚αž˜αž‘αŸ€αžαŸ” αžœαž·αž’αžΈαž“αŸαŸ‡ αžαŸ’αž“αžΆαŸ†αž„αž€αžΆαž“αŸ‹αžαŸ‚αž…αŸ’αžšαžΎαž“αž’αžΆαž…αž–αžΆαž€αŸ‹αž–αŸαž“αŸ’αž’αž“αžΉαž„αž€αžΆαžšαžŸαŸ’αž“αžΎαžŸαž»αŸ† αžŠαŸ‚αž›αž”αž„αŸ’αž€αžΎαž“αž”αŸ’αžšαžŸαž·αž‘αŸ’αž’αž—αžΆαž–αž•αž„αžŠαŸ‚αžšαŸ”

αž€αŸ†αž–αž»αž„αž•αŸ’αž‘αž»αž€αž‘αž·αž“αŸ’αž“αž“αŸαž™?

αžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžαŸ’αžš Cloud Spanner αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž‘αž·αž“αŸ’αž“αž“αŸαž™αž—αžΆαž‚αž…αŸ’αžšαžΎαž“αž‚αžΊαžŠαžΌαž…αž‚αŸ’αž“αžΆαž‘αŸ…αž“αžΉαž„αž€αžΆαžšαž•αŸ’αž‘αž»αž€αž’αž˜αŸ’αž˜αžαžΆαŸ” αžŠαžΎαž˜αŸ’αž”αžΈαžŸαž˜αŸ’αžšαŸαž…αž”αžΆαž“αž“αžΌαžœαž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž’αžαž·αž”αžšαž˜αžΆ αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž’αž“αž»αžœαžαŸ’αžαžαžΆαž˜αž€αžΆαžšαžŽαŸ‚αž“αžΆαŸ†αž˜αž½αž™αž…αŸ†αž“αž½αž“ αžšαž½αž˜αž˜αžΆαž“αŸˆ

  • αžαž˜αŸ’αžšαŸ€αž”αž‘αž·αž“αŸ’αž“αž“αŸαž™αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αžαžΆαž˜αž‚αž“αŸ’αž›αžΉαŸ‡αž…αž˜αŸ’αž”αž„αŸ”
  • αž…αŸ‚αž€αž–αž½αž€αžœαžΆαžŠαŸ„αž™ 10 *αž…αŸ†αž“αž½αž“αžαŸ’αž“αžΆαŸ†αž„ αž•αŸ’αž“αŸ‚αž€αžŠαžΆαž…αŸ‹αžŠαŸ„αž™αž‘αŸ‚αž€αŸ”
  • αž”αž„αŸ’αž€αžΎαžαžŸαŸ†αžŽαž»αŸ†αž“αŸƒαž€αž·αž…αŸ’αž…αž€αžΆαžšαž€αžΆαžšαž„αžΆαžšαžŠαŸ‚αž›αž•αŸ’αž‘αž»αž€αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŸαŸ’αžšαž”αž‚αŸ’αž“αžΆαŸ”

αž€αžΆαžšαž•αŸ’αž‘αž»αž€αž‘αž·αž“αŸ’αž“αž“αŸαž™αž“αŸαŸ‡αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžαŸ’αž“αžΆαŸ†αž„ Cloud Spanner αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αŸ”

αž™αžΎαž„αž”αžΆαž“αž”αŸ’αžšαžΎαž”αž“αŸ’αž‘αž»αž€αž€αžΆαžšαž„αžΆαžš YCSB A αžŠαžΎαž˜αŸ’αž”αžΈαž”αž„αŸ’αž€αžΎαžαžŸαŸ†αžŽαž»αŸ†αž‘αž·αž“αŸ’αž“αž“αŸαž™ 10M αž‡αž½αžšαŸ”

Google Cloud SpannerαŸ– αž›αŸ’αž’ αž’αžΆαž€αŸ’αžšαž€αŸ‹ αž“αž·αž„αž’αžΆαž€αŸ’αžšαž€αŸ‹

* αž€αžΆαžšαž’αŸ’αžœαžΎαžαŸαžŸαŸ’αžαž•αŸ’αž‘αž»αž€αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž›αžΎαž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž‚αžŽαž“αžΆ n1-standard-32 (32 vCPU, αž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ† 120 GB) αž αžΎαž™αž€αžΆαžšαžŸαžΆαž€αž›αŸ’αž”αž„αž‚αžΊαž˜αž·αž“αžŠαŸ‚αž›αž˜αžΆαž“αž”αž‰αŸ’αž αžΆαž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αŸ’αžœαžΎαžαŸαžŸαŸ’αžαž“αŸ„αŸ‡αž‘αŸαŸ”
** αž€αžΆαžšαžŠαŸ†αž‘αžΎαž„αžαŸ’αž“αžΆαŸ†αž„αžαŸ‚αž˜αž½αž™αž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŽαŸ‚αž“αžΆαŸ†αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αž“αŸ’αž‘αž»αž€αž•αž›αž·αžαž€αž˜αŸ’αž˜αžŽαžΆαž˜αž½αž™αž‘αžΎαž™αŸ”

αžŠαžΌαž…αžŠαŸ‚αž›αž”αžΆαž“αžšαŸ€αž”αžšαžΆαž”αŸ‹αžαžΆαž„αž›αžΎ Cloud Spanner αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž€αžΆαžšαž”αŸ†αž”αŸ‚αž€αžŠαŸ„αž™αžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž·αžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαž”αž“αŸ’αž‘αž»αž€αžšαž”αžŸαŸ‹αž–αž½αž€αž‚αŸ αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž›αž‘αŸ’αž’αž•αž›αž“αžΉαž„αž”αŸ’αžšαžŸαžΎαžšαž‘αžΎαž„αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž€αžΆαžšαž’αŸ’αžœαžΎαžαŸαžŸαŸ’αžαž˜αŸ’αžαž„αž αžΎαž™αž˜αŸ’αžαž„αž‘αŸ€αžαž‡αžΆαž”αž“αŸ’αžαž”αž“αŸ’αž‘αžΆαž”αŸ‹αŸ” αž›αž‘αŸ’αž’αž•αž›αžŠαŸ‚αž›αž”αžΆαž“αž”αž„αŸ’αž αžΆαž‰αž“αŸ…αž‘αžΈαž“αŸαŸ‡ αž‚αžΊαž‡αžΆαž›αž‘αŸ’αž’αž•αž›αžŠαŸαž›αŸ’αž’αž”αŸ†αž•αž»αžαžŠαŸ‚αž›αž™αžΎαž„αž‘αž‘αž½αž›αž”αžΆαž“αŸ” αž€αŸ’αžšαž‘αŸαž€αž˜αžΎαž›αž›αŸαžαžαžΆαž„αž›αžΎ αž™αžΎαž„αž’αžΆαž…αž˜αžΎαž›αžƒαžΎαž‰αž–αžΈαžšαž”αŸ€αž”αžŠαŸ‚αž› Cloud Spanner αž’αŸ’αžœαžΎαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“ (αž›αŸ’αž’) αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž…αŸ†αž“αž½αž“αžαŸ’αž“αžΆαŸ†αž„αž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜αž€αžΎαž“αž‘αžΎαž„αŸ” αž›αŸαžαžŠαŸ‚αž›αž›αŸαž…αž’αŸ’αž›αŸ„αž‚αžΊ latencies αž‡αžΆαž˜αž’αŸ’αž™αž˜αž‘αžΆαž”αž”αŸ†αž•αž»αž αžŠαŸ‚αž›αž•αŸ’αž‘αž»αž™αž–αžΈαž›αž‘αŸ’αž’αž•αž›αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αž“αŸ’αž‘αž»αž€αž€αžΆαžšαž„αžΆαžšαž…αž˜αŸ’αžšαž»αŸ‡ (95% αž’αžΆαž“ αž“αž·αž„ 5% សរសេរ) αžŠαžΌαž…αžŠαŸ‚αž›αž”αžΆαž“αž–αž·αž–αžŽαŸŒαž“αžΆαž“αŸ…αž€αŸ’αž“αž»αž„αž•αŸ’αž“αŸ‚αž€αžαžΆαž„αž›αžΎαŸ”

αž’αŸ’αžœαžΎαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“?

αž€αžΆαžšαž”αž„αŸ’αž€αžΎαž“ αž“αž·αž„αž”αž“αŸ’αžαž™αž…αŸ†αž“αž½αž“αžαŸ’αž“αžΆαŸ†αž„ Cloud Spanner αž‚αžΊαž‡αžΆαž€αž·αž…αŸ’αž…αž€αžΆαžšαžŠαŸ„αž™αž…αž»αž…αžαŸ‚αž˜αŸ’αžαž„αŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎβ€‹αž’αŸ’αž“αž€β€‹αž…αž„αŸ‹β€‹αž•αŸ’αž‘αž»αž€β€‹αž‘αž·αž“αŸ’αž“αž“αŸαž™β€‹αž”αžΆαž“β€‹αž›αžΏαž“ αž’αŸ’αž“αž€β€‹αž’αžΆαž…β€‹αž“αžΉαž„β€‹αž–αž·αž…αžΆαžšαžŽαžΆβ€‹αž–αžΈβ€‹αž€αžΆαžšβ€‹αž”αž„αŸ’αž€αžΎαž“β€‹αž§αž‘αžΆαž αžšαžŽαŸβ€‹αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€β€‹αžŠαž›αŸ‹β€‹αž’αžαž·αž”αžšαž˜αžΆ (αž€αŸ’αž“αž»αž„αž€αžšαžŽαžΈβ€‹αžšαž”αžŸαŸ‹αž™αžΎαž„β€‹αžœαžΆβ€‹αž˜αžΆαž“ 25 nodes αž“αŸ…αž€αŸ’αž“αž»αž„αžαŸ†αž”αž“αŸ‹ US-EAST) αž αžΎαž™β€‹αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€β€‹αž€αžΆαžαŸ‹αž”αž“αŸ’αžαž™β€‹αž…αŸ†αž“αž½αž“β€‹αžαŸ’αž“αžΆαŸ†αž„β€‹αžŠαŸ‚αž›β€‹αž˜αžΆαž“β€‹αžŸαž·αž‘αŸ’αž’αž·β€‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹β€‹αž€αžΆαžšαž•αŸ’αž‘αž»αž€β€‹αž’αž˜αŸ’αž˜αžαžΆβ€‹αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€β€‹αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›β€‹αž‘αž·αž“αŸ’αž“αž“αŸαž™β€‹αž‘αžΆαŸ†αž„αž’αžŸαŸ‹β€‹αž…αžΌαž›αŸ” αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ αžŠαŸ„αž™αž™αŸ„αž„αž‘αŸ…αž›αžΎαžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹ 2TB/node αŸ”

αž™αžΎαž„β€‹αžαŸ’αžšαžΌαžœβ€‹αž”αžΆαž“β€‹αž‚αŸβ€‹αžšαŸ†αž›αžΉαž€β€‹αž–αžΈβ€‹αž€αž˜αŸ’αžšαž·αžβ€‹αž“αŸαŸ‡β€‹αžŸαžΌαž˜αŸ’αž”αžΈβ€‹αžαŸ‚β€‹αž‡αžΆαž˜αž½αž™β€‹αž“αžΉαž„β€‹αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“β€‹αž‘αž·αž“αŸ’αž“αž“αŸαž™β€‹αžαžΌαž…β€‹αž‡αžΆαž„β€‹αž“αŸαŸ‡β€‹αŸ” αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŸαžΆαž€αž›αŸ’αž”αž„αž‡αžΆαž…αŸ’αžšαžΎαž“αžŠαž„ αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžšαž”αžŸαŸ‹αž™αžΎαž„αž˜αžΆαž“αž‘αŸ†αž αŸ†αž”αŸ’αžšαž αŸ‚αž› 155 GB αž αžΎαž™αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž”αžΆαž“αž”αž“αŸ’αžαž™αž‘αŸ†αž αŸ†αž‘αŸ… 1 node instance αž™αžΎαž„αž”αžΆαž“αž‘αž‘αž½αž›αž€αŸ†αž αž»αžŸαžŠαžΌαž…αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸ–

Google Cloud SpannerαŸ– αž›αŸ’αž’ αž’αžΆαž€αŸ’αžšαž€αŸ‹ αž“αž·αž„αž’αžΆαž€αŸ’αžšαž€αŸ‹

αž™αžΎαž„αž’αžΆαž…αž’αŸ’αžœαžΎαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“αž…αž»αŸ‡αž–αžΈ 25 αž‘αŸ… 2 αž€αžšαžŽαžΈ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž™αžΎαž„αž”αžΆαž“αž‡αžΆαž”αŸ‹αž‚αžΆαŸ†αž„αž“αŸ…αžαŸ’αž“αžΆαŸ†αž„αž–αžΈαžšαŸ”

αž€αžΆαžšαž”αž„αŸ’αž€αžΎαž“ αž“αž·αž„αž”αž“αŸ’αžαž™αž…αŸ†αž“αž½αž“αžαŸ’αž“αžΆαŸ†αž„αž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜ Cloud Spanner αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŠαŸ„αž™αžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž·αžŠαŸ„αž™αž”αŸ’αžšαžΎ REST API αŸ” αžœαžΆαž’αžΆαž…αž˜αžΆαž“αž”αŸ’αžšαž™αŸ„αž‡αž“αŸαž‡αžΆαž–αž·αžŸαŸαžŸαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžαŸ‹αž”αž“αŸ’αžαž™αž€αžΆαžšαž•αŸ’αž‘αž»αž€αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž€αžΎαž“αž‘αžΎαž„αž€αŸ’αž“αž»αž„αž’αŸ†αž‘αž»αž„αž–αŸαž›αž˜αŸ‰αŸ„αž„αž€αžΆαžšαž„αžΆαžšαžŠαŸαž˜αž˜αžΆαž‰αžΉαž€αŸ”

αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαžŸαŸ†αžŽαž½αžš OLAP?

αžŠαžΎαž˜αž‘αžΎαž™ αž™αžΎαž„αž˜αžΆαž“αž‚αž˜αŸ’αžšαŸ„αž„αž…αŸ†αžŽαžΆαž™αž–αŸαž›αžœαŸαž›αžΆαž…αŸ’αžšαžΎαž“αž€αŸ’αž“αž»αž„αž€αžΆαžšαžœαžΆαž™αžαž˜αŸ’αž›αŸƒ Spanner αžšαž”αžŸαŸ‹αž™αžΎαž„αž›αžΎαž•αŸ’αž“αŸ‚αž€αž“αŸαŸ‡αŸ” αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈ SELECT COUNTs αž‡αžΆαž…αŸ’αžšαžΎαž“ αž™αžΎαž„αžŠαžΉαž„αž—αŸ’αž›αžΆαž˜αŸ—αžαžΆαž€αžΆαžšαž’αŸ’αžœαžΎαžαŸαžŸαŸ’αžαž“αžΉαž„αž˜αžΆαž“αžšαž™αŸˆαž–αŸαž›αžαŸ’αž›αžΈ αž αžΎαž™ Spanner αž“αžΉαž„αž˜αž·αž“αž˜αŸ‚αž“αž‡αžΆαž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αžŠαŸ‚αž›αžŸαž˜αžšαž˜αŸ’αž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ OLAP αž“αŸ„αŸ‡αž‘αŸαŸ” αžŠαŸ„αž™αž˜αž·αž“αž‚αž·αžαž–αžΈαž…αŸ†αž“αž½αž“αžαŸ’αž“αžΆαŸ†αž„αž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜ αž€αžΆαžšαž‚αŸ’αžšαžΆαž“αŸ‹αžαŸ‚αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž…αŸ†αž“αž½αž“αž‡αž½αžšαžŠαŸαž€αž€αŸ’αž“αž»αž„αžαžΆαžšαžΆαž„αž‡αž½αžš 10M αž…αŸ†αžŽαžΆαž™αž–αŸαž›αž–αžΈ 55 αž‘αŸ… 60 αžœαž·αž“αžΆαž‘αžΈαŸ” αž›αžΎαžŸαž–αžΈαž“αŸαŸ‡αž‘αŸ€αž αžšαžΆαž›αŸ‹αžŸαŸ†αžŽαž½αžšαžŠαŸ‚αž›αž‘αžΆαž˜αž‘αžΆαžšαž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ†αž”αž“αŸ’αžαŸ‚αž˜αžŠαžΎαž˜αŸ’αž”αžΈαžšαž€αŸ’αžŸαžΆαž‘αž»αž€αž›αž‘αŸ’αž’αž•αž›αž€αž˜αŸ’αžšαž·αžαž˜αž’αŸ’αž™αž˜αž”αžΆαž“αž”αžšαžΆαž‡αŸαž™αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž€αŸ†αž αž»αžŸ OOM αŸ”

SELECT COUNT(DISTINCT(field0)) FROM usertable; β€” (10M distinct values)-> SpoolingHashAggregateIterator ran out of memory during new row.

αž›αŸαžαž˜αž½αž™αž…αŸ†αž“αž½αž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŸαŸ†αžŽαž½αžš TPC-H αž’αžΆαž…αžšαž€αž”αžΆαž“αž“αŸ…αž€αŸ’αž“αž»αž„αž’αžαŸ’αžαž”αž‘αžšαž”αžŸαŸ‹ Todd Lipcon Nosql-kudu-spanner-slides.html, αžŸαŸ’αž›αžΆαž™ 42 αž“αž·αž„ 43. αž›αŸαžαž‘αžΆαŸ†αž„αž“αŸαŸ‡αž‚αžΊαžŸαŸ’αžšαž”αž“αžΉαž„αž›αž‘αŸ’αž’αž•αž›αžšαž”αžŸαŸ‹αž™αžΎαž„αž•αŸ’αž‘αžΆαž›αŸ‹ (αž‡αžΆαž’αž€αž»αžŸαž›)αŸ”

Google Cloud SpannerαŸ– αž›αŸ’αž’ αž’αžΆαž€αŸ’αžšαž€αŸ‹ αž“αž·αž„αž’αžΆαž€αŸ’αžšαž€αŸ‹

4. αž€αžΆαžšαžŸαž“αŸ’αž“αž·αžŠαŸ’αž‹αžΆαž“αžšαž”αžŸαŸ‹αž™αžΎαž„αŸ”

αžŠαŸ„αž™αž‚αž·αžαž–αžΈαžŸαŸ’αžαžΆαž“αž—αžΆαž–αž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž“αŸƒαž›αž€αŸ’αžαžŽαŸˆαž–αž·αžŸαŸαžŸαžšαž”αžŸαŸ‹ Cloud Spanner αžœαžΆαž–αž·αž”αžΆαž€αž€αŸ’αž“αž»αž„αž€αžΆαžšαžŸαŸ’αžšαž˜αŸƒαžαžΆαžœαžΆαž‡αžΆαž€αžΆαžšαž‡αŸ†αž“αž½αžŸαžŠαŸαžŸαžΆαž˜αž‰αŸ’αž‰αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™ OLTP αžŠαŸ‚αž›αž˜αžΆαž“αžŸαŸ’αžšαžΆαž”αŸ‹αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€ αž‡αžΆαž–αž·αžŸαŸαžŸαž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž›αžΎαžŸαž–αžΈαžœαžΆαŸ” αž–αŸαž›αžœαŸαž›αžΆαžŠαŸαžŸαŸ†αžαžΆαž“αŸ‹αž˜αž½αž™αž“αžΉαž„αžαŸ’αžšαžΌαžœαž…αŸ†αžŽαžΆαž™αž€αŸ’αž“αž»αž„αž€αžΆαžšαž€αžŸαžΆαž„αžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž‡αž»αŸ†αžœαž·αž‰αž…αŸ†αžŽαž»αž…αžαŸ’αžœαŸ‡αžαžΆαžαžšαž”αžŸαŸ‹ Cloud Spanner αŸ”

αž“αŸ…αž–αŸαž›αž™αžΎαž„αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αžœαžΆαž™αžαž˜αŸ’αž›αŸƒ Cloud Spanner αž™αžΎαž„αžšαŸ†αž–αžΉαž„αžαžΆαž˜αž»αžαž„αžΆαžšαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αžšαž”αžŸαŸ‹αžœαžΆαž˜αžΆαž“αž›αž€αŸ’αžαžŽαŸˆαžŠαžΌαž…αž‚αŸ’αž“αžΆ αž¬αž™αŸ‰αžΆαž„αž αŸ„αž…αžŽαžΆαžŸαŸ‹αž˜αž·αž“αž†αŸ’αž„αžΆαž™αž–αžΈαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™ Google SQL αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚β€‹αž™αžΎαž„β€‹αž˜αžΆαž“β€‹αž€αžΆαžšβ€‹αž—αŸ’αž‰αžΆαž€αŸ‹β€‹αž•αŸ’αž’αžΎαž›β€‹αžŠαŸ„αž™β€‹αžŸαžΆαžšβ€‹αž€αž„αŸ’αžœαŸ‡β€‹αž€αžΆαžšβ€‹αž”αž˜αŸ’αžšαž»αž„β€‹αž‘αž»αž€β€‹αž–αŸαž‰αž›αŸαž‰ αž“αž·αž„β€‹αž€αžΆαžšβ€‹αž‚αŸ’αžšαž”αŸ‹β€‹αž‚αŸ’αžšαž„β€‹αž€αž˜αŸ’αžšαž·αžβ€‹αžαŸ’αž›αžΆαŸ†αž„β€‹αž›αžΎβ€‹αž€αžΆαžšβ€‹αž…αžΌαž›β€‹αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹β€‹αž’αž“αž’αžΆαž“αŸ” αž˜αž·αž“αž“αž·αž™αžΆαž™αž–αžΈαž‘αžŸαŸ’αžŸαž“αŸˆ αž‚αŸ’αž˜αžΆαž“αž”αžšαž·αž™αžΆαž€αžΆαžŸαž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž€αŸ’αž“αž»αž„αžŸαŸ’αžšαž»αž€ αž›αŸ†αžŠαžΆαž”αŸ‹αžŠαŸ‚αž›αž˜αž·αž“αž‚αžΆαŸ†αž‘αŸ’αžš JDBC αžŠαŸ„αž™αž‚αŸ’αž˜αžΆαž“αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžš DML αž“αž·αž„ DDL αž αžΎαž™αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž“αŸ…αž›αžΎαŸ”

αžŠαžΌαž…αŸ’αž“αŸαŸ‡ αžαžΎβ€‹αž’αŸ’αž“αž€β€‹αžŠαŸ‚αž›β€‹αžαŸ’αžšαžΌαžœβ€‹αž’αŸ’αžœαžΎβ€‹αž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“β€‹αž‘αž·αž“αŸ’αž“αž“αŸαž™β€‹αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšβ€‹αž‘αŸ…β€‹αžŽαžΆ? αžœαžΆαž αžΆαž€αŸ‹αžŠαžΌαž…αž‡αžΆαž˜αž·αž“αž˜αžΆαž“αžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αžαŸ‚αž˜αž½αž™αž“αŸ…αž›αžΎαž‘αžΈαž•αŸ’αžŸαžΆαžšαžŠαŸ‚αž›αžŸαž˜αž“αžΉαž„αž€αžšαžŽαžΈαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αŸ” αž˜αžΆαž“αžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αŸ’αžšαž—αž–αž”αž·αž‘ αž“αž·αž„αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αž‡αžΆαž…αŸ’αžšαžΎαž“ (αž˜αž½αž™αž…αŸ†αž“αž½αž“αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž›αžΎαž€αž‘αžΎαž„αž“αŸ…αž€αŸ’αž“αž»αž„αž’αžαŸ’αžαž”αž‘αž“αŸαŸ‡) αžŠαŸ‚αž›αž“αžΈαž˜αž½αž™αŸ—αž˜αžΆαž“αž—αžΆαž–αžαŸ’αž›αžΆαŸ†αž„ αž“αž·αž„αž…αŸ†αžŽαž»αž…αžαŸ’αžŸαŸ„αž™αžšαž”αžŸαŸ‹αž–αž½αž€αž‚αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž‚αŸ’αž˜αžΆαž“αž“αžšαžŽαžΆαž˜αŸ’αž“αžΆαž€αŸ‹αž€αŸ’αž“αž»αž„αž…αŸ†αžŽαŸ„αž˜αž–αž½αž€αž‚αŸαž•αŸ’αžαž›αŸ‹ SaaS αž‡αžΆαž˜αž½αž™αž“αžΉαž„ 99,999% SLA αž“αž·αž„αž—αžΆαž–αžŸαŸŠαžΈαžŸαž„αŸ’αžœαžΆαž€αŸ‹αž‚αŸ’αž“αžΆαžαŸ’αž–αžŸαŸ‹αŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎ SLA αžαŸ’αž–αžŸαŸ‹αž‚αžΊαž‡αžΆαž‚αŸ„αž›αžŠαŸ…αž…αž˜αŸ’αž”αž„αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€ αž αžΎαž™αž’αŸ’αž“αž€αž˜αž·αž“αž˜αžΆαž“αž‘αŸ†αž“αŸ„αžšαž…αž„αŸ‹αž”αž„αŸ’αž€αžΎαžαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž–αž αž»αž–αž–αž€αž•αŸ’αž‘αžΆαž›αŸ‹αžαŸ’αž›αž½αž“αž‘αŸ Cloud Spanner αž’αžΆαž…αž‡αžΆαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αžŠαŸ‚αž›αž’αŸ’αž“αž€αž€αŸ†αž–αž»αž„αžŸαŸ’αžœαŸ‚αž„αžšαž€αŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž’αŸ’αž“αž€αž‚αž½αžšαžαŸ‚αžŠαžΉαž„αž–αžΈαžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹αžšαž”αžŸαŸ‹αžœαžΆαŸ”

αžŠαžΎαž˜αŸ’αž”αžΈαž±αŸ’αž™αž˜αžΆαž“αž—αžΆαž–αž™αž»αžαŸ’αžαž·αž’αž˜αŸŒ Cloud Spanner αž‘αžΎαž”αžαŸ‚αžαŸ’αžšαžΌαžœαž”αžΆαž“αž…αŸαž‰αž•αŸ’αžŸαžΆαž™αž‡αžΆαžŸαžΆαž’αžΆαžšαžŽαŸˆαž“αŸ…αž“αž·αž‘αžΆαžƒαžšαžŠαžΌαžœαž†αŸ’αž“αžΆαŸ† 2017 αžŠαžΌαž…αŸ’αž“αŸαŸ‡αžœαžΆαžŸαž˜αž αŸαžαž»αž•αž›αž€αŸ’αž“αž»αž„αž€αžΆαžšαžšαŸ†αž–αžΉαž„αžαžΆαž€αžΆαžšαžαŸ’αžœαŸ‡αžαžΆαžαž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž˜αž½αž™αž…αŸ†αž“αž½αž“αžšαž”αžŸαŸ‹αžœαžΆαž’αžΆαž…αž“αžΉαž„αž”αžΆαžαŸ‹αž‘αŸ…αžœαž·αž‰ (αžŸαž„αŸ’αžƒαžΉαž˜αžαžΆ) αž αžΎαž™αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž–αž½αž€αž‚αŸαž’αŸ’αžœαžΎ αžœαžΆαž’αžΆαž…αž‡αžΆαž’αŸ’αž“αž€αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž αŸ’αž‚αŸαž˜αŸ” αž™αŸ‰αžΆαž„αžŽαžΆαž˜αž·αž‰ Cloud Spanner αž˜αž·αž“αž˜αŸ‚αž“αž‚αŸ’αžšαžΆαž“αŸ‹αžαŸ‚αž‡αžΆαž‚αž˜αŸ’αžšαŸ„αž„αž…αŸ†αž αŸ€αž„αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ Google αž“αŸ„αŸ‡αž‘αŸαŸ” Google αž”αŸ’αžšαžΎαžœαžΆαž‡αžΆαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž•αž›αž·αžαž•αž› Google αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαŸ” αž αžΎαž™αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αžαŸ’αž˜αžΈαŸ—αž“αŸαŸ‡ Google αž”αžΆαž“αž‡αŸ†αž“αž½αžŸ Megastore αž“αŸ…αž€αŸ’αž“αž»αž„ Google Cloud Storage αž‡αžΆαž˜αž½αž™ Cloud Spanner αžœαžΆαž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™ Google Cloud Storage αž˜αžΆαž“αž—αžΆαž–αžŸαŸŠαžΈαžŸαž„αŸ’αžœαžΆαž€αŸ‹αž‚αŸ’αž“αžΆαž™αŸ‰αžΆαž„αžαŸ’αž›αžΆαŸ†αž„αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αž‰αŸ’αž‡αžΈαžœαžαŸ’αžαž»αž“αŸ…αž›αžΎαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“αžŸαž€αž› (αžŠαŸ‚αž›αž“αŸ…αžαŸ‚αž˜αž·αž“αž˜αŸ‚αž“αž‡αžΆαž€αžšαžŽαžΈαžŸαž˜αŸ’αžšαžΆαž”αŸ‹ αžšαž”αžŸαŸ‹αž€αŸ’αžšαž»αž˜αž αŸŠαž»αž“ Amazon αŸ” S3).

αžŠαžΌαž…αŸ’αž“αŸαŸ‡ αž“αŸ…αžαŸ‚αž˜αžΆαž“αžŸαž„αŸ’αžƒαžΉαž˜... αž™αžΎαž„αžŸαž„αŸ’αžƒαžΉαž˜αŸ”

αž’αžŸαŸ‹αž αžΎαž™αŸ” αžŠαžΌαž…β€‹αž’αŸ’αž“αž€β€‹αž“αž·αž–αž“αŸ’αž’β€‹αž’αžαŸ’αžαž”αž‘ αž™αžΎαž„β€‹αž€αŸβ€‹αž”αž“αŸ’αžβ€‹αžŸαž„αŸ’αžƒαžΉαž˜β€‹αžŠαŸ‚αžš αž”αŸ‰αž»αž“αŸ’αžαŸ‚β€‹αžαžΎβ€‹αž’αŸ’αž“αž€β€‹αž™αž›αŸ‹β€‹αž™αŸ‰αžΆαž„β€‹αžŽαžΆβ€‹αž…αŸ†αž–αŸ„αŸ‡β€‹αžšαžΏαž„β€‹αž“αŸαŸ‡? αžŸαžšαžŸαŸαžšαž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžαž·αž™αŸ„αž”αž›αŸ‹

αž™αžΎαž„αžŸαžΌαž˜αž’αž‰αŸ’αž‡αžΎαž‰αž’αŸ’αž“αž€αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž‚αŸ’αž“αžΆαž˜αž€αž‘αžŸαŸ’αžŸαž“αžΆαžšαž”αžŸαŸ‹αž™αžΎαž„αŸ” webinar αž₯αžαž‚αž·αžαžαŸ’αž›αŸƒ αž“αŸ…αž€αŸ’αž“αž»αž„αž“αŸ„αŸ‡αž™αžΎαž„αž“αžΉαž„αž”αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αž™αŸ‰αžΆαž„αž›αž˜αŸ’αž’αž·αžαž’αŸ†αž–αžΈαžœαž‚αŸ’αž‚αžŸαž·αž€αŸ’αžŸαžΆ "AWS αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸ" αž–αžΈ OTUS αŸ”

αž”αŸ’αžšαž—αž–: www.habr.com

αž”αž“αŸ’αžαŸ‚αž˜αž˜αžαž·αž™αŸ„αž”αž›αŸ‹