2022年12月27日

【Google Cloud】データベースの特徴を覚えるぞ(クラウド入門者向け)


Content
こんにちは。はじめまして。

最近、Google Cloudに入門した みやてつ です。
本ブログ(So-da)への投稿は初めてです。よろしくお願いします。

さて、Google Cloudには数え切れないほどのサービスがあって、
特徴を押さえながら、サービス名を覚えるだけでも大変ですよね。

データベースひとつとっても、数多くのサービスがあります。
Cloud SQL、AlloyDB、BigQuery、Cloud Spanner、Cloud Datastore・・・。

Google Cloudの認定試験で基本レベルになる「Associate Cloud Engineer」の資格勉強の際に、
それぞれのデータベースの特徴を学ぶのですが、
サービス名が似ていたり、名前から想像がつかなかったりして、大混乱になりました。

それぞれのデータベースについて、代表的なものをピックアップして、
特徴やポイントを簡単にまとめたいと思います。

リレーショナル型データベース

1.Cloud SQL

フルマネージドのリレーショナルデータベースです。
データベースのエンジンにMySQL、PostgreSQL、SQLServerが選択できます。

オンプレミスのサーバで構築するデータベースとは異なり、
必要なソフトウェアのインストール作業は不要で、ちょっとした操作をするだけで構築できます。
フルマネージドのサービスのため、データのバックアップや高可用性(HA)構成、
セキュリティなどの不具合が発見された時のアップデートなど、Google Cloud側で行ってくれます。

sts-tetsu

他のリレーショナルデータベースより安価でちょっとしたWEBアプリケーションや業務アプリケーションを作成する際に利用するデータベースですね。

2.AlloyDB

Google I/O 2022で発表されたPostgreSQL互換のフルマネージドリレーショナルデータベースです。
※2022年12月15日より一般提供が開始されました。

Cloud SQLと同様にフルマネージドのリレーショナルデータベースですが、
AlloyDBは、高可用性や高いパフォーマンスが求められるアプリケーション向けのデータベースです。
Googleが独自に開発した「カラム型エンジン」と「AlloyDBに組み込まれた機械学習」によって、
高いパフォーマンスを実現しています。

sts-tetsu

カラム型エンジンって何?
1行ごとにデータを扱うのではなく、列でデータを扱うそうです。

本ブログサイトにCloud SQLとAlloyDBを比較した記事がありますのでご覧ください。
第1回:AlloyDB の概要、性能検証編

第2回:可用性検証、まとめ編

3.Cloud Spanner

Cloud Spannerは、分散型・強整合性のフルマネージドのリレーショナルデータベースです。
グローバルにインスタンスを分散させることができ、負荷に応じて無限にスケーリングできます。
インスタンスがグローバルに分散しているにも関わらず、
強整合性のトランザクションを提供しているのが特徴です。

sts-tetsu

スケールって?って方に、以下の本サイトの記事を一緒に読むとオススメ。
英語で学ぶIT用語 スケール/スケーラビリティ

NoSQL型データベース

1.Cloud Datastore

Cloud Datastoreは、フルマネージドのNoSQL型のデータベースです。
現在は、Cloud Firestoreの一部として提供されています。

Cloud Datastoreのデータは、エンティティと呼ばれる単位で管理され、エンティティには1つのキーと複数のプロパティを格納します。また、エンティティは、カインドと呼ばれるカテゴリに分類して管理します。

リレーショナルデータベースで言うと、エンティティはレコード、キーは主キー、プロパティはカラム、カインドはテーブルでしょうか。
スキーマレスのため、プロパティは、エンティティ毎に異なっていても大丈夫です。

NoSQL型のデータベースですが、SQLライクなクエリの実行やトランザクションもサポートされています。

sts-tetsu

普段はリレーショナル型を使っている人にとって、ピンとこないと思いますが、スキーマレスってのが一番の特徴ですね。ドキュメントなど非構造型のデータを扱う時に便利ですね。

2.Cloud Bigtable

Cloud Bigtableは、毎秒何百万ものリクエストを処理できるNoSQL型のフルマネージドのデータベースです。
テラバイト級の大量のデータを管理するために使用し、
Google検索やGoogleマップなど多くのGoogleサービスで利用されています。

sts-tetsu

大規模なアプリケーション向けですね。

データウェアハウス

1.BigQuery

BigQueryは、フルマネージドのデータウェアハウスで、
数テラバイトから数ペタバイトのデータを扱うことができます。
さまざまなアプリケーションで生成されたデータを集めて格納し、
データを分析するといったような用途に使用します。
また、天気情報や企業情報など、さまざまなデータがマーケットプレイスで公開されており、
アプリケーションのデータと組み合わせて分析に使用することもできます。

sts-tetsu

巨大なデータの倉庫って感じですね。

まとめ

今回の記事では、それぞれのデータベースの特徴について、簡単にまとめました。
実際に利用する際には、料金、パフォーマンス、セキュリティ、保守性など
もっと細かなことが気になる方もいらっしゃると思います。

もっと詳細にまとめることも考えたのですが、
入門者にとってそれぞれの情報量が多いと混乱しますよね。
なので、簡単な特徴とポイントのみに絞りました。
私も経験がない中で、これ以上の情報は覚えられません。

最後に、それぞれの最低限、覚える必要のある特徴をまとめたいと思います。

データベース

分類

覚える特徴

Cloud SQL リレーショナル 標準となるリレーショナルデータベース。一般的なアプリケーション向け。
AlloyDB リレーショナル 高い信頼性を必要とする業務アプリケーション向けのリレーショナルデータベース。
Cloud Spanner リレーショナル グローバルで大規模なアプリケーション向けのリレーショナルデータベース。
Cloud Datastore NoSQL ドキュメントなど非構造データ向けのNoSQL型のデータベース。
Cloud Bigtable NoSQL 大規模なアプリケーション向けのNoSQL型のデータベース。
BigQuery データウェアハウス さまざまなデータを蓄積し、データ分析に使用するデータウェアハウス。
sts-tetsu

最後までご覧いただきありがとうございました。

Google Cloud導入についてのお問い合わせはこちら

2022年12月27日 【Google Cloud】データベースの特徴を覚えるぞ(クラウド入門者向け)

Category Google Cloud

ご意見・ご相談・料金のお見積もりなど、
お気軽にお問い合わせください。

お問い合わせはこちら