Delphixブログ

Delphixブログ>開発者それぞれに必要なデータベースを複数提供する仕組みとは

  • 初級編
2017.11.09

開発者それぞれに必要なデータベースを複数提供する仕組みとは

開発者それぞれに必要なデータベースを複数提供する仕組みとは

開発者それぞれで欲しいデータは異なりますよね?

月末時点のデータや、特定のバッチ処理の前後のデータといったように、開発者にとって欲しいデータが異なるため複数のデータを準備する必要があります。

Delphixは本番データベースを一度Delphixサーバに取り込んだ後であれば、好きな時点のデータを何個でも開発環境に提供することができます。開発者の目的に合わせ、必要なデータを利用者それぞれに提供できるため、非常に便利ですよね。

今回はなぜ、任意の時点のデータを複数提供できるのか?その仕組みを紹介します。

本番データベースの変更情報はDelphixが自動で取得・管理

更新処理によって発生する本番データベースの変更情報はどのように管理するのでしょうか。実はDelphixは2種類の方法を用いて、変更情報を管理しています。

尚、複製対象のDBMSの種類によって変更情報の管理の仕方は異なります。以下はデータベースがOracleの場合の管理方法を記載しています。

Delphixにおける変更情報の管理方法

SnapSync(スナップシンク)は、本番データベースの定期的なスナップショットです。Delphixが定期的に情報を取得しており、デフォルトでは1日1回取得しています。一方、LogSync(ログシンク)は更新情報がはいったログを随時取得しています。

開発者が欲しい時点のデータを瞬時に仮想データベースとして複製

本番データベースで発生する変更情報は自動でDelphixサーバに取得されています。そのため、「月末時点のデータ」や「夜間バッチ実行前のデータ」といったように開発者が欲しい「時間」、「状態」のデータを複数提供することが可能です。

仮想データベースの複製イメージ

従来の方法(物理コピーの取得)では欲しい時点が複数ある場合、本番データベースのバックアップや変更履歴のログを保管・管理しておき、データベースのリストア・リカバリを複数回実行して欲しい時点のデータを準備する必要がありました。

コスト・時間の面で考えると従来の方法を実施するのはハードルが高いですよね。しかし、DelphixであればDelphixサーバに最新のデータを保持しているため、欲しい時点のデータを簡単に複製することができます。

開発環境に複製された仮想データベースは更新可能

Delphixによって開発環境に複製された仮想データベースですが、もちろん更新することが可能です。

Delphixは最初に本番データベースをDelphixサーバに取り込みます。そして、取り込んだ本番データベースのマッピング情報をもとに仮想的なデータベースをDelphixサーバ内に生成します。生成された仮想データべースはメタデータなので、実データは保持していません。

Delphixはこの生成した仮想データベースを開発環境にNFSマウントさせて利用します。

仮想データベースの更新イメージ

開発環境で発生する更新処理はDelphixサーバの領域に確保された、仮想データベース専用の差分領域に保持されます。そのため、取得したデータベースの初期バックアップのデータに影響を与えることなく、開発環境のデータベースを更新することができます。

専用の差分領域でデータを管理しているので、開発環境のデータベースを更新するだけでなく、データベースを以前の状態(更新前の状態)に戻すといった操作も可能です。Delphixのすごい機能は他にもありますので、別の記事で紹介しますね。

まとめ

Delphixは本番データベースを自動的にDelphixサーバに取り込みます。

本番データベースで発生する変更情報もDelphixが管理しているため、開発・テスト担当者が欲しい状態のデータ(例えば、月末時点のデータや、特定のバッチ処理の前後のデータ)を仮想データベースとして複製することができます。

複製された仮想データベースは更新可能です。そのため、テストフェーズ(結合テスト、システムテスト、運用テスト)や、本番環境の設定変更前の検証、本番同様のデータを使用したトレーニング用途としても利用することが可能です。

編集後日記

先日、部屋の中にコオロギがいました。東京にもコオロギいるんですね。
  コオロギの鳴き声に秋の訪れを感じながら・・・私はそっと眠りにつきました。

関連している記事

  • 初級編
2018.01.19

開発の「作業待ち」を減らすDelphixのデータベース共有機能

Delphixのデータ共有機能を使えば、開発/テストの「作業待ち」時間を減らすことができます。

  • 初級編
2017.12.22

マスキングを標準化しよう!Delphixのマスキング機能でできること

Delphixのマスキング機能は事前に用意されたマスキング・アルゴリズムを利用してデータのマスキングを行います。今回はそのアルゴリズムの種類や動作を検証しましたので、結果をご案内します。

  • 初級編
2017.12.12

テストデータ準備の業務プロセスを変革するDelphixの「Jet Stream」機能とは

Delphixの「Jet Stream(ジェット ストリーム)」を使用すれば、テストデータ準備に時間をかける必要はなくなります。テスト担当者自身で自由かつ簡単にデータを生成できるのです。

カテゴリ一覧

Delphixハンズオンセミナー Delphix事例集のダウンロード

ページの先頭へ戻る