Skip to Content
Technical Articles

Real-time data replication to Data Warehouse Cloud

(English version)

 

はじめに

こちらのブログで、Data Warehouse CloudからS/4HANA、オンプレミスSAP HANA、SAP HANA Cloudへの接続設定を行いました。また、こちらのブログでは、S/4HANAのCDS ViewのデータをData Warehouse Cloudへスナップショット複製して可視化しています。

本ブログでは、リアルタイムでData Warehouse Cloudにデータを複製してみます。ソースシステムとしてオンプレミスのSAP HANAを使用します。

 

以下の流れで行います。

  1. Data Warehouse CloudにGraphical Viewを作成する
  2. SAP HANAからData Warehouse Cloudにデータをリアルタイムで複製する
  3. データ件数確認用のストーリーを作成する
  4. ソース側でデータを更新し、データがリアルタイムに連携されることを確認する

* 本ブログは英語表記画面でキャプチャを取得していますが、ユーザー設定で日本語表記とすることも可能です。

 

 

1. Graphical Viewを作成する

まず、左のメニューアイコンから”Data Builder”を選択し、接続定義が作成されているSpaceを選択します。

“New Graphical View”を押下してViewを作成します。

左のペーンでViewのソースをリポジトリ(Data Warehouse Cloudのテーブル・Viewを参照)、ソースシステム(接続先システムのオブジェクトを参照)から選択することが可能です。本ブログでは、”Sources”を選択し、オンプレミスSAP HANAにあるテーブルを選択します。

“Sources”を選択すると、SAP HANAのスキーマが表示されます。

今回は”TPCH”スキーマにある”LINEITEM_2″テーブルを使用します。

“LINEITEM_2″テーブルをドラッグ&ドロップしてインポートします。

Viewの”Business Name”、”Technical Name”を入力します。今回はデータ件数確認用のストーリーを作成するので、”Type”を”Analytical Dataset”に、”Allow Consumption”を”ON”にします。

データ件数を確認するためにデータ件数確認用の項目を追加します。ターゲットの”LINEITEM VIEW”を選択し、表示されるメニューから”Calculated Columns”のアイコン(fxアイコン)を選択します。

右上の”+”ボタンを押下し、”Calculated Column”を追加します。

”Technical Name”を入力し、”Expression”に”1″を入力します。各行ごとに数値”1”の項目が作成されるため、これを合計することで行数が表示されるようになります。

再度”LINEITEM VIEW”に移り、数値項目の”…”を押下して”Change to Measure”を選択することで、数値項目を”Measure”として定義します。

先ほど作成した”Calculated Column” “CNT”も含め、数値項目をMeasureとします。全て単純に合計するため、集計タイプは”SUM”とします。

他にも階層の定義、演算項目の定義、フィルタ、他テーブルとの結合、など様々なデータの加工・演算が可能ですが、本ブログではこのままとし、保存、デプロイします。

ターゲットを選択して”Data Preview”を押下すると、データのプレビューが表示されます。この時点ではデータはData Warehouse Cloudには保持せず、随時ソースシステム(オンプレミスSAP HANA)に問い合わせに行きます。

“Data Builder”に戻ると、保存したGraphical Viewと、そこで使用されたソーステーブル(今回はCDS View)がオブジェクトとして一覧に表示されます。

 

 

2. データを複製する

前のステップで作成したGraphical Viewに対してレポート(ストーリー)を作成することも可能です。この場合は問い合わせのたびに毎回オンプレミスSAP HANAにアクセスしてデータを取得します。

一方、よりパフォーマンスを考慮しデータをData Warehouse Cloudに複製することも可能です。本ブログではデータをリアルタイムに複製してみます。

* 現時点(2020年5月)ではデータ複製のみですが、本年度中(2020年中)にデータフロー機能が提供される予定で、これによりデータ抽出時にデータの加工変換などを行ういわゆるETL処理が可能となります。

左のメニューアイコンから、”Data Integration Monitor”を選択します。

先ほど作成したテーブル(SAP HANAのテーブルを参照しているテーブル)が表示されています。”Data Access”列で”Remote”と”Replicated”が選択できます。

  • Remote : Data Warehouse Cloudにデータは持たず、随時ソースシステムにアクセスする
  • Replicate : ソースシステムからData Warehouse Cloudにデータ複製する

ここで設定を”Replicate”に変更します。

“Data Frequency”として”None”と”Real-Time”が選択可能です。ここでは”Real-Time”とします。

  • None : スナップショットとしてデータを保持します。データソースが更新されてもスナップショットを更新しない限りData Warehouse Cloud側は更新されません
  • Real-Time : ソースシステムで発生した変更をリアルタイムにData Warehouse Cloudに連携します

データの複製(初期ロード)が開始され、終了するとステータスが”Active”となります。これでリアルタイムでの複製状態となりました。

 

 

3. 件数確認用ストーリーを作成する

ソースシステムでデータが更新されたことを確認するために、簡単なストーリーを作成します。左のメニューアイコンから”Story Builder”を選択します。スペースが表示されますので、Graphical Viewを作成したスペースを選択します。

“Create Story”を押下し新しいストーリーを作成します。

データソース選択画面にて、先に作成したGraphical Viewを選択します。

チャート、テーブル、地図など、様々なコンポーネントを使用してストーリーを作成することが可能です。

ここでは、チャートを作成します。 チャートは”Indicator” > “Numeric Point”とし、”Measure”として”CNT”を選択します。

現在のデータ件数が表示されます。ストーリー作成が完了したら保存します。

 

4. ソースシステムでデータを更新する

ソースシステム(オンプレミスSAP HANA)でデータを更新します。今回はデータを2件追加します。

先ほど作成したストーリーを更新します。

データが2件追加されていることが確認できます。ほぼリアルタイムにソースシステムで更新されたデータがData Warehouse Cloudに転送されました。

 

 

さいごに

以上で、ソースシステム(オンプレミスSAP HANA)からData Warehouse Cloudにリアルタイムでデータを複製する、という流れをご紹介しました。

通常システム間のデータ連携を行うにはETLの設定を行い、ETLジョブを作成し、ETLジョブを実行する、という流れが必要ですが、Data Warehouse Cloudではシステム接続設定(DP Agentの設定)さえしてしまえば、あとはON/OFFの設定だけでデータを複製するかしないか、複製する場合はスナップショットかリアルタイム連携か、を実現できることがおわかりいただけたと思います。

 

 

 

Be the first to leave a comment
You must be Logged on to comment or reply to a post.