Flex Gateway新着情報
Governance新着情報
Monitoring API ManagerSalesforce Einstein Analytics Cloud 用 Anypoint Connector (Salesforce Analytics Connector) では、Salesforce 外部データ API を使用して Salesforce Analytics Cloud アプリケーションに接続できます。このコネクタでは、Salesforce Analytics Cloud システムに対するデータセットの作成、削除、入力を行う便利なメソッドが公開されています。オンプレミスかクラウドかに関係なく、多種多様なデータソースから Salesforce Einstein Analytics Cloud にデータを読み込むことができます。このコネクタで、.csv ファイル以外も利用できるようになります。
ソフトウェアの要件および互換性情報については、「Salesforce Einstein Analytics Connector リリースノート」を参照してください。
このコネクタを使用するには、以下に精通している必要があります。
Salesforce Einstein Analytics API
Anypoint Connector
Mule Runtime Engine (Mule)
Mule フローの要素
グローバル要素
Anypoint Studio を使用した Mule アプリケーションの作成方法
アプリケーションを作成する前に、対象リソースへの接続をテストするには、ログイン情報が必要です。
Apache Maven pom.xml
ファイルは Anypoint Studio によって生成され、Mule アプリケーションの連動関係が含まれます。Mule アプリケーションを手動でコーディングする場合、次の XML スニペットを pom.xml
ファイルに含めてこのコネクタにアクセスできるようにします:
<dependency>
<groupId>com.mulesoft.connectors</groupId>
<artifactId>mule-sfdc-analytics-connector</artifactId>
<version>x.x.x</version>
<classifier>mule-plugin</classifier>
</dependency>
x.x.x
を使用しているコネクタに対応するバージョンに置き換えます。
最新の pom.xml
ファイル情報を取得する手順は、次のとおりです。
Anypoint Exchange に移動します。
Exchange で、[Login (ログイン)] をクリックし、Anypoint Platform のユーザー名とパスワードを指定します。
Exchange で、「<connector-name>
」を検索します。
コネクタを選択します。
画面の右上付近にある [Dependency Snippets (連動関係スニペット)] をクリックします。
Username (ユーザー名)
Salesforce Einstein Analytics ユーザー名。
Password (パスワード)
Salesforce Einstein Analytics ユーザー名に対応するパスワード。
Security Token (セキュリティトークン)
対応するセキュリティトークン
Consumer Key (コンシューマーキー)
Salesforce 接続アプリケーションのコンシューマーキー。
Consumer Secret (コンシューマーシークレット)
Salesforce にアクセスするコネクタのコンシューマーシークレット。
Consumer Key (コンシューマーキー)
Salesforce 接続アプリケーションのコンシューマーキー。
Keystore File (キーストアファイル)
「キーストアファイルの生成」を参照してください。
Store Password (ストアのパスワード)
キーストアのパスワード
Principal (プリンシパル)
Salesforce ユーザー名
Consumer Key (コンシューマーキー)
Salesforce 接続アプリケーションのコンシューマーキー。
Keystore File (キーストアファイル)
認証時にデータへの署名に使用するキーストアへのパス。Java キーストア形式のみが許可されます。
Store Password (ストアのパスワード)
キーストアパスワード。
Principal (プリンシパル)
Salesforce ユーザー名。
キーストアは、認証時にデータへの署名に使用するキーストアへのパスです。次の例は、JKS ファイルの生成方法を示しています。
Mule ワークスペースに移動し、コマンドプロンプト (Windows) またはターミナル (Mac) を開きます。
「keytool -genkeypair -alias salesforce-cert -keyalg RSA -keystore salesforce-cert.jks
」と入力して Enter キーを押します。
次の詳細を入力します。
キーストアのパスワード
自身の姓名
自身の組織単位
市区郡と都道府県の名前と 2 文字の国コード
システムが、ワークスペースに非公開キーと公開キーのペアが含まれる Java キーストアファイルを生成します。
コネクタ設定でキーストアのファイルパスを指定します。
「keytool -exportcert -alias salesforce-cert -file salesforce-cert.crt -keystore salesforce-cert.jks
」と入力して Enter キーを押します。
システムが、キーストアからワークスペースに公開キーをエクスポートします。これは、Salesforce インスタンスに入力する必要がある公開キーです。
ワークスペースにキーストア (salesforce-cert.jks
) と公開キー (salesforce-cert.crt
) の両方のファイルがあることを確認します。
Studio で Mule プロジェクトを作成します。
[Mule Palette (Mule パレット)] ビューで、[(X) Search in Exchange ((X) Exchange 内を検索)] をクリックします。
[Add Modules to Project (モジュールをプロジェクトに追加)] で、検索項目に「analytics」と入力します。
[Available modules (使用可能なモジュール)] で、このコネクタの名前をクリックします。
[Add (追加)] をクリックします。
[Finish (完了)] をクリックします。
目的の Salesforce Analytics 操作を Studio キャンバスにドラッグします。
コネクタのグローバル要素を作成するには、[General (一般)] タブで、認証セクションで説明したように認証を設定します。
次の認証接続種別が使用できます。
次の項目を設定して外部データを新しいデータセットにアップロードし、操作の処理を開始します。
Type (タイプ)
挿入するレコードのタイプ。作成するデータセットのスキーマを表す JSON ファイルを選択します。
Records (レコード)
DataSense 式。挿入するレコード。
操作
データセットにデータを読み込むときに使用する操作を指定します。
説明
Label (表示ラベル)
Data Set Name (データセット名)
[Global Element Properties (グローバル要素プロパティ)] 画面の [General (一般)] タブで、次の情報を入力して基本認証を設定します。
Username (ユーザー名)
Salesforce ユーザー名を入力します。
Password (パスワード)
対応するパスワードを入力します。
Security Token (セキュリティトークン)
対応するセキュリティトークンを入力します。
次のスクリーンショットは、基本認証の設定例を示しています。
[Global Element Properties (グローバル要素プロパティ)] 画面の [General (一般)] タブで、次の情報を入力して OAuth 2.0 認証を設定します。
Consumer Key (コンシューマーキー)
Salesforce 接続アプリケーションのコンシューマーキー。
Consumer Secret (コンシューマーシークレット)
Salesforce にアクセスするコネクタのコンシューマーシークレット。
次のスクリーンショットは、OAuth 2.0 認証を設定する例を示しています。
[Global Element Properties (グローバル要素プロパティ)] 画面の [General (一般)] タブで、次の情報を入力して OAuth 2.0 JWT 認証を設定します。
Consumer Key (コンシューマーキー)
Salesforce 接続アプリケーションのコンシューマーキー。
Keystore File (キーストアファイル)
「キーストアファイルの生成」を参照してください。
Store Password (ストアのパスワード)
キーストアのパスワード
Principal (プリンシパル)
Salesforce ユーザー名
[Global Element Properties (グローバル要素プロパティ)] 画面の [General (一般)] タブで、次の情報を入力して OAuth 2.0 SAML ベアラー認証を設定します。
Consumer Key (コンシューマーキー)
Salesforce 接続アプリケーションのコンシューマーキー。
Keystore File (キーストアファイル)
「キーストアファイルの生成」を参照してください。
Store Password (ストアのパスワード)
キーストアのパスワード。
Principal (プリンシパル)
Salesforce ユーザー名
このユースケースは、Salesforce Einstein Analytics Connector の使用方法の例を示しており、次のようにエンドツーエンドのフローが含まれます。
入力元として HTTP リスナーを使用します。
ユーザー名、パスワード、セキュリティトークンを使用して接続を設定します。
使用するパラメーターを含む Salesforce Analytics 操作を使用します。
以下の例には、次のコンポーネントが含まれます。
HTTP リスナー。HTTP 要求からデータを受け入れます。
Transform Message。Salesforce Einstein Analytics Connector で要求されるレコード入力データを提供します。
%dw 2.0
output application/java
---
[
{
"Id": 1,
"Country": "Country",
"City": "City",
"Year": 428742153,
"Distance": 284644936,
"Currencies":
[
"EUR",
"USD"
],
"CreationDate": "20/12/2017" as Date {format: "dd/MM/yyyy"}
},
{
"Id": 2,
"Country": "Country",
"City": "City",
"Year": 1432651434,
"Distance": 1336594394,
"Currencies":
[
"EUR",
"USD",
"HUF"
],
"CreationDate": "20/12/2017" as Date {format: "dd/MM/yyyy"}
}
]
Salesforce Analytics Connector。Salesforce に接続し、データを Salesforce Einstein Analytics Cloud にプッシュする操作を実行します。
この例で示している XML コードを Anypoint Studio の [Configuration XML (設定 XML)] タブに貼り付けて、前のセクションで説明したフローを試してください。
ここでも、作成するデータセットのスキーマを記述した metadata.json
ファイルを指定する必要があります。
<?xml version="1.0" encoding="UTF-8"?>
<mule xmlns:salesforce-analytics="http://www.mulesoft.org/schema/mule/salesforce-analytics"
xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core"
xmlns:http="http://www.mulesoft.org/schema/mule/http"
xmlns:file="http://www.mulesoft.org/schema/mule/file"
xmlns="http://www.mulesoft.org/schema/mule/core"
xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core
http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/file
http://www.mulesoft.org/schema/mule/file/current/mule-file.xsd
http://www.mulesoft.org/schema/mule/http
http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/ee/core
http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd
http://www.mulesoft.org/schema/mule/salesforce-analytics
http://www.mulesoft.org/schema/mule/salesforce-analytics/current/mule-salesforce-analytics.xsd">
<configuration-properties file="mule-app.properties" />
<http:listener-config name="HTTP_Listener_config" doc:name="HTTP Listener config" >
<http:listener-connection host="0.0.0.0" port="8081" />
</http:listener-config>
<salesforce-analytics:salesforce-analytics-config
name="Salesforce_Analytics_Salesforce_Analytics"
doc:name="Salesforce Analytics Salesforce Analytics" >
<salesforce-analytics:basic-connection username="${salesforce.username}"
password="${salesforce.password}" securityToken="${salesforce.securityToken}"
url="${salesforce.url}"/>
</salesforce-analytics:salesforce-analytics-config>
<flow name="upload-all-in-one-with-append" >
<http:listener doc:name="Listener" config-ref="HTTP_Listener_config" path="append"/>
<ee:transform doc:name="Transform Message" >
<ee:message >
<ee:set-payload ><![CDATA[%dw 2.0
output application/java
---
[
{
"Id": 1,
"Country": "Country",
"City": "City",
"Year": 428742153,
"Distance": 284644936,
"Currencies":
[
"EUR",
"USD"
],
"CreationDate": "20/12/2017" as Date {format: "dd/MM/yyyy"}
},
{
"Id": 2,
"Country": "Country",
"City": "City",
"Year": 1432651434,
"Distance": 1336594394,
"Currencies":
[
"EUR",
"USD",
"HUF"
],
"CreationDate": "20/12/2017" as Date {format: "dd/MM/yyyy"}
}
]]]></ee:set-payload>
</ee:message>
</ee:transform>
<salesforce-analytics:upload-external-data-into-new-data-set-and-start-processing
doc:name="Upload external data into new data set and start processing"
config-ref="Salesforce_Analytics_Salesforce_Analytics" operation="APPEND"
description="${allInOne.dataSetDescription}" label="${allInOne.dataSetLabel}"
dataSetName="${allInOne.dataSetName}" edgemartContainer="${allInOne.dataSetContainerName}"
type="metadata.json" notificationSent="ALWAYS" notificationEmail="${notification.email}"/>
</flow>
</mule>
基本ユーザー名とパスワード認証の必須パラメーターについては、 Salesforce 基本認証に関するドキュメントを参照してください。
OAuth 2.0 設定の必須パラメーターについては、 Salesforce OAuth 2.0 に関するドキュメントを参照してください。
OAuth 2.0 JWT ベアラー設定の必須パラメーターについては、 Salesforce OAuth 2.0 JWT ベアラーに関するドキュメントを参照してください
OAuth 2.0 SAML ベアラー設定の必須パラメーターについては、 Salesforce OAuth 2.0 SAML ベアラーに関するドキュメントを参照してください