Salesforceプラットフォームのパワーと柔軟性のおかげで、Salesforceと内部または外部システム間でデータをやりとりする方法は複数あります。例えばシンプルなビルトインのSalesforceツールから、開発者が作成したAPIドリブンでのデータ連携、さまざまな商用のデータ連携ツールにまで及びます。こうしたツールのうち、全ての企業に最適なソリューションは1つではありません。実際、多くの企業はデータ移行のニーズを満たすために複数のソリューションを併用しています。

我々Integrate.ioは、十分な情報に基づき、ビジネスニーズに沿ったテクノロジーを選択できるよう、どういったオプションが利用可能か理解を深めていただこうと考えています。 3つの主要なデータ連携戦略を見て、どれが皆さんのアプリケーションに適しているかを見ていきましょう。

Table of Contents

Salesforce Tools

Salesforce API

サードパーティのインテグレーションツール

インテグレーション・テクノロジーの選択

1. Salesforce Tools

Salesforceの柔軟で高速なレポートを使用して、他のシステムに転送するためにExcelおよびテキストファイルとしてエクスポートできます。 「データローダ」は、ツールのほとんどのエディションで外部システムからSalesforceにデータをロードするために使用できます。これらのレポート機能とロード機能を組み合わせることで、管理者または熟練したエンドユーザーは、1行もコードを記述することなく統合パイプラインを作成することができます。

このアプローチの主な強みは、シンプルさとアクセシビリティです。Salesforceで長年作業したことがある方であれば、レポートを作成し、データローダーを使用したことがあるかと思います。このアプローチの主な制約は、特にデータの読み込み中に、手作業と慎重な監視が必要となることです。多くの場合、読み込み用のデータを生成する他のシステムでは、データやフォーマットに問題があり、グルーミングを行わないとデータを読み込むことができません。とはいえ、この簡単なアプローチは、Salesforceと企業内の他のシステムとの統合をスタートするのに優れており、後でサードパーティツールでコーディングまたは実装する際のプロトタイプ統合という面で優れた方法です。

顧客トラッキングを例に説明すると、この統合には3つのコンポーネントが含まれます。

  1. オブジェクトIDおよびその他の顧客情報を含むレポート(新しい顧客をエクスポートするために定期的に実行される)。このレポートを実行するユーザーは、最後のレポート実行以降に作成されたアカウントのレポートを実行したりエクスポートしたりします。
  2. 外部の顧客トラッキングシステムへのアップロード(処理後、CSV形式で顧客IDのリストをエクスポート)
  3. データローダーでCSVファイルを使用して外部アカウントIDを含むカスタムフィールドを更新する

2. Salesforce API

Salesforceには、プログラマがデータをアップロードおよびダウンロードするために使用できる、豊富で強力な「アプリケーションプログラミングインターフェース」(API)があります。プログラマは、サポートされている様々なプログラミング言語を使用して、独自のSalesforce Object Query Language(SOQL)で記述されたクエリを使用して、Salesforceからデータを取得できます。プログラマは、標準またはカスタムのSalesforceオブジェクトを追加または更新するSOQLを作成することもできます。

Salesforceが提供する(ただし完全で柔軟なAPIを備えたシステムはほとんどありませんが)API統合アプローチの主な欠点はプログラミングが必要なことです。 APIを使用する各統合には、開発リソースと統合仕様が必要であり、他の開発プロジェクトと同じリスクとコストがかかります。もしあなたが、開発者リソースに余裕のある企業の一員である場合は、APIを使用してください。現実世界で生きている我々は、おそらく別のアプローチを試みるでしょう。

顧客トラッキングの例を挙げると、開発者は次のようなSOQLクエリを使用してAPIプログラムを作成します。

SELECT CreatedDate,Id,Name,Phone,ShippingAddress,ShippingCity,ShippingCountry,ShippingPostalCode,ShippingState,ShippingStreet 
FROM Account 
WHERE CreatedDate = LAST_N_DAYS:30

基本的に、プログラムは顧客トラッキングシステム側でAPIをコールし、新しい顧客(過去30日以内に作成された顧客データ)を直接Insertします。そして顧客トラッキングシステム側のアカウント番号を取得します。次に、コードはSalesforce Update APIを呼び出して、Salsforc側に新しいアカウント番号を挿入します。

3. サードパーティのインテグレーションツール

独自にコーディングする場合と、マニュアルベースでのアプローチの中間に、サードパーティツールの使用という選択肢があります。これらのツールは、読んで書くだけの抽出プログラムのように単純なものでも、独自のプログラミング言語を持つツールのように複雑なものでもかまいません。これらのツールは、APIからユーザーを開放し、それらの多くは統合ワークフローを簡単に作成できるドラッグアンドドロップインターフェイスを備えています。多くの場合、これらのツールはクラウドベースであるため、オンプレミスインストールの手間は必要ありません。

優れたサードパーティツールには、統合で転送されるデータが破損していないことを確認するためのデータクレンジングおよび検証テクノロジーが含まれます。高品質のサードパーティ製ツールにより、スケジューリングとプロセスの自動化が可能になるため、手動でのオペレーションは例外的であり、通常では行いません。優れたサードパーティツールには、一般的なクラウドデータウェアハウスプラットフォームのほぼ全て(Amazon Redshift、Snowflake、Google BigQueryなど)、リレーショナルデータベース(Oracle、SQL Server、MySQLなど)、さらに広く利用可能なREST APIなど、さまざまなデータ統合対象をサポートしています。エンタープライズの統合ターゲットは多くの場合「ファイアウォールの内側」のシステムであるため、後者の2つのターゲットはエンタープライズにおいて非常に重要です。優れたツールは双方向、つまりSalesforceインスタンスで読み書きできます。

プログラミングを避けることの明らかな利点に加えて、サードパーティのツールは実装の高速化と高品質の統合を約束します。ツールが事前に構築されているため、実装が高速になり、ビルトインのデータ検証およびクレンジングツールにより統合品質が高くなるかもしれません。サードパーティの統合の欠点は、コスト、ベンダーの安定性、および統合ツールがその統合を完全に実装するために必要な機能を欠いている可能性がることです。

インテグレーション・テクノロジーの選択

企業がSalesforceとの間でデータを移行するためにこれらの3つの基本的な戦略を利用するかは複数の要素に依存します。これらの要素のいくつかは、統合自体に関連しています。

  • ニーズが単純で頻度が低い場合は、組み込みのSalesforceツールを使用するのが最善の策でしょう。
  • ニーズが複雑または頻繁に発生する場合は、サードパーティのツールを使用するか、開発チームに独自のAPIインターフェイスを構築してもらうのが良いでしょう。

考慮すべきもう1つの要素は、企業の資金と技術リソースです。

  • 時間のある開発者がいる場合、カスタムのAPI統合を構築できます。私たちの経験からすると、あなたは幸運なケースです。
  • 他に何もするリソースがない場合は、組み込みのSalesforceツールを使用して、統合は複雑であるとはいえ、統合を実行できます。
  • 開発者の時間はないが、他のリソースが利用可能な場合は、サードパーティ製のツールがリクエストに合うかもしれません。選択したツールが、合理的な将来のニーズと現在の統合の課題に対処できることを確認してください。現在のツールには、現在の統合には必要ない機能(双方向データ交換など)がないため、来年はツールを変更したくないでしょう。

Integrate.ioという選択肢

サードパーティの統合ツールとして、Integrate.ioには多くの長所があります。

  • クラウドデータウェアハウス(RedShift、BigQuery、Snowflake、その他)、SQLデータベース(MySQL、Heroku PostgreSQL、SQL Server、MongoDBなど)、およびREST APIインターフェースを持つクラウドまたは内部システムを含むほとんどすべての最新ツールと統合します。 。
  • Integrate.ioのSalesforce統合双方向です(標準またはカスタムのSalesforceオブジェクトを読んだり、書いたりすることができます。)
  • Integrate.ioはエンタープライズファイアウォールの背後のデータに安全にアクセスできるため、Salesforceと自社のシステム間の統合に使用することができます。(*SSH Tunnelを利用)
  • Integrate.ioは、開発者ではないユーザーがコードを記述せずにシステム間でデータパイプラインを構築できるドラッグアンドドロップインターフェイスを使用します。または、私たちの熟練したデータエンジニアは、あなたが自分でそれを行うためのリソースを持っていない場合、あなたのためにパイプラインを構築することができます。

 Integrate.ioはG2 Crowdにて2020年冬のETLツールカテゴリにおいて「Leader」に選ばれています。(G2 Crowdのレビューページでは、ユーザーの声がビデオで紹介されており、変換の多様性、すぐに使えるコネクタの豊富さ、サポートのレスポンスの良さ、学習が容易といった点をユーザーから評価頂いております。)

もし興味をお持ちの方は、以下のサイトからデモを予約いただき、無償トライアルで操作感を体験してみてください。

(このブログは、2019年12月16日に公開されたオリジナル記事を翻訳したものです。)