Bigtableで分散カウンタ機能が正式に利用可能に。SQLのクエリにも対応
今回は「Bigtableで分散カウンタ機能が正式に利用可能に。SQLのクエリにも対応」についてご紹介します。
関連ワード (不正検出、必要、最適化等) についても参考にしながら、ぜひ本記事について議論していってくださいね。
本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。
Google Cloudは、NoSQLデータベースとして提供しているBigtableの新機能として分散カウンタを正式版にしたことを発表しました。また、SQLクエリのサポートもプレビュー機能として提供を開始したことを合わせて発表しました。
Bigtableで分散カウンタ機能が正式版に
Bigtableはキーバリューストア型のNoSQLデータベースであり、高度なスケーラビリティを備えつつ高速で低レイテンシな性能を提供することを大きな特徴としています。
こうしたBigtableのスケーラビリティと高い性能を実現する仕組みとして、デフォルトで採用されているのが「結果整合性」です。
結果整合性では、最終的にデータベースのデータが集約されて整合性を備えるのに一定の時間を必要とする場合があります。
そのため、例えばカウンタのように、データベース上のある値に1を足した値をデータベースに書き込む処理では、1を足す前のデータベース上の値がその時点で正確な値であるかどうかは必ずしも保証されておらず、正しく実装することは困難でした。
正式版となったBigtable分散カウンタは、これを解決し、カウンタの値を書き込む時点で、カウンタの基となるデータベース内の値が正確に集約されていることが保証されます。
Bigtable分散カウンタは、AI、不正検出、データメッシュ、レコメンデーションなどのユースケースで使われるイベントストリームの処理など、書き込み時の集約処理を高いスループットで実現することに最適化されています。
BigtableでSQLによるクエリをサポート
BigtableへのクエリでSQLがプレビューとしてサポートされたことも発表されました。
Bigtableに対して検索処理を行う際に、これまではBigtable独自のAPIを用いて処理を記述する必要がありましたが、これが多くのプログラマが慣れ親しんでいるSQLで記述できるようになりました。
SQLは、GoogleのSQL方言でありBigQueryなどで使われている「GoogleSQL」をサポートしています。