4

2 つの Oracle データベースがあります。1 つは製品顧客データベースです。もう 1 つはテスト データベースです。Test データベースは、データのない本番環境のコピーです...空のテーブルです。サンプルデータセットを本番データベースからテストにコピーするための効率的かつ効果的な方法を考え出そうとしています。

Customer テーブルの PK のサンプル リストから始めて、テスト データベースの Customer テーブルにそのサンプルを入力するプロセスを作成する必要があります。次に、サンプルに基づいて関連データを子テーブルに入力する必要があります。

以前は、準備されたステートメントを使用して本番環境からデータを選択する Java プロセスがありました...結果セットに基づいてファイルを作成し、更新ステートメントを使用してそれをテスト データベースに取得しました。それは恐ろしく非効率的でした。

私は DBA ではないので、その領域についてはあまり知りません。データベース リンクに関する情報を Google で検索しようとしましたが、良い例が見つかりませんでした。

これを行う方法を知っている人はいますか...または、少なくとも出発点を教えてください。

4

4 に答える 4

5

十分なスペースがある場合は、本番データ全体をコピーしてテストすることをお勧めします。管理がはるかに簡単になり、バックアップをテストする (バックアップから新しいインスタンスに復元する) 良い機会にもなります。

開発者の観点からは、代表的なデータ セットがなければ、アプリケーションのパフォーマンスを確実にテストすることはできません。このデータ セットには、本番データと同じプロパティ (データ ボリューム、物理的分布など) が必要です。これを実現する最も簡単な方法は、本番環境と同じデータをテスト環境に置くことです。

ダウンタイムを許容できる場合は、運用データベースを停止し、ファイルをテスト サーバーにコピーして、両方のデータベースをマウントできます。ダウンタイムを許容できない場合は、DBA のスキルを習得することをお勧めします (最終的にはホット バックアップについて学び、新しいインスタンスに復元します)。


expdp更新: データベースを物理的にコピーできない場合は、 and impdp(または古いexp/ )を使用してデータを一括コピーする方法を検討する必要がありますimp。すべてのスキーマをコピーするか、エクスポート時にデータをフィルタリングできます。この場合、適切な WHERE 句を手動で選択します。一括でのエクスポートとインポートは、データを行ごとにコピーするよりも桁違いに高速です。

于 2011-04-19T17:21:15.927 に答える
3

業界のシナリオと製品を指摘したいだけです..解決策ではなく、@aintnoprophetが言及した参照用の入力です

「私は DBA ではないので、その領域についてはあまり知りません。データベース リンクに関する情報を Google で検索しようとしましたが、良い例が見つかりませんでした。」

このユース ケースは、テスト データ管理システムに関連しています。この概念は、特定のテスト シナリオの特定のテスト ケースに入るテスト データを管理する方法が必要であるという事実を扱います。大量のデータからデータのサブセットを手動で作成することは非常に困難です。人的ミスの可能性が大幅に増加します。そのため、複数回のテスト反復で繰り返されるデータのサブセット化は、すぐに管理不能になります。

特にエンタープライズの例では、多くのユースケースがあります -

http://www.compuware.com/resources/mainframe/Fileaid_clientserver.pdf

http://www.erphome.net/wdb/upload/forum1_f_8007_1227768589.pdf

これらは巨大な企業データ用です。

オープン ソースの tdm ツールhttp://sourceforge.net/projects/opentdm/がありますが、Java にはありません (良いかどうかはわかりません)。

お探しの商品がございましたら(参考までに)

于 2011-04-19T17:40:38.733 に答える
3

本番環境の完全なコピーであるテスト データベースは、バグを洗い流すためのサブセットよりもはるかにうまく機能します。ほとんどの人は、完全なコピーを作成する時間とリソースがないためサブセット化しますが、仮想データ (コピー データ管理) によってすべてが変わりました。このようなシステムでは、本番環境のコピーを 1 つ取り込み、シン クローン コピーを数分で作成できます。余分なストレージはほとんど必要ありません。また、このシステムは通常、データを圧縮するため、取り込みコピーは元のサイズの 1/3 になり、数分で高速更新できるという利点があり、破壊テストに最適です。また、機密データが本番環境から開発およびテストに渡されることを望まないため、マスキングと統合される傾向があります。このエリアには多くのベンダーがあります。手始めに、Netapp SMO、Actifio、Oracle Snap Clone、Delphix をチェックしてください。これらのほとんどは、障害となる可能性のある特殊なハードウェアを必要とします。Delphix は完全にソフトウェアであり、ダウンロードできる Delphix Express と呼ばれる無料バージョンもあります。同様のテクノロジーは、Rubrick と Cohesity によって VM イメージに使用されています。

おめでとうカイル・ヘイリー

于 2016-05-23T13:55:19.553 に答える
1

これは、あなたが探しているのはJailerのようです。リレーショナル データベースから、一貫性のある、参照的に完全な行セットをエクスポートします。

于 2011-05-16T13:40:31.083 に答える