Skip to main content

はじめに

Databricks は、組織が大量の構造化データおよび半構造化データを、高いスケーラビリティと効率性で保存、分析、処理できるプラットフォームです。独自のアーキテクチャにより、組織はデータを統合し、迅速な分析を実行して、すべてのユーザーがアクセスできる価値あるデータドリブンなインサイトを得ることができます。

MoEngage <> Databricks

この統合により、キャンペーンインタラクションイベントのデータをDatabricksテーブルにエクスポートできます。

配信方法

MoEngageは、次の2つの方法でイベントデータをDatabricksに配信します。
  • OpenSharing(ゼロコピー共有): ワークスペースから、Delta Sharingプロトコルを通じてMoEngageがホストするデータをその場でクエリします。こちらが推奨される方法です。
  • 直接エクスポート: MoEngageがお客様自身のスキーマ内のテーブルにイベントを書き込みます。ワークスペースでUnity Catalogが有効になっていない場合は、この方法を使用します。
どちらの方法でも同じテーブルスキーマが生成され、1時間ごとに更新されます。次の表で両者を比較します。
2つの方法は別々のストレージレイヤーを使用します。直接エクスポートで既に配信されたレコードはOpenSharingカタログには表示されず、その逆も同様です。方法を切り替えるには、MoEngageカスタマーサクセスマネージャー(CSM)にお問い合わせください。

統合

前提条件

前提条件は、選択する配信方法によって異なります。該当する方法のタブをクリックしてください。
  • DatabricksワークスペースでUnity Catalogが有効になっていることを確認してください。
  • <cloud>:<region>:<metastore-id> 形式の共有識別子を取得してください。詳細については、ステップ1: 有効化をリクエストするを参照してください。
  • OpenSharingエクスポートはStreamsアドオンの一部です。アカウントで有効にするには、担当のMoEngage CSM(カスタマーサクセスマネージャー)にお問い合わせください。

エクスポートを設定する

  • イベントと属性の完全なリストについては、データエクスポート用語集を参照してください。
  • エクスポートされるイベントのevent_timeは常にUTCです。
  • MoEngageは過去のデータのエクスポートをサポートしていません。データはエクスポートを有効にした時点から送信されます。
セットアップ手順は配信方法によって異なります。使用する方法のタブをクリックしてください。
OpenSharingでは、ファイルベースのエクスポートを受け取る代わりに、ワークスペースからDelta Sharingプロトコルを通じてMoEngageがホストするデータを直接クエリします。認証情報や書き込みトークンをやり取りする必要はなく、クエリは常に最新のデータを読み取ります。既存のSQLエディター、ノートブック、BIダッシュボードから、標準的なUnity Catalogのワークフローを通じて共有カタログをクエリできます。次の図は、MoEngageとワークスペースの間でデータがどのように移動するかを示しています。MoEngageが分離されたカタログ、共有、受信者をプロビジョニングし、安全なDelta Shareを介してDatabricksワークスペースに接続され、読み取り専用カタログとしてマウントしてライブでクエリする様子を示すアーキテクチャ図ステップ1: 有効化をリクエストするOpenSharingをリクエストするには、次の手順を実行します。
  1. Databricksワークスペースのサイドバーで、Catalog をクリックします。
  2. Share をクリックし、OpenSharing をクリックします。 Shareメニューが開き、OpenSharingオプションが表示されているDatabricksのCatalogページ
  3. OpenSharing ページで、Sharing ID をクリックして共有識別子をコピーします。 Sharing IDボタンが強調表示されたDatabricksのOpenSharingページ
共有識別子をMoEngage CSMに送信します。ステップ2: 共有を承認するMoEngageは通常、7営業日以内に共有をプロビジョニングします。その後、CSMからデータ共有の名前が送られてきます。共有を承認するには、次の手順を実行します。
  1. Databricksワークスペースで、Catalog > OpenSharing をクリックし、Shared with me タブをクリックします。 Shared with meタブが強調表示され、利用可能なプロバイダーが一覧表示されているDatabricksのOpenSharingページ
  2. CSMから送られてきた名前に一致するMoEngageプロバイダーをクリックします。
  3. 共有の横にある Mount to catalog をクリックします。 Mount to catalogボタンが強調表示されたMoEngage共有を表示するDatabricksのプロバイダーページ
  4. カタログ名(例: moengage_shared_data)を入力し、確定します。
ステップ3: エクスポートを設定するMoEngageでエクスポートを設定するには、次の手順を実行します。
  1. MoEngageダッシュボードの左側のナビゲーションメニューで、App marketplace をクリックします。
  2. App marketplace ページで Databricks を検索し、Databricks タイルをクリックします。
  3. Integrate タブをクリックします。
MoEngage App Marketplaceで新しいDatabricksエクスポートを追加するの説明に従ってエクスポートを作成します。Export into schema リストで、共有カタログのスキーマを選択します。リストには、CSMから共有されたものと同じ値が表示されます。OpenSharingでは接続が自動的にプロビジョニングされるため、MoEngageから接続、サービスプリンシパルの認証情報、書き込みアクセス権の入力を求められることはありません。ステップ4: データをクエリする共有カタログに最初の行が表示されるまでに最大30分かかる場合があります。データを確認するには、次の手順を実行します。
  1. 次のクエリを実行します。
    プレースホルダーを、お使いのカタログ名、スキーマ名、テーブル名に置き換えてください。
  2. Catalog Explorer をクリックします。 Shares receivedの下にマウントされたmoengage_shared_dataカタログとそのスキーマおよびテーブルを表示するDatabricksのCatalog Explorer
  3. テーブルをクリックし、Sample Data をクリックします。
Catalog Explorerでは、共有カタログがそのスキーマとテーブルとともに Shares received の下に一覧表示されます。Sample Data ビューでは、レコードと属性の定義をプレビューできます。MoEngageにスキーマの説明を依頼したい場合は、CSMに技術的なスキーマレビューをリクエストしてください。ステップ5: 組織内のアクセスを管理する共有カタログはお客様自身のインフラストラクチャ内にあるため、Unity Catalogを通じてアクセスを制御します。データを必要とするユーザーまたはグループに、USE CATALOG 権限と SELECT 権限を割り当ててください。MoEngageはカタログへの書き込みアクセス権を持たず、どちらの当事者もいつでも接続を終了できます。ワークスペースの設定や共有識別子を変更すると配信が中断される可能性があるため、変更がある場合はCSMにお知らせください。

MoEngage App Marketplaceで新しいDatabricksエクスポートを追加する

この手順は両方の配信方法で使用します。OpenSharingでは接続が既に存在するため、スキーマ、イベント、属性を選択するだけです。 新しいDatabricksエクスポートを追加するには、次の手順を実行します。
  1. MoEngageダッシュボードの左側のナビゲーションメニューで、App marketplace をクリックします。
  2. App marketplace ページで Databricks を検索します。 Databricksタイルが表示されたMoEngage App Marketplaceの検索結果
  3. Databricks タイルをクリックします。
  4. Databricks ページで Integrate タブをクリックし、+ Add Export をクリックします。
  5. 次の詳細を入力します。 エクスポート名、Databricks接続、エクスポート先スキーマ、Unity Catalog Volume、ユーザープロパティ、イベント選択の各フィールドを表示し、Saveボタンが強調表示されたDatabricksへのエクスポート設定フォーム
  6. Save をクリックします。

エクスポートのプロセスと頻度

どちらの配信方法も1時間ごとに更新され、手動で同期ジョブを実行する必要はありません。 直接エクスポートの場合、MoEngageはエクスポートを保存した後にお客様のスキーマ内に宛先テーブルを作成し、1時間間隔で新しいイベントデータを追加します。
  • 初回のアクション: 最初のエクスポートがトリガーされたときに、MoEngageがテーブルを作成します。
  • 定期的なアクション: MoEngageは1時間ごとに同じテーブルにデータを追加します。
OpenSharingの場合、MoEngageは共有データセットを1時間ごとに更新します。クエリはデータの現在の状態を読み取るため、お客様側にMoEngageが書き込むテーブルはありません。

テーブル構造のサンプル

MoEngageは、次の形式で単一のテーブルを作成します。
moe_events_<table_creation_timestamp>
直接エクスポートの場合、このテーブルはお客様のスキーマ内に作成されます。OpenSharingの場合は、マウントした共有カタログ内に表示されます。 注: このテーブルは接続ごとに作成されます。この接続で設定されたすべての1時間ごとのエクスポートと異なるイベントタイプは、この特定のテーブルに統合されて追加されます。 テーブルの全体的な構造は、すべてのイベントタイプで固定されています。新たにエクスポートされるユーザープロパティやイベント属性は、それぞれuser_attributes列またはevent_attributes列に含まれます。すべてのイベントは、分析しやすいように、イベント名やイベント時刻などの必要な情報を含む単一のテーブルに統合されます。 スキーマは両方の配信方法で同じです。列名のカスタマイズはサポートされていません。

よくある質問

通常、アカウントで自動データエクスポートが設定され、データが表示され始めるまでに最大30分かかります。
はい。後から新しいイベントをエクスポートする必要がある場合は、いつでもApp Marketplaceで設定を編集して、新しいイベントをエクスポートに追加できます。
現時点では、Automated Data Exportsを使用して過去のデータをエクスポートすることはできません。設定後は、エクスポートを有効にした時点から各イベントのデータが表示されるようになります。これは直接エクスポートとOpenSharingの両方に当てはまります。
課金プランにこの機能がまだ含まれておらず、後から有効にする必要がある場合は、カスタマーサクセスマネージャーと協力して課金プランに含める必要があります。MoEngageが毎月データウェアハウス/パートナー/APIに格納するデータ量に応じて、追加料金が発生する可能性があります。
いいえ。Data Exportsは主にイベントをほぼリアルタイムでエクスポートするために構築されており、MoEngageのユーザー属性は非同期で更新されるため、現時点ではエクスポート内のユーザー属性が最新の値であることを保証できません。
はい。配信方法を変更するには、MoEngage CSMにお問い合わせください。2つの方法は同じスキーマを使用しますが、ストレージレイヤーは別々であるため、直接エクスポートで既に配信されたレコードはOpenSharingカタログには表示されません。
いいえ。スキーマは標準化されており、名前のカスタマイズはサポートされていません。ステップ3: エクスポートを設定するで説明されているように、設定時にエクスポートするイベントと属性を選択します。
接続の維持、技術的な質問の解決、データ要件の調整については、MoEngage CSMが主な連絡先となります。