2014-01-17 12 views
5

私はマルチテナントGAE/Jアプリケーションを使用しており、Google Cloud Storageにcronベースの夜間バックアップを実装しています。バックアップは、索引を主な構成とする合計15GBのデータで、簡単で安価です。マルチテナントアプリケーションでGAE/Jバックアップと復元を最適化する

しかし、テスト復元を実行した後、いくつかの観察があり、推奨事項を探しています。

  1. 私のバックアップ/復元戦略では、1つの名前空間からの復元が必要ですが、GAEでは復元時に名前空間を指定することはできません。
  2. 私はこの目的のために作成した仲介アプリケーションにすべてのデータを復元する必要があります。
  3. この計画では、データ損失が発生したネームスペースで、欠落しているエンティティの2次バックアップを実行する必要があります。
  4. 最後に、その特定のデータセットを私のライブアプリケーションに復元します。

上記の作品が、それは次のようになります。

  1. 高価な:私は主に、不要な名前空間を含んでなる、復元のために支払います。
  2. 必要であれば、私は独立してそれらにアクセスできるよう

に回避策を消費する時間は別に、各名前空間のバックアップを指定しています。しかし、私はネームスペースのリストをどこかに維持しなければならないという考えは本当に好きではありません。

私はGAEBARについて読んでいますが、Javaアプリケーションには当てはまりません。

他の誰かがこの分野で実用的な経験や推奨事項を持っているかどうかは知りたいですか?

+0

の一覧が表示されます私はかなり理解していなかったごめんなさい、あなたはバックアップを実施している/ロジックを復元自分自身や組み込み機能を使用していますか? "ただし、リストアで名前空間を指定することはできません"とはどういう意味ですか? – jirungaray

答えて

0

を(もちろん、最善の解決策は、Googleが複数の名前空間クラウドバックアップの中から単一NSの復元をサポートするかどう)私のバックアップは/戦略を復元する唯一の の名前空間からの復元含むが、GAE のリストア中に名前空間を指定することはできません(バックアップの場合も同じですが)。

これは、名前空間がエンティティのキ​​ーでエンコードされているためです。特定の名前空間にあるオブジェクトのみを指定すると、それらのエンティティのみが更新されます。

しかし、 の名前空間のリストをどこかに維持する必要はありません。

あなたは、この種の「名前空間」を照会することができ、それはあなたの名前空間

SELECT * FROM __namespace__ 
関連する問題