変更データ・キャプチャーとは

倉庫でノートPCを使って作業する女性。

執筆者

Alice Gomstyn

Staff Writer

IBM Think

Alexandra Jonker

Staff Editor

IBM Think

変更データ・キャプチャーとは

変更データ・キャプチャー(CDC)は、データベース内のデータ変更を特定・記録する手法です。CDCはこれらの変更をリアルタイムでさまざまなターゲット・システムに届け、データベースの変更発生直後に組織内のデータ同期を可能にします。

 

変更データ・キャプチャーは、組織内でサイロ化または不整合が生じている可能性のあるデータを統合・調和させる役割を果たす、リアルタイム・データ統合の手法です。その他の手法には、ストリーム・データ統合、データ・バーチャライゼーション、アプリケーション統合があります。

CDCがシステムをリアルタイム(かつ低遅延)で最新の状態に保つ能力は、リアルタイム・データ分析、クラウド移行、さらにはAIモデルの成功に不可欠です。小売、金融、ヘルスケアなど多様な業界で幅広く活用されており、不正検知、サプライチェーン管理、規制遵守の支援に役立っています。

変更データ・キャプチャーには複数のアプローチがあり、ログベースCDC、タイムスタンプベースCDC、トリガーベースCDCが最も一般的です。企業は、データベース・ネイティブ・ツール、オープンソース・プラットフォーム、サードパーティ製ソリューションを活用して変更データ・キャプチャーを導入できます。

ニュースレターを表示しているスマホの画面

The DX Leaders

「The DX Leaders」は日本語でお届けするニュースレターです。AI活用のグローバル・トレンドや日本の市場動向を踏まえたDX、生成AIの最新情報を毎月お届けします。

変更データ・キャプチャーのメリットとは

現代のデータ管理において、変更データ・キャプチャーは重要なデータ・エンジニアリングの仕組みとして登場しています。現在、企業を取り巻くデータ環境はますます大規模かつ複雑になっています。これらには、モノのインターネット(IoT)デバイス、分散データベース、アプリケーション、その他多様なソースからのデータが含まれている可能性があります。拡大するデータ・エコシステム全体で一貫した高品質データを維持することは継続的な課題です。

同時に、ビジネスはリアルタイムの意思決定に活用できる、正確で最新の情報を求めています。変更データ・キャプチャーは、組織がこの要求に応えるための複数の手法の一つです。

変更データ・キャプチャーは、他のデータ統合手法よりも効率的でリソース消費の少ない形で新鮮なデータを提供する低遅延データ・パイプラインを可能にします。例えば、データ複製は、データセット全体をコピーすることを指します。これに対し、CDCは変更されたデータのみを送信するため、ソース・システムの負荷やネットワーク・トラフィック、計算リソースの要求を削減します。

これにより、最新かつ最も正確な情報に迅速かつ効率的にアクセスできるようになり、以下を含む複数のメリットが得られます。

リアルタイムの意思決定

リアルタイムのデータ変更ストリームは、リアルタイム・データ分析やビジネス・インテリジェンスを可能にします。これらの機能により、企業は今日の時間に敏感で24時間365日のビジネス環境の要求に対応できます。

成功するクラウド移行

クラウド移行の際、CDCはオンプレミスで発生したデータ変更を迅速に関連するクラウド・ベースのデータ・テーブルに届け、両環境間の整合性を確保します。この機能により、移行中のシステムのダウンタイムも最小限に抑えられます。

ETLプロセスの改善

ETL(抽出、変換、ロード)データ・パイプラインは、データ分析および機械学習のワークストリームに不可欠です。しかし、バッチ処理に依存するETLの実行は、処理速度が遅く、システム・リソースに負荷をかける傾向があります。CDCをETLに組み込むことで、リソースの使用を最適化し、データ移動を加速できます。

人工知能(AI)パフォーマンスの向上

変更データ・キャプチャーを実装することで、モデルのソース・データを最新の状態に保ち、大規模言語モデル(LLM)が正確でタイムリーな出力を提供できるようになります。例えば、検索拡張生成(RAG)のユースケースでは、AIモデルが外部のナレッジ・ベースと連携して、より適切な応答を実現します。

オフィスでミーティングをするビジネスチーム

IBMお客様事例

お客様のビジネス課題(顧客満足度の向上、営業力強化、コスト削減、業務改善、セキュリティー強化、システム運用管理の改善、グローバル展開、社会貢献など)を解決した多岐にわたる事例のご紹介です。

変更データ・キャプチャーの仕組み

変更データ・キャプチャーは、さまざまなデータ・ソースで発生する変更イベントを特定し記録します。これらのソースには、Oracle、PostgreSQL、MySQL、MicrosoftのAzure SQL、MicrosoftのSQL Serverなどのリレーショナル・データベースや、Apache CassandraやMongoDBなどの非リレーショナル(NoSQL)データベースが含まれます。

変更が特定された後、それらはソース・データベースからリアルタイムまたは準リアルタイムでターゲット・システムに転送されます。データ・レイクデータ・ウェアハウスなどのデータ・ストア、Apache KafkaやApache Sparkなどのリアルタイム分析およびストリーミング・データ・プラットフォーム、さらにETL(抽出、変換、ロード)およびELT(抽出、ロード、変換)ソリューションは、すべてターゲット・システムの例です。

変更データ・キャプチャーは、ターゲット・システムによって開始される「プッシュ」方式か、ソース・システムによって開始される「プル」方式のいずれかで実行されます。前者では、ソース・システムが変更を「プッシュ」してターゲット・システムに送信します。後者では、ターゲット・システムが定期的にソース・システムをポーリングし、変更が見つかった場合に「プル」します。

変更データ・キャプチャーの一般的な方法

変更データ・キャプチャーを実行する方法はいくつかあります。一般的なCDCの種類には、次のものがあります。

  • ログベースのCDC
  • タイムスタンプベースのCDC
  • トリガーベースのCDC

ログベースのCDC

データベース・トランザクション・ログはデータベースの標準機能であり、すべてのデータベース・トランザクションを記録するために使用されます。(トランザクション・ログ・ファイルは、システム障害時にデータベースを復旧するために使用されます。)

ログベースのCDCでは、CDCアプリケーションがログに記録されたデータベースの変更を処理し、更新情報を他のシステムと共有します。ログベースCDCは、ソース・システムのパフォーマンスを低下させる可能性のあるクエリではなくログに依存しているため、人気が高まっています。しかし、トランザクション・ログの形式の違いは、異なるデータベース間でのログベースCDCの実行を複雑にする可能性があります。

タイムスタンプベースのCDC

タイムスタンプベースの変更データ・キャプチャー(クエリベースCDCとも呼ばれる)は、データベース・テーブルのスキーマに、レコード変更の日付と時刻を示すタイムスタンプ列などのカラムがあることを前提としています。CDCツールは、ソース・テーブルのタイムスタンプ列を使って変更されたレコードを特定し、その後ターゲット・システムに更新情報を届けることができます。

タイムスタンプベースCDCは導入が比較的容易ですが、タイムスタンプ・データのポーリングが頻繁に行われると、システムに追加の負荷がかかる可能性があります。タイムスタンプベースCDCは、行全体とともにタイムスタンプが削除された場合、削除操作を検知できないこともあります。

トリガーベースのCDC

トリガーベースの変更データ・キャプチャーでは、データベース内で挿入、削除、更新などの特定の変更が発生すると、データベース・トリガーと呼ばれるストアド・プロシージャーや関数が実行されます。変更されたデータは、一般にチェンジ・テーブルまたはシャドウ・テーブルと呼ばれる場所に保存されます。

タイムスタンプベースCDCと同様に、トリガーベースCDCも実装が比較的容易です。しかし、トリガーはソース・テーブルでトランザクションが発生するたびに「発動」するため、ソース・システムに負荷がかかる可能性があります。

変更データ・キャプチャー・ツール

変更データ・キャプチャーを実行するツールには、AWS Database Migration Serviceのように特定の環境やデータベース・システムにネイティブなものもあれば、より広範に導入されるものもあります。ネイティブでない変更データ・キャプチャーのソフトウェア・ソリューションには、Debeziumなどのオープンソース・プラットフォームや、IBM StreamsetsやOracle GoldenGateなどの商用プラットフォームがあります。

企業がどのソリューションを選択するか検討する際には、価格、ソース・システムおよびターゲット・システムへのコネクター、システム統合のためのアプリケーション・プログラミング・インターフェース(API)などの要素を考慮する場合があります。

変更データ・キャプチャーのユースケース

企業はさまざまな用途で変更データ・キャプチャーをデプロイできます。

不正アクセス検知

変更データ・キャプチャーを活用して財務記録の変化を継続的に追跡することで、大きな損失が発生する前に不正行為を検出できます。

モノのインターネット(IoT)の実現

CDCは、IoTデバイスから生成される膨大なリアルタイム・データを効率的に統合し、予知保全やリアルタイム監視を可能にします。

インベントリーとサプライチェーン管理

変更データ・キャプチャーによってサポートされるリアルタイムの販売、在庫、サプライチェーン情報へのアクセスは、企業が品切れを回避し、利益を生む価格設定の判断を下すのに役立ちます。

法規制への準拠

変更データ・キャプチャーは、高度に規制された企業が報告および規制・法律(GDPRサーベンス・オックスリー法(SOX法)、米国のHIPAAなど)への準拠に必要な正確な記録を維持するのに役立ちます。

関連ソリューション
IBM StreamSets

直感的なグラフィカル・インターフェースでスマートなストリーミング・データ・パイプラインを作成、管理できるため、ハイブリッド環境やマルチクラウド環境でのシームレスなデータ統合を促進します。

StreamSetsの詳細はこちら
IBM Databand

データ・パイプライン用の可観測性ソフトウェア、IBM Databandをご紹介します。メタデータを自動的に収集して履歴ベースラインを構築し、異常を検知し、データ品質の問題を修復するためのワークフローを作成できます。

Databandはこちら
データ統合ソリューション

IBMのデータ統合ソリューションを活用して、生成AIへの取り組み、リアルタイム分析、ウェアハウスのモダナイゼーション、運用上のニーズに合わせて、レジリエンスがあり高性能でコスト最適化されたデータ・パイプラインを構築しましょう。

データ統合ソリューションの詳細はこちら
次のステップ

データ・パイプラインの設計、開発、デプロイのための視覚的なインターフェースを提供するETL(抽出、変換、格納)ツール、IBM DataStageをご紹介します。IBM Cloud上でのマネージドSaaSやセルフホスティングとして、またはIBM Cloud Pak for Dataへのアドオンとして利用できます。

データステージを探索 分析サービスの詳細はこちら