4

私は以下を使用して、私の種類の1つのすべてのインスタンスをダウンロードしています。

appcfg.py download_data --config_file=bulkloader.yaml --kind=ModelName --filename=ModelName.csv --url=http://appid.appspot.com/remote_api

種類にバッチサイズよりも多くのインスタンスがある場合、次の警告が表示されます。

No descending index on __key__, performing serial download

カスタムインデックス、またはインデックスが無効になっているプロパティがありません。

この警告を解決するために何かをする必要がありますか、それとも単に無視できる警告ですか?ダウンロードの速度に影響しますか?

バルクローダーに関するこの記事では、サンプル出力に警告メッセージが含まれていますが、それについては言及されていません。

App Engineグループに関するこの投稿では、インデックスを作成する必要があると述べています。ただし、インデックスを追加すると、エンティティへの書き込みが遅くなります。データの一括ダウンロードを行うよりも頻繁にエンティティを書き込むため、これは行いません。

ありがとう。

4

3 に答える 3

6

エラーが説明しているように、ダウンロードしているモデルの降順インデックスがない__key__場合、バルクローダーは連続してダウンロードする必要があります。説明どおりにインデックスを追加すると、並行してダウンロードできるようになります。そうしないと正常に動作しますが、シリアルで動作するため、ダウンロードが遅くなります。

インデックス行はエンティティの書き込みと並行して書き込まれるため、追加のインデックスはレイテンシーにわずかな影響しか与えないことに注意してください。

于 2010-11-18T23:11:12.977 に答える
2

このコードをindex.yamlに追加して、この問題を解決しました

kind: books
- properties:
  name: __key__
    - direction: desc
kind: books
- properties:
  name: another_indexes_here
于 2011-05-26T07:08:24.490 に答える
0

JAVAとdatastore-indexes.xmlファイルを使用している場合。

これを(種類の名前が「Books」であると仮定して)datastore-indexes.xmlファイルに追加します。

<datastore-index kind="Books" ancestor="false" source="auto"> 
    <property name="__key__" direction="desc"/> 
</datastore-index>

次に、アプリを再デプロイします。データストアの[インデックス]タブをチェックして、がサービスを提供していることを確認してください__key__。その後、ダウンロードを再試行できます。

于 2011-06-11T13:18:58.423 に答える