SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けに、EnterpriseZine Day、Security Online Day、DataTechという、3つのイベントを開催しております。それぞれ編集部独自の切り口で、業界トレンドや最新事例を網羅。最新の動向を知ることができる場として、好評を得ています。

最新イベントはこちら!

Data Tech 2024

2024年11月21日(木)オンライン開催

EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けの講座「EnterpriseZine Academy」や、すべてのITパーソンに向けた「新エバンジェリスト養成講座」などの講座を企画しています。EnterpriseZine編集部ならではの切り口・企画・講師セレクトで、明日を担うIT人材の育成をミッションに展開しております。

お申し込み受付中!

EnterpriseZine(エンタープライズジン)

EnterpriseZine編集部が最旬ITトピックの深層に迫る。ここでしか読めない、エンタープライズITの最新トピックをお届けします。

『EnterpriseZine Press』

2024年秋号(EnterpriseZine Press 2024 Autumn)特集「生成AI時代に考える“真のDX人材育成”──『スキル策定』『実践』2つの観点で紐解く」

xDB Replication Server解説

xDB Replication Server解説


 前回、「Postgres Plus 9.3 いかに進化したのか検証してみた」と題してPostgreSQLに未実装のエンタープライズ向け機能を強力に補完したRDBMSである「Postgres Plus 9.3」の技術情報をご紹介しました。(Postgres Plus 9.3 いかに進化したのか検証してみた)。続く本稿では、Postgres Plus Enterprise Edition(以下、PPEE)のデータ連携機能「xDB Replication Server」の詳細をご紹介します。

レプリケーション機能の利用シーン

 レプリケーションとは、あるデータベース・サーバのデータと同じ内容の複製(レプリカ)を異なるデータベース・サーバに作成し、つねに内容を同期させる機能を指します。主に負荷分散や耐障害性の向上などを目的に利用します。

 PPEEに実装されるxDB Replication Serverはテーブル単位でデータを複製する機能で、1つのマスタサーバと1つ以上のスレーブサーバで構成するシングルマスタレプリケーションと、複数のマスタサーバで構成するマルチマスタレプリケーションをサポートしています。シングルマスタレプリケーションは商用RDBMSとの連携もサポートしており、様々な用途で利用することができます。今回は、シングルマスタレプリケーションの利用シーンをいくつかご紹介します。

 1)Web系サービス

 インターネット系サービスのバックグラウンドは、図1のように3階層で処理を分散しながら、各階層が横にも展開できる構成になっているのが一般的です。WebサーバやAPサーバはデータを持たないため、ビジネスの成長に合わせてサーバを追加しシステム全体の処理能力を強化することが比較的簡単ですが、データベースはデータを保持するためサーバの追加は容易ではありません。Oracle Real Application Clusters(以下、RAC)のようなアクティブ‐アクティブ構成を採用できればデータベースは1つのままでデータを処理するサーバを追加可能ですが、システム規模などによっては採用が厳しい実情があります。

 このような場合にAPサーバからの処理を一時的に引き受けるフロントデータベースを複数のPPEEで構築し、そのバックエンドにOracle Databaseを配置します。例えば、ショッピング系サイトで処理全体の約9割を占めるといわれる「商品検索」の参照系処理を顧客IDをキーにしてPPEEへ振り分けることで負荷分散し、「商品購入」の更新系処理はOracle Databaseで行います。Oracle Databaseで管理されている商品情報等をxDB Replication Serverを介してPPEEへリアルタイムに連携することで参照負荷を分散させた構成を実現します。

▼図1:Web系サービス
図1:Web系サービス
 2)基幹システムからサブシステムへのデータ連携

 マスタデータを管理する基幹システムと周辺システムとの間でデータを受け渡すといった複数システム間のデータ連携は多くのシステムで必要不可欠になっています。これまでは、基幹システムから周辺システムへのデータ取り込みは主に夜間バッチが中心だったため、担当者が最新データを確認できるのは最短で翌朝という状態でした。このタイムラグを抑えるために担当者が基幹システムに直接アクセスしてしまうと、基幹システムへの負荷の集中が課題になります。

 図2のようにxDB Replication Serverを利用することで各支店などのサブシステムに必要なデータのみをリアルタイムに連携できるため、各システムで常に最新データの参照を可能にし、マスタデータへのアクセスも防止します。

▼図2:基幹システムからサブシステムへのデータ連携
図2:基幹システムからサブシステムへのデータ連携
 3)DWH処理をオフロード

 急激なデータ量増加とタイムリーで正確な情報分析への要求も増大し続ける中、これまで日単位から週単位で設定されていたデータウェアハウスへのデータロードのバッチ処理に可能な限り最新データが求められるようになり、オンライン処理と同一のサーバでデータウェアハウス処理が行われているケースも少なくありません。その場合、処理によってサーバ負荷が高くなるという課題があります。

 図3のようにデータウェアハウス処理に必要なデータのみを切り出して参照用データベースへ配置し、xDB Replication Serverを介してデータ連携を行うことで、オンライン処理への影響を最小限に抑えながら最新データによる情報分析を可能にします。また、参照用データベースのテーブルデータはパーティション機能で複数の子テーブルへ分割配置することで、パーティション・プルニングによってアクセス対象のデータが絞り込まれディスクI/Oを抑制できます。さらに各子テーブルをそれぞれ異なるディスクへ配置することで検索性能の更なる向上を図ります。

▼図3:DWH処理をオフロード
図3:DWH処理をオフロード
 4)災害対策

 ITと事業そのものが切り離せない関係となっている現在、システムの継続性はそのまま事業の継続性に直結します。そのため事業やシステム規模に関わらず、多くの企業で災害対策が検討されています。

 xDB Replication Serverではテーブル単位(またはフィルタリングした特定の行データ)で連携できるため、遠隔地のバックアップ・データベースに重要なデータを配置しxDB Replication Serverを介して差分データのみを適宜連携します。大掛かりな災害対策がすぐに実施できない企業ではデータ保全の有効策と言えます。

▼図4:災害対策
図4:災害対策
 5)データベース移行

 システムの中核であるデータベースを移行する場合、どのような方法で移行するか、システム停止時間を最小化するにはどうすればよいかなど多くの課題があります。

 Oracle DatabaseからPPEEへ切り替える場合、PPEEで提供されているMigration Toolkit(以下、MTK)を利用します。MTKではストアドプログラムを含むOracle Databaseの主要オブジェクトが移行対象となっており、オブジェクト定義(DDL)とデータの一括移行に加え、定義またはデータのみの移行やスキーマ単位の移行など範囲を限定した移行も可能です。また、図5のように更新が行われないテーブルはMTKを利用して事前に移行しておき、切り替え直前まで更新処理が発生するテーブルはxDB Replication Serverで移行先へリアルタイムにデータを反映させることで、データ移行時のシステム停止時間を最小に抑えることができます。

▼図5:データベース移行
図5:データベース移行

 次項では、データベース間でデータを連携できるxDB Replication Serverの仕組みをご紹介します。

次のページ
xDB Replication Serverのアーキテクチャ

この記事は参考になりましたか?

  • Facebook
  • X
  • Pocket
  • note
この記事の著者

高瀬 洋子(タカセ ヨウコ)

 株式会社アシスト データベース技術本部 アシスト入社後、Oracle Databaseのサポート業務を経て、2009年よりPostgreSQL、EDB Postgresのサービス立ち上げに参画。2017年4月にイギリスから日本へ拠点を戻し、海外イベントで得た情報などを活かしてEDB Postgre...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

EnterpriseZine(エンタープライズジン)
https://enterprisezine.jp/article/detail/6102 2014/09/22 15:49

Job Board

AD

おすすめ

アクセスランキング

アクセスランキング

イベント

EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けに、EnterpriseZine Day、Security Online Day、DataTechという、3つのイベントを開催しております。それぞれ編集部独自の切り口で、業界トレンドや最新事例を網羅。最新の動向を知ることができる場として、好評を得ています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング