BigtableによるDatastoreの実装
Datastoreのエンティティテーブル
- Datastoreのエンティティテーブルとは
- Datastoreのエンティティを保存するBigtableのテーブル
- 個々のエンティティは、「エンティティキー」で識別される
- 個々のエンティティのプロパティ内容は、すべて1つのカラムにシリアライズされて格納される
- よってインデックスを作らない限りプロパティ内容に基づくクエリ、フィルタ、ソートなどは実行できない
- Datastoreではセルの履歴保存を使えない
- エンティティキー
- エンティティキーは、「エンティティが所属するエンティティグループのルートエンティティまでのパス」を含む
- 辞書順でソートされている
/Grandparent:Alice /Grandparent:Alice/Parent:Sam /Grandparent:Ethel /Grandparent:Ethel/Parent:Jane /Grandparent:Ethel/Parent:Jane/Child:Timmy /Grandparent:Ethel/Parent:Jane/Child:William /Grandparent:Frank
- プロパティの特徴
- variable properties
- エンティティごとにプロパティの数や種類を変えることができる
- heterogenous property types
- エンティティごとにプロパティの型を変えることができる
- (JDO経由でこれらを使えるか不明)
- multi-value properties (List Property)
- 1つのプロパティに複数の値を保存できる
- variable properties