データ仮想化 (フェデレーション)
Db2 データ仮想化 (フェデレーションとも呼ばれる) は、Db2 Warehouse on Cloud によってサポートされます。 データ仮想化によって、組織内の任意の場所にある複数の分散データベース上にあるすべてのデータに対して単一照会アクセスが可能になります。 クラウドとオンプレミスの両方の Db2 または Informix のデータ・ソースにあるデータにアクセスできます。
この機能はすべてのバージョンの Db2 Warehouse on Cloud でサポートされています。
ユースケース
データ・ソースの統合
クラウドに配置されたデータと組織のオンプレミス・データをフェデレートすることで、仮想化データは単一のソースから取得されているように見えます。 データ仮想化によって、煩雑でコストのかかるデータ・マイグレーションの作業 が軽減され、ユーザーは高い効率と費用効果ですべてのデータを分析することが可能になります。
Db2 on Cloud への接続
Db2 ファミリー製品のユーザーは、 Db2 on Cloud および Db2 Warehouse on Cloud データベースのデータを統合できます。 一般的なインター フェースを使用してデータにアクセスしてデータを簡単に追加、照会、および分析することができ、複 雑な ETL プロセスや追 加コードは必要ありません。
制限を超えたデータベース容量の拡張
フェデレーションでは、クラウド上のデータベースと連携することにより、オンプレミス・ データベースの容量を増やすことができます。 このケースにおけるデータ仮想化は、オンプレミス・データベースのストレージが不足し ている 場合に最適です。 フェデレーションによるデータベース容量の拡張は、新規開発にも役立ちます。なぜな ら、開発者は本番環境のデータベースを変更する必要がないからです。 2 つの Db2 Warehouse on Cloud データベースを統合すると、Flex プランの現在の制限を超えてデータベースの容量を増やすこともできます。
概要
以下の手順では、分散したデータ・ソースを統合し、あたかも 1 つのデータ・ソースからデー タを取得しているように見せる方法を例示します。 2 つの Db2 Warehouse on Cloud データベースをフェデレーションする例を以下に示します。
Db2 Warehouse on Cloud ターゲット・マシン上:
ホスト名: targetdotcom
-
スキーマ
testdata
にテーブルadmin2
を作成します。 -
ユーザー
testdata
として、パスワードadmin2
を使用して、Db2 Warehouse on Cloud コンソールからデータが入ったYYYY
テーブルをロードします。
フェデレーション・ソースとして使用されている Db2 Warehouse on Cloud マシン上:
Db2 Warehouse on Cloud コンソールから、以下を行います。
-
ターゲット・マシンと通信するためのサーバーを作成します。
create server <server_name> type dashdb version 11 wrapper drda authorization "<admin_user_on_target>" password "<admin_password_on_target>" options (host '<target_host_name>', port '50000', dbname 'bludb')
以下に例を示します。
create server db2server type dashdb version 11 wrapper drda authorization "admin2" password "YYYY" options (host 'targetdotcom', port '50000', dbname 'bludb')
-
admin2 用のユーザー・マッピングを作成します。
create user mapping for <admin_user> server db2server options (remote_authid '<admin_user_on_target>', remote_password '<admin_password_on_target>')
以下に例を示します。
create user mapping for admin1 server db2server options (remote_authid 'admin2', remote_password 'YYYY')
-
データベースのニックネームを作成します。
create nickname <nickname> for <server_name>.<schema_name>.<table_name>
以下に例を示します。
create nickname ntest1 for db2server.admin2.testdata
-
ターゲット・サーバーからデータを取得できることをテストします。
select * from <nickname>
以下に例を示します。
select * from ntest1
追加情報
データ仮想化 (フェデレーション) について詳しくは、フェデレーションを参照してください。
フェデレーションでサポートされるデータ・ソースについては、フェデレーションでサポートされるデータ・ソースを参照してください。