企業内のあらゆるデータを継続的に収集・蓄積する仕組み、データ基盤。
データ基盤を運用していると、社内ユーザーから「データ基盤内のデータが古い。もっと最新のデータを使いたい」などと、いわゆるリアルタイムデータを要求する声があがってくることと思います。実際、CData もそうしたお問合せをよく頂戴します。
確かにビジネス環境の変化が目まぐるしい現代においては前日と翌日とで状況が一変している、などということもあり得ます。
そういう意味では前日のデータではなく、可能な限り今この瞬間のデータを利用したい!という気持ちは理解できますし、そもそも前日のデータからは前日のことしかわかりませんから、社内ユーザーの声はもっともだと言えます。
ですが、社内ユーザーが求めてやまないリアルタイムデータをデータ基盤にレプリケーション(複製)するには、1時間などの一定間隔で行うバッチレプリケーションではまず実現できません。
データレプリケーションツールCData Sync(2023年Q4 リリース版)のように継続的レプリケーションの仕組みが必要です。
バッチレプリケーションとタイムラグ
どうしてバッチレプリケーションではリアルタイムデータをデータ基盤に反映することがむずかしいのでしょうか?
例えば、各データソースからデータ基盤へのデータレプリケーションを1時間ごとに実施していたとします。
この場合、現在進行形で行われているデータレプリケーション中に発生したデータソース側のデータ変更は、現在のレプリケーションが1分で終わろうが59分で終わろうが、現在のデータレプリケーションが開始した時刻からきっちり1時間後に行われる次のレプリケーション以降にしかデータ基盤に反映されません。
つまり、データソース側のデータ変更がデータ基盤に反映されるまでにタイムラグが生じます。
このタイムラグがあるので、バッチレプリケーションではリアルタイムデータをデータ基盤に反映することがむずかしいのです。
ではタイムラグを解消するにはどうしたらよいのでしょう?
それには継ぎ目なくデータソース側の変更をデータ基盤に反映し続ける、継続的レプリケーションの仕組みが必要になります。
10分間隔と1分間隔でもだいぶ違う
この継続的レプリケーションを実現するため、CData Sync(2023年Q4 リリース版)ではスケジューラーの設定について、これまで最小10分間隔だったところ、最小1分間隔から行えるようになりました!
10分と1分で、そんなに変わるものなのか?比較してみたいと思います。
1回目のデータ取得の直後にデータソース側でデータ変更がかかり、この変更は次(2回目)のデータ取得・複製でデータ基盤側に反映されることとします。
10分間隔の場合(先ほど1時間間隔の例でも触れたとおり)1回目のデータ取得・複製が例えば20秒で完了した場合であっても、次のデータ取得・複製が開始するのは1回目のデータ取得からきっかり10分後になりますので、データ取得も複製もしていない9分40秒のタイムラグを経て、ようやくデータソース側のデータ変更がデータ基盤に反映されます。
一方で1分間隔の場合、1回目のデータ取得・複製が20秒が完了した場合、40秒間のタイムラグは発生するものの、9分40秒のタイムラグに比べればとても短い間隔でデータソース側のデータ変更がデータ基盤に反映されます。
10分と1分でだいぶ違いますよね?
実際にはデータレプリケーションが二重実行されないように前回のレプリケーションが終了していない場合には、予定していた次のレプリケーションはキャンセルされます。
とはいえ、1分間隔のデータレプリケーションの場合、次に予定しているレプリケーションがすぐに行われるため、社内ユーザーが求めるリアルタイムデータを利用したいというニーズに近いデータ基盤を実現できそうです!
差分更新とCDC 機能でよりリアルタイムに!
上記のとおり継続的レプリケーションの仕組みを利用することで、データソース側のデータ変更がデータ基盤に反映されるまでのタイムラグを短縮することが可能です。
さらに、CData Sync の差分更新やCDC 機能も併用すると、よりリアルタイム性が向上すると思います。
差分更新とは、2回目以降のデータレプリケーションにおいてデータソース側で変更のあったものだけを対象とすることで、レプリケーションにかかる時間を短縮することができる機能のことです。
CData Sync がサポートしているデータソースのうち、差分更新に対応しているものは下記ページの各データソースのアイコンの右上に青い星印(★)がついているものです。https://www.cdata.com/jp/sync/connections/#sources
青い星印(★)が無いデータソースについても、下記記事の方法で差分更新が可能です。
差分更新未対応のデータソースでもCDataSyncで差分更新させる方法
CDC(変更データキャプチャ)機能とは、データソースがデータベースの場合に利用可能な機能で、データベース側のデータ変更を変更履歴を蓄積するなど通常より追跡しやすくしておくことで、データ変更箇所の確認からデータレプリケーションまでにかかる時間をCDC 機能を使わない場合に比較して短縮することができる、そんな機能です。
CDC 機能については下記の記事がくわしいです。ご一読ください!
Change Data Capture(CDC)とは?CDC の基本からCData Sync のCDC 機能まで詳しく解説
バッチから継続的レプリケーションへ
最新のデータで意思決定を行いたい。
そんなニーズを満たす最小1分間隔からデータレプリケーションを行えるCData Sync は30日間無償トライアルを提供しております。
Windows 11 などのデスクトップOS のマシンでもご利用いただけますので、ぜひ1分間隔の継続的レプリケーションをお試しいただければうれしく思います!
関連コンテンツ