製品をチェック

製品の情報と30日間無償トライアル

SQL Analysis Services 連携ソリューション 相談したい

SQL Analysis Services データでアップデートグラムを使用する

アップデートグラムを使用することで、SQL Analysis Services をインサート、アップデート、デリートできます。ここでは、CData BizTalk Adapter for SSAS を使用して、アップデートグラムスキーマとインスタンスを作成する方法を説明します。

加藤龍彦
デジタルマーケティング

最終更新日:2022-12-05

こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。

この記事では、CData BizTalk Adapter for SSAS で実行できるアップデートグラムを作成します。設計したスキーマは、インサート、アップデート、デリートのアップデートグラムを作成するためのテンプレートとして使用します。

プロジェクトにSQL Analysis Services 用アダプターを追加する

[Add Adapter] ウィザードから、アダプターをVisual Studio のBizTalk サーバープロジェクトに追加します。アダプターを使って、修正したいテーブルに関するSQL Analysis Services のメタデータをクエリします。

  1. [Solution Explorer] の[project] で右クリックし、[Add] -> [Add Generated Items] と進みます。
  2. [resulting dialog box] の[Add Adapter Metadata] を選択します。
  3. 表示される[Add Adapter] ウィザードで、リストからCData BizTalk Adapter for SSAS を選択します。
  4. [Port menu] では、選択を空白のままにします。もしくは、アダプターを使用するように構成されている受信場所や送信ポートを選択します。
  5. [Next]をクリックすると、[Schema]ウィザードが表示されます。
CData Data Adapters in the Select Adapter wizard.(Salesforce is shown.)

アップデートグラム用のスキーマを作成する

以下のステップに従って、Visual Studio のBizTalk サーバープロジェクトでスキーマを作成します。

  1. 未追加の場合は、SQL Analysis Services アダプターをプロジェクトに追加します。
  2. 送信ポートや受信場所で、認証資格情報やその他の接続プロパティが未構成の場合、[Add Adapter]ウィザードの[Connection String]ページから入力します。下は一般的な接続文字列です。

    User=myuseraccount;Password=mypassword;URL=http://localhost/OLAP/msmdpump.dll;

    接続するには、Url プロパティを有効なSQL Server Analysis Services エンドポイントに設定して認証を提供します。XMLA アクセスを使用して、HTTP 経由でホストされているSQL Server Analysis Services インスタンスに接続できます。 Microsoft ドキュメント configure HTTP access を参照してSQL Server Analysis Services に接続してください。

    SQL をSQL Server Analysis Services に実行するには、ヘルプドキュメントの「Analysis Services データの取得」を参照してください。接続ごとにメタデータを取得する代わりに、CacheLocation を設定できます。

    • HTTP 認証

      AuthScheme を"Basic" または"Digest" に設定してUser とPassword を設定します。CustomHeaders に他の認証値を指定します。

    • Windows (NTLM)

      Windows のUser とPassword を設定して、AuthScheme をNTLM に設定します。

    • Kerberos およびKerberos Delegation

      Kerberos を認証するには、AuthScheme をNEGOTIATE に設定します。Kerberos 委任を使うには、AuthScheme をKERBEROSDELEGATION に設定します。必要があれば、User、Password およびKerberosSPN を設定します。デフォルトでは、CData 製品は指定されたUrl でSPN と通信しようと試みます。

    • SSL/TLS:

      デフォルトでは、CData 製品はサーバーの証明書をシステムの信頼できる証明書ストアと照合してSSL/TLS のネゴシエーションを試みます。別の証明書を指定するには、利用可能なフォーマットについてヘルプドキュメントの「SSLServerCert」プロパティを参照してください。

    接続を設定したら、その後はあらゆるキューブを二次元テーブルとして扱うことができます。データに接続する際にCData 製品がSSAS のメタデータを取得して、動的にテーブルスキーマを更新します。 「CacheLocation」プロパティを設定すれば自動でファイルにキャッシュを作成するので、接続時に毎回メタデータを取得する必要もなくなります。

    詳細は、ヘルプドキュメントの「Retrieving Analysis Services Data」を参照してください。

    接続プロパティの詳細は、ヘルプドキュメントの"BizTalk Configuration" チャプターを参照してください。

    The connection string used by the adapter.(Salesforce is shown.)
  3. [Schema Information]ページで、[General Options]セクションの[Send Port]をクリックします。[CommandType]メニューから[Updategram]を選択します。要請応答送信ポートのアダプターを使用している場合、[One-Way]オプションを無効にします。 Schema options that are specific to the adapter configured in a solicit-response send port.(Salesforce is shown.)
  4. 次の[Statement Information]ページでは、アップデートグラムの形式(Insert、Update、Delete)を選択します。 スキーマに含ませたいテーブル名とカラムを選択します。アップデートまたはデリートを行う場合、ID カラムを選択します。

    Noteアップデートグラムを作成する際、修正はスキーマに含ませたカラムに限定されます。

    Schema options that specify the table and columns to be modified.(Salesforce is shown.)
  5. [Next]をクリックしてスキーマの概要を確認してウィザードを終了し、スキーマを作成します。完成した.xsd ファイルがプロジェクトに追加されます。
The resulting updategram instance.(Salesforce is shown.)

インサート、アップデート、デリートのインスタンスメッセージを生成する

アップデートグラムスキーマの作成後、アップデートグラムを生成する.xsd ファイルを使用できます。.xsd ファイルを右クリックし、[Generate Instance]を選択します。このファイルは、アップデートグラムを手動で作成するテンプレートとして使用することもできます。以下は、インサート、アップデート、デリートそれぞれに生成されたアップデートグラムインスタンスの例です。

インサート

まず、インサートの一例です。このインスタンスでは、データの変化を指定するafter ブロックのみを扱います。

<ns0:parameters xmlns:ns0="http://www.cdata.com/jp/SSASProvider"> <ns0:sync> <ns0:before></ns0:before> <ns0:after> <ns0:Adventure_Works Fiscal_Year="Fiscal_Year_0" Sales_Amount="Sales_Amount_1" /> </ns0:after> </ns0:sync> </ns0:parameters>

アップデート

次に、アップデートの一例です。このインスタンスでは、before ブロック(テーブルに存在するデータ)と、after ブロック(データの変化)の両方を扱います。

<ns0:parameters xmlns:ns0="http://www.cdata.com/jp/SSASProvider"> <ns0:sync> <ns0:before> <ns0:Adventure_Works Id=001d000000YBRseAAH></ns0:Adventure_Works> </ns0:before> <ns0:after> <ns0:Adventure_Works Fiscal_Year="Fiscal_Year_0" Sales_Amount="Sales_Amount_1" ></ns0:Adventure_Works> </ns0:after> </ns0:sync> </ns0:parameters>

デリート

最後に、デリートの一例です。after ブロックは空になり、アイテムを除去していることを示します。

<ns0:parameters xmlns:ns0="http://www.cdata.com/jp/SSASProvider"> <ns0:sync> <ns0:before> <ns0:Adventure_Works Id=001d000000YBRseAAH></ns0:Adventure_Works> </ns0:before> <ns0:after></ns0:after> </ns0:sync> </ns0:parameters>

スキーマを処理する

SQL Analysis Services レコードのインサート、アップデート、デリートにアップデートグラムを使用するには、こちらのチュートリアルをご覧ください。

トライアル・お問い合わせ

30日間無償トライアルで、CData のリアルタイムデータ連携をフルにお試しいただけます。記事や製品についてのご質問があればお気軽にお問い合わせください。