0

次のプロパティを持つ基本的な User モデルが ndb にあるとします。

```

name = ndb.StringProperty(default='')
username = ndb.StringProperty(required=True)
email = ndb.StringProperty(default='')
active = ndb.BooleanProperty(default=True)
admin = ndb.BooleanProperty(default=False)
permissions = ndb.StringProperty(repeated=True)
verified = ndb.BooleanProperty(default=False)
token = ndb.StringProperty(default='')
password_hash = ndb.StringProperty(default='')
bio = ndb.StringProperty(default='')
location = ndb.StringProperty(default='')
facebook = ndb.StringProperty(default='')
twitter = ndb.StringProperty(default='')
gplus = ndb.StringProperty(default='')
github = ndb.StringProperty(default='')

```

フィールドに対して LIKE クエリを実行したいとしましょうname username bio

NDB と検索 API に関するこの回答を読みましたが、検索 API を介してのみ保存name username bioし、NDB に残り、手動で一貫性を維持する必要があるのか​​ 、それとも検索 API を介してすべてのプロパティを保存する必要があるのか​​ が明確ではないため、データを取得することができますより速く/より簡単に。

あらゆる種類の提案をありがとう:)

4

2 に答える 2

3

重要なデータはすべて Datastore に保存する必要があります。それは冗長性と回復力を備えています - それはあなたの「マスター」です。

次に、データを Search for... に渡す必要があります... 待ってください... 検索中! これには、Datastore レコードの ID が含まれる場合があります。

検索ドキュメントに存在するよりも多くのフィールドが必要な場合は、バッチ取得を介して Memcache または Datastore から完全なデータ オブジェクトを取得できます。

于 2015-03-10T20:28:56.427 に答える