2016-10-25 7 views
0

大量のデータを移行する必要があります。 特定のサイズのバッチでデータを移行したいとします。さらに、各反復はトランザクションをコミットし、実際にデータを挿入する必要があります。liquibaseでのループ移行

liquibaseでは、何もせずに条件がない限り(つまり、各パックの後にトランザクションがコミットされる)、1つのチェンジセットを繰り返すことはできますか?

私は何をする必要がありますか?

私はどんな解決策を見つけることができません...

+0

ようこそスタックオーバーフロー!あなたは最初に[ツアー]を受け、良い質問をして[mcve]を作成することができます。そうすれば、私たちがあなたを助けやすくなります。 – Katie

答えて

0

LiquiBaseをが実際にデータを移行するために設計されていませんが、それは主にデータベーススキーマ/構造の移行を目指しています。

データ移行の性質によって、さまざまなツールを検討する必要があります。

  • データベースが(?すなわち、彼らは両方のOracle 12である)ではない
  • 移行はどのくらいの頻度で起こるんのと同じタイプです:?ツールを選択する前に答えるためにいくつかの質問には、のようなものが含ま(これは1回限りの移行か、定期的に行われる必要があるものですか)
  • 移行はまっすぐなコピーか、変換が必要なのですか?
  • あなたは、データが「大」であったと言いますが、それは異なる人々に非常に異なることを意味する可能性があります。 1 GB、1 TB、1 PBですか?
+0

1. 1つのDBへの移行 - PostgreSQL。 2.一度の移行です。しかし実際には、私たちのアプリケーションはKarafで動作しています。コアバンドルの開始時に、リキビエートチェンジセットが実行されます。そのため、サードパーティのプログラムは適切ではありません。 3.移行の本質 - ある列を「偽」値で更新します。 4.テーブル自体のサイズは18 GBです。 1つのトランザクションですべてのレコードを更新すると、約2時間かかります。そのようなダウンタイムは生産性には余裕がありません。 私はJavaコードでこの移行を行うことができますが、私はliquibaseの助けを借りてこれをしたいと思います。 – Sergey