Insight Technology

2017.04.19

Delphixとは一体何なのか?

このエントリーをはてなブックマークに追加
Delphixとは一体何なのか?

Delphixとは何者か?

「Delphixとは何ですか?」と多くの人から聞かれるようになりました。

頻繁にこの質問をされるようになってきた背景のひとつは、Delphixの知名度が上がってきたことにあります。

Delphixは「フォーチュン」の名を連ねる企業に採用されており、No.1とも言える Walmartで使われています。また、ソーシャル ナンバーワン企業である Facebookでも使われていますし、米国No.1の銀行 Wells Fargoでも使われています。ネットワーキング No.1の Cisco、No.1のケーブルプロバイダ Comcast、No.1オークションサイトEbay、No.1保険会社New York Life、No.1 CPU企業 Intelでも使われています。

この記事では、Delphixが登場してわずか数年でナンバーワン企業に採用された背景なども交え、Delphixを紹介したいと思います。

Delphixは何をするのか?

データベースに携わってきた過去20年以上にわたる経験の中で、Delphixはソフトウェア開発やアプリケーション開発の質とスピードを改善するための最も強力な製品と言えます。

Delphixは、膨大な数のサーバーやそれらを考慮した開発環境を整備するための時間、テスト環境を準備するための膨大な作業から解放してくれます。開発環境で重要なことは、本番環境のデータベースのコピーがあることです。Delphixは、本番環境の仮想コピーを瞬時に作成し、テスト環境や開発環境の準備を数分で完了させてくれます。しかも、Oracleや SQL Serverなどのデータベース環境や、アプリケーション、ファイルの複製を、ストレージをほとんど持つことなく、数分で作成できるのです。

Delphixとは何か?

Delphixは 仮想化ソフトウェア上で動作するソフトウェアです。ストレージの管理を行い、ソース・データベースからの変更にも適用します。データベースにおいては、 NASのような存在というのがわかりやすいでしょうか。

Delphixはデータベースの複製をNFS経由で実行するため、ソース・データベースのデータを閲覧します。複製されたデータベースは Delphix上で全ての重複ブロックを共有し、変更されたブロックだけがプライベートとして維持されます。さらに、Delphixに保管されたデータを圧縮し、複数の複製されたデータベース間のデータを共有し、重複ブロックを組織化することで、変更を加えたデータベースに対し、変更されたブロックをプライベートとして維持します。その結果、Delphix上のソースデータから、ストレージ・オーバーヘッドをほとんど必要とすることなく、数分で複製を作成することができるのです。この作業は、Oracleなどがインストールされているあらゆるハードウェア上で動作し、複製されたデータベース・インスタンスは NFSを経由して Delphix上のデータファイルを参照します。

Delphixによるテストサイクルの効率化

1.開発者にも操作しやすいGUI設計

Delphixは自動化されているため、全ての操作は GUIでマウスを数回クリックするだけで実行できます。また、CLI経由でコマンド操作を行うことも可能です。

Delphixの動作はとても簡単なので、開発者は、Oracleまたは SQL Serverを知らなくてもデータベースの複製を行うことができます。
開発チームのメンバー全員にデータベースのコピーを提供できるだけでなく、コピーを共有することによる支障をなくします。

2.サブセットを使うことにより起こるバグの回避

ある顧客は開発のためにサブセットを使うことをやめました。Delphixの完全な仮想データベースを使い始めたことでバグを20%削減できたそうです。さらに、開発者がそれぞれ自分用のデータコピーを持つことで、他の開発者に妨害されることなくコーディングを行うことも可能になります。ある会社ではDelphixを導入する前には開発者が共有DBに変更を加えるのを 1~2週間も待っていたそうです。今まで、テストチームが膨大な時間を費やし QAデータベースを構築し、テストを行っていた代わりに、数分で大量のコピーを作成することができるようになりました。

また、何社かの顧客は QAサイクル時間の 90%以上を QA環境を構築するのに費やし、QAサイクル時間の 10%以下の時間を実際の QA業務に費やしたといいます。Delphixを使えば、QAサイクル時間の 99%を実際の QAに費やすことができるのです。QAのスピードアップのおかげで、5倍ものROIを達成することができました。

3.効率的なバックアップ処理

Delphixは、初回作成した仮想コピーの後、再度コピーを作成することはありません。初回以降は変更情報だけを取り込むため、効率的にバックアップ処理を行います。また、間違った変更をデータに加えた場合、変更前のデータに復元させることもできます。

効率的なバックアップを行うことで、週末に完全なコピーを作成する必要がなくなるため、数多くの顧客のネットワークを週末業務から解放します。

Delphixはどのように機能するのか?

Delphixは仮想マシンで動作するソフトウェアです。数分でインストールが完了し、Webインターフェイスを使い、構成を整えます。インストール後、Delphixが利用するストレージを指定します。設定が完了するとアサインされたあらゆるストレージを使用することができます。Delphixはそのストレージ上に DxFSと呼ばれる Delphix自体のファイルシステムをマッピングします。このDxFSファイルシステムはスナップショット作成、クローン作成、そして圧縮の全作業をバックエンドで行います。

これらの設定が完了すると、ソース・データベースマシンをDelphixに登録することができます。マシンが登録されれば、そのマシン上でソース・データベースにリンクすることができます。リンクするというのは、RMAN API経由で Delphixにソース・データベースの初回の完全バックアップを取ることを意味しています。全ての RMAN APIはバックグランドで自動的に作動し、Delphixのユーザーには見えません。Delphixユーザーにとっては、グラフィック インターフェイスを数回クリックするだけです。

このリンクが完了すると、Delphix上の RMANバックアップは通常 3分の 1にまで圧縮されます。Delphixはその後バックアップを再度取ることはありません。それ以降設定されたスケジュールに沿ってバックグランドで作動する RMAN APIを使い、ソース データベース上の変更を収集します。これらの変更は Delphixに持ち込まれると、既存のバックアップと融合され、即座にソース データベースの完全なバックアップへのアクセスを提供します。オプションとして、SCNからの RMANバックアップの代わりに、2番目または SCNまでクローンを作成するための、再実行ストリームの収集を行うこともできます。

よって、Delphixはデータベース コピー間の全ての重複データ ブロックを共有することによって、ストレージ オーバーヘッドがほとんどなくても Oracleデータベースのコピーを数分で作成できます。重複データ ブロックを共有することはストレージ消費を大幅に減らし、DBAのファイルコピーという反復作業から解放し、革新的な業務に集中できるようにします。さらに、デベロップメント、QA、そして報告を提供することの障害に費やされる時間とリソースを除去することで、プロジェクトのデベロップメントを加速させるのです。

Delphixがあれば、エンドユーザがソース データベースのどの時点からでも数分でデータベースを準備することができ、製作時に起きる問題の前に簡単に戻り、その問題の前のデータを取り出すか、または製作に問題が起きた時点での製作物の完全なコピーを取り出し、断続する問題の分析を簡単に行えるようにします。

データベースの複製を簡単に!これがDelphixの正体の一部です。

ページトップへ