データストア

Google クラウドプラットフォームでは複数のストレージサービスがあります。

ここで紹介する「データストア」というのは、グーグルクラウドプラットフォームのサービス群のうちの、"Cloud Datastore" のことです。

後述の通り、クラウドデータストアは、スキーマのないオブジェクトデータベースです。

もしあなたが、通常のリレーショナルデータベースサービスをお探しなら、Google Cloud SQL の方もあわせてどうぞ。

Google App Engine が提供するデータストア

"Cloud Datastore" は オブジェクト データベース というものであり、通常の RDBMS ではありません。スキーマのないデータベースです。

2010年5月19日(PDT)、Google I/O というイベントにて "Google App Engine for Business" が発表され、 このプランでは将来的に、 SQL データベースのサポートを行うという発表が行われました。そちらについては、Google Cloud SQLをご覧ください。

データベースのオブジェクトは「エンティティ」

用語内容
エンティティ (entity)データベースに格納されるオブジェクトのこと
キー (key)システム全体でエンティティを識別するために使うデータ

キーは、アプリケーション ID (application ID)、kind、エンティティ ID で構成される。

プロパティ (property)エンティティが持つデータ
ひとつのプロパティに対して、最低ひとつのデータが格納される。複数の値を保持することもできる これをマルチバリュー・プロパティ (multivalued properties) という。

API の種類

App Engine では現時点で Python と Java のインターフェイスが用意されています。

言語インターフェイス
PythonGQL
Next DB モジュール (ndb)
JavaJava Data Objects (JDO)
Java Persistance API (JPA)

データストア・ローレベル API を利用した場合の、エンティティの保存、取得方法と JDO のデータクラスとの関係については、 次の資料を参考にしてください。

Google App Engine のデータストア・ビューア

Google App Engine の管理画面には、データストア・ビューアがあります。

これによって、現在格納されているエンティティを確認、表示したり削除したりできます。