0

GAE プラットフォームは頻繁に変更されるため、さまざまな記事を読み、2013 年にデータをエクスポート/アップロードするための最良の方法を少し混乱させました。バルク アップロード ツールは、ドキュメントのとおり、高レプリケーション ストア向けではありません。

このドキュメントは、マスター/スレーブ データストアを使用するアプリに適用されます。アプリが高レプリケーション データストアを使用している場合、アプリからデータをコピーすることは可能ですが、Google は現在、このユース ケースをサポートしていません。

以下の特定のシナリオについてコメントしてください。golang ランタイムを使用する予定ですが、これがバックアップ/復元に影響しないことを願っています。

  1. 初期 (シード/テスト) データを使用してデータストアをロードする方法。たとえば、管理者としてログインし、csv/json ファイルからデータストアにデータをロードする必要があるとします。

  2. データストア管理者: この実験的な機能は、バックアップ/復元を目的としていると思います。GO ランタイムで動作しますか? バックアップ ファイルが保存される形式。json でできますか?

ありがとう。

4

1 に答える 1

0

私は AppEngine でいくつかのアプリを実行していますが、私の経験から、DB に既存のデータを最初に入力する最も簡単な方法は、アプリケーション ファイルと共に .json ファイルをインクルードし、次を使用することです。

with open( 'yourdata.json', 'r') as file :
    data = json.loads( file.read() )

データを取得してから、必要な DB エンティティを再作成します。.json ファイルは不要になったため、次にアプリケーションをアップロードするときに削除できます。

BlobStoreバックアップに関しては、バックアップを作成して、または他のクラウド スペースに保存できる Datastore Admin がありますが、ダウンロードして再度アップロードするのは非常に不便であることがわかりました。数十の異なるファイルがあり、忘れたり、忘れたりするのは非常に簡単です。何かを逃します。

したがって、独自のバックアップ ルーチンを作成して、データを に保存することをお勧めしますBlobStoreが、1 つのファイルに保存することで、ファイルの欠落や忘れを心配することなく、簡単にダウンロードして再アップロードできます。

バックアップ ファイルの作成は非常に簡単BlobStoreです。書き込み用にファイルを開き、モデルを繰り返し処理して .json に変換し、ファイルに書き込みます (必要に応じて (g)zip でその場で圧縮しBlobStoreます)。

于 2013-03-23T02:27:16.433 に答える