2011-09-08 10 views
2

私はPython GAEのモデルの約900,000個のエンティティを、オフラインテストのためにCSVファイルにエクスポートしたいと考えています。 appcfg.py download_dataオプションを使用できますが、この場合はローカルマシンにバックアップしたくありません。 GAEでファイルを作成し、Google Storageや他の場所に保存し、後で複数のマシンからダウンロードする方が早い。PythonのGoogle App Engineでは、モデルのすべてのエンティティをGoogle Storageの開発者用ファイルにエクスポートするにはどうすればよいですか?

私は、この操作を完了するために30秒以上かかる可能性が高いため、タスクでこれを行う必要があると仮定しています。

class MyModel(db.model): 
    foo = db.StringProperty(required=True) 
    bar = db.StringProperty(required=True) 

def backup_mymodel_to_file(): 
    #What to do here? 
+0

どのように? – NullUserException

答えて

2

あなたの最良のオプションは、Googleのストレージに完成したファイルをアップロードし、その後、ブロブストアに関連するデータをエクスポートするmap reduce libraryを使用するようになります。

Google StorageとApp Engineの統合は進行中の作業であることに注意してください。

+0

mapreduceを使用してエンティティデータをブロブストアにエクスポートする例はどこにありますか?私はBlobstoreへのエクスポートの例を見つけることができますが、mapreduceは使用しません。 – Chris

+0

[BlobstoreOutputWriter]を使用してください(http://code.google.com/p/appengine-mapreduce/source/browse/trunk/python/src/mapreduce/output_writers.py#516)(作家の使用方法はapparrentになるはずです基本的な地図作成のフレームワークとワークフローを学んだ後で)。 –

+0

注文を維持するか、最終結果をソートするオプションはありますか?そうでない場合は、順序を維持する唯一の方法は、BLOBstoreの書き込みをタスクの一部として実行することですか? – Chris

0

私はこれが古いですけど、私はここでクラウドストレージへのApp EngineマッパーAPIダンプデータストアのデータを使用した例を掲載:関連するエンティティに関する Google App Engine: Using Big Query on datastore?

関連する問題