フリーキーズ | 独学プログラミング

Cloud Bigtableとは

最終更新日

Google Cloud Bigtableは、スケーラブルで完全に管理されたNoSQLのワイドカラムデータベースで、リアルタイムアクセスと分析の両方のワークロードに適しています。検索、アナリティクス、マップ、Gmailなど、多くのGoogleのコアサービスを支えているデータベースと同じものです。

Cloud Bigtableは大規模なワークロードを処理するために設計されており、一貫した低レイテンシーと高スループットのパフォーマンスを提供します。非常に大量のシングルキーデータを低レイテンシーで保存するのに適しています。低レイテンシーで高い読み取りと書き込みのスループットをサポートし、Google Cloud DataflowやApache Hadoopを含む多くのデータ処理ワークロードにとって理想的なデータソースとなります。

Cloud Bigtableの使用例

数百万人のユーザーと商品を抱える大規模なEコマースプラットフォームを運営しているとします。ユーザーがどのような商品を閲覧したか、カートに何を入れたか、何を購入したかといったユーザーの行動に関する情報を保存したいと仮定します。

Cloud Bigtableでは各行がユーザに対応するテーブルを用意します。行のキーはユーザのIDで、「閲覧商品」「カート商品」「購入商品」にそれぞれ異なるカラムファミリーを持つことができます。これらのファミリーの各カラムは異なる製品を表し、値はユーザーがその製品を閲覧、追加、購入したときのタイムスタンプとします。

Cloud Bigtableの特徴

Cloud Bigtableの大きな特徴の1つはそのスケーラビリティです。需要に応じてシームレスに拡張できるように設計されており、必要に応じて容量を増減できます。これは負荷が変動するビジネスにとって大きなメリットとなります。

しかし、Cloud Bigtableは大量のデータを扱うことができ、拡張性が高い反面、すべてのユースケースに最適とは限りません。リレーショナルデータベースではなく、SQLクエリや複数行のトランザクションをサポートしていないため、複雑なクエリやトランザクションの一貫性を必要とするアプリケーションには適さないかもしれません。また、一般的に小規模なデータセットには費用対効果が悪いとされています。