SalesforceでのETL
Salesforceのプラットフォームと幅広いクラウドサービス製品は、CRMの分野でも以前と変わらず主要な役割を果たしています。Salesforceが人気を集めている主な理由は、その機能性と汎用性、そして他のアプリケーションやプラットフォームとの統合能力にあります。ここでは、これらの統合について説明するとともに、SalesforceでのETLを準備するために知っておくべきことについても解説します。
Salesforceとは
Salesforceは、世界有数のクラウドベースCRM(顧客関係管理)プラットフォームであり、19.6%の市場シェアを誇っています。Salesforceは、営業、顧客サービス、マーケティング、Eコマースなどのビジネスプロセスを管理する幅広いアプリケーションを提供しています。中でも最もよく知られている機能が、顧客アカウントの保存と管理、マーケティングデータ分析、ビジネスインテリジェンスなどです。
1999年にクラウドでCRMソリューションの提供を開始したSalesforceは、業界に先駆けてSaaS(Software-as-a-Service)の概念を実用化しました。それ以前は、ほとんどの企業が高価で完成までに何年もかかるCRM製品を自社で作成してしました。
それから20年が経過した今、Salesforceアプリケーションは、小規模の新興企業からGE、Vodafone、Coca Cola、Air Asiaなどの大企業まで、さまざまな業界と業種で導入されています。Salesforce製品は現在、非営利団体、政府機関、民間企業で広く使用されています。最も有名なSalesforceアプリケーションには、Sales Cloud、Marketing Cloud、Service Cloudなどがあります。
ほとんどのユーザーは複数のSalesforceアプリケーションを利用しています。その典型例であるSchneider Electric社は、2010年に1つのSalesforce CRMソリューションの使用を開始しましたが、その後30件のSalesforceアプリケーションをサービスに追加しました。
SalesforceでのETL
ここまで、Salesforceについて説明しました。次に、データ統合について、またデータソースの合理化、簡素化、または統合を検討しているすべての企業にとって重要である理由を説明します。
要するに、データ統合とは、さまざまな内部と外部のソースからのデータを一元管理される単一のリポジトリに結合するプロセスです。たとえば、ある企業では顧客データをレガシーデータベースに格納し、在庫データをサードパーティプラットフォームで管理し、他のデータを(以前は)最善の選択肢とされていたアプリケーションを使用して収集しているかもしれません。
このような状況は珍しいことではありません。企業が成長し変化するにつれて、自社のソフトウェアやデータに対するニーズも高まり、かつては合理的だった戦略の見直しが必要になります。そこで検討すべきなのがデータ統合です。
データ統合の中心にあるのが、ETL(抽出、変換、ロード)プロセスです。データ統合は、さまざまなソースからデータを抽出し、単一のデータウェアハウスに移行することから始まります。(データウェアハウスを使用しない企業や組織においても、このプロセスは似ています。ただし、データは直接ソースに統合されます。)統合プロセスを促進する目的で、SalesforceにはREST、SOAP、BULK APIなどのさまざまなインターフェイスポイントがあります。これらのインターフェイスは、一度に大量のデータに接続して抽出します。
変換段階では、データのクレンジング、検証、重複排除、編成、標準化が行われます。この時点で、さまざまなデータセットがすべて相互に対話しています。最終的に、新たに変換されたデータが最終的な送信先にロード(または配信)されます。
Salesforceにデータを移行するメリット
より深い知見
サイロ化されたデータは、足かせのないデータほど有用ではありません。Salesforceアプリケーションには、顧客に関する重要な詳細情報が含まれており、そうしたデータが他のプラットフォームと統合されていない限り、せっかくの重要な知見、パターン、傾向を見逃してしまう可能性があります。
効率の向上
組織が新しいアプリケーションを導入する際、データを統合すれば新しいアプリケーションのデータを統合ビューに自動的に取り込むことができます。これにより、データを収集するために複数のシステムにログインする必要がなくなり、レポート作成と分析に要する時間を短縮できます。
データクオリティの向上
データ統合により、統合プロセス中に競合や矛盾が解決されるため、データに対する信頼度が高まります。
詳細なデータ分析
データ統合によってデータにコンテキストが追加され、全体像を把握できるようになります。さまざまなレポートやダッシュボードが提供されるために分析のスピードアップが可能となり、競争力の維持に不可欠なビッグデータ分析が容易になります。
データ移行とデータ統合の違い
話を進める前に、データ統合とデータ移行の違いを理解しておくことが重要です。この2つは同じ意味で使用されることのある用語ですが、実際には異なる個別のプロセスです。ただし、実装手法のいくつかは共通しています。
データ統合は、内部および外部の複数ソースからのデータを共通のビューに一元化するプロセスです。その目的は、より深いビジネス知見を得られるように、データの一貫性を実現することです。たとえば、Salesforceが他のマーケティングシステムと統合されている場合、リードの創出とチャネル戦略の向上につながります。データ統合とは、小さなプロセスの統合を表すものであり、言い換えるならば大局的な概念です。
一方、データ移行とは、あるシステムから別のシステムにデータを移動することです。既存のCRMシステムをSalesforceに変更する場合、または以前のバージョンを最近のバージョンにアップグレードする場合、現行システムから新システムにすべてのデータを移行する必要があります。データ移行は、データ統合よりも具体的なプロセスです。
一般的な統合方法
ここまでは、データ統合プロセスの概要と、複数のソースからのデータを単一のビューとソースに統合する方法について説明しました。データ統合には、次のようなさまざまな方法があります。
手動でのデータ統合
データを共通のリポジトリに移動する必要があり、手動による統合もそのための1つの方法です。プロセスのこの部分では通常、従来型のETLが必要ですが、カスタムの組み込みツールを使用する企業もあります。手動での統合は、ディープクレンジングを必要としない小規模で単純なデータセットではうまくいく可能性がありますが、大規模なデータセットでは時間がかかりすぎ、エラーが発生しやすくなる可能性があります。また、リアルタイムデータが存在しないため、その有用性には限りがあります。
アプリケーションを使用したデータ伝播
この目的は、個々のアプリケーションからのデータを共通のデータウェアハウスに伝播することです。それを達成するための統合ロジックは、個々のセールスアプリケーションの中にあります。データをウェアハウスに転送する一般的なツールやアプローチではなく、各アプリケーションがそのデータを中央ストアに移動する責任を負います。この方法は通常、データの徹底的なクレンジングと操作が必要であることを理由に採用されます。また、アプリケーションはそうした操作を理解し実行するのに最適な立場にあります。
ただし、アプリケーションは変更の影響を受けやすいため、このアプローチを維持するのは困難です。つまり、統合ロジックの再構築または調整が必要になることが少なくありません。
ミドルウェアを使用したデータ伝播
アプリケーションを使用する方法と同様に、目的はデータをウェアハウスに伝播することです。ただし、こちらの方法はアプリケーションから統合ロジックを抽象化し、責任をミドルウェアに移します。たとえば、Salesforceとデータウェアハウスの間にパブリッシュ/サブスクライブメカニズムを設定することで、更新のたびにデータを自動的にウェアハウスにパブリッシュするイベントがトリガーされるため、データは最新の状態に保たれます。
アプリケーションが変更されても、ミドルウェアはデータを中央ストアに転送するブリッジとして機能し続けます。
ただし、この方法を機能させるには、コンシューマー(ウェアハウス)が理解できる形式でデータを操作および変換する実装レイヤーが必要です。また、大量のデータではパブリッシャーとコンシューマーの間で遅延が発生し、リアルタイムデータを必要とする一部のアプリケーションでは機能しない可能性もあります。
データの仮想化
仮想化では、データは取り出されずに共通のリポジトリに保存されます。しかし、フロントエンドを介して複数のソースからのデータにアクセスして表示するためのメカニズムが提供されます。
この手法には、ウェアハウスを作成および管理する必要がないという利点があり、データの遅延が発生しません。したがって、他の場所へのデータ保存を許可していない安全性に優れたアプリケーションに最適です。ただし、データの利用範囲は制限されます。たとえば、データリネージは維持が難しいため、データから知見を導出することは困難になる可能性があります。また、フロントエンドはさまざまなデータソースに対して常にクエリーを実行し、データベースに負荷をかけているため、軽量ではありません。
データ統合の課題
Salesforceユーザーに関するProgress-Dimensional Researchの調査では、回答者の54%が、アプリケーションとデータソースの統合が最大の課題であると回答しています。データ統合が依然として課題である要因を以下に説明します。
システムの複雑さ
さまざまなテクノロジーを使用し、複数の場所に分散している膨大な数のシステムからのデータを統合するのは、非常に複雑な作業になる可能性があります。このプロセスの規模、ボリューム、複雑さに対応するには、完璧な計画と調整が必要です。
データマッピング
データフィールドはデータソースごとに異なる名前とタイプで保存される傾向があるため、すべてのフィールドを送信先システムにマッピングするのは困難な作業です。データソースの中には、かなりのデータギャップが存在するレガシーシステムもあります。こうした問題を解決するには、データを深く理解しているビジネス関係者と技術関係者の間のコラボレーションが必要です。
適切なエキスパートを見つける
Salesforceとデータウェアハウスを統合するには、Salesforce、CRM、データウェアハウス(またはデータレイク)、統合テクノロジーなど、さまざまな分野のエキスパートが必要です。しかし、そのようなチームを結成し、効果的なコミュニケーションを実現することは、困難な場合があります。
統一されたデータ統合戦略の策定
Salesforceはクラウドネイティブアプリケーションです。ただし、クラウドまたはオンサイトに他のソースが存在する可能性があります。クラウドとオンプレミスのソースを統合することで、さまざまなアプローチでのデータ統合が可能になります。ただし、アプローチが異なると、データの処理に一貫性がなくなり、結果的にデータクオリティを低下させる可能性があります。システムの独自性に反して、データの整合性と同期の保証を目的として統一された戦略を策定するのは容易な作業ではありません。
継続的なデータ統合の確保
データ統合は一度限りの作業ではありません。データを最初に取り込む作業は重要ですが、それだけでなく、変更の発生時に共通のストアを自動更新するには継続的な努力が必要です。
これらの課題をよそに、Salesforceのデータ統合は以前と変わらず、データの統合ビューを実現するための戦略において重要な部分を占めています。明確な統合戦略を持ち、データ統合ツールを使用することで、こうした課題の克服が可能になります。
統合する前のチェックリスト
企業ごとに異なる特徴、ニーズ、戦略によって、データを統合する具体的な方法が決まります。最適な方法を特定するには、始める前に実行しておくべきステップがいくつかあります。
ステークホルダーを特定する
ステークホルダーには、Salesforceエキスパート、データエンジニア、顧客、および組織データを総合的に把握しているその他の専門家が含まれます。
コラボレーションプラットフォームを確立する
ステークホルダーのチームはどのような方法で情報と計画を共有しますか?
リソースの制約を把握する
予算、時間、人員の制限は?
技術的な制約を把握する
データをリアルタイムで利用する必要はありますか? それとも、オンデマンドまたはバッチで取得できますか?
統合アプローチを決定する
手動での統合、アプリケーションを使用したウェアハウスへのデータ伝播、ミドルウェアを使用したウェアハウスへのデータ伝播、または仮想化のうち、最適な方法は?
マッピングする
Salesforceのデータフィールドと社内のデータフィールドをマッチさせます。
方法を選択する
統合の管理にAPIを使用しますか? それともポイントアンドクリック方式を使用しますか?
ツールを選択する
データ統合プラットフォームを使用して、統合を計画し、簡素化し、完成させます。
Salesforceの統合方法の選択
Salesforceデータ統合に万能の方法はありません。データウェアハウスを使用する方法もあれば、共通ストレージに依存しない方法もあります。手動で行う作業もあれば、自動化されている作業もあります。アプリケーションロジックを使用するもの、ミドルウェアを使用するもの、ETLに依存しているものもあります。あるいは、自動化されたデータ更新と、バックエンドのセールスチームによる手動の検証を組み合わせてデータの有効性を確認するなど、ハイブリッドなアプローチを採用している企業もあります。
最終的にどのソリューションを採用するかは、データウェアハウス構築への意欲、時間と予算などのリソースの可用性、データセットのサイズ、データをリアルタイムで利用する必要性など、さまざまな要因によって決まります。
統合の簡素化
データ統合ツールは、オンプレミス/クラウドの複数のソースからのデータを統合する自動メカニズムを提供することによって、統合プロセスを簡素化します。こうしたツールは、より迅速なETL操作を可能にするだけでなく、一元化されたデータストアへの継続的かつリアルタイムでの更新も保証します。こうすることで、人間による操作を最小限に抑えるか完全に不要にし、エラーを減らし、時間を短縮し、結果として生産性とデータクオリティを向上させます。
さらに、データ統合ツールを使用することで、データソースを追加する際の拡張が容易になります。このツールは、ソースごとに異なる統合方法を用いる断片的アプローチではなく、全面的に一貫したソリューションを提供します。また、さまざまなステークホルダーが共有フレームワークを使用して効果的にコミュニケーションをとることもできます。
最適なSalesforceデータソリューションを見つける
新しいアプリケーションの登場、ビジネスニーズの変化、ステークホルダーによる優先事項の見直しなど、データ統合に向けた状況は常に変化しています。しかし、「的確なビジネスインテリジェンスを提供することによって、データを統合し、最大の価値を引き出す」という究極の目標は変わりません。
Talend Open Studio for Data Integrationは、Salesforceデータを既存のデータウェアハウスと統合し、システム間でデータを同期するオープンソースのETLツールです。統合されたEclipse IDEは、データのマップ、集約、ソート、エンリッチメント、結合などのデータ統合機能を提供し、データ統合ジョブを開発・導入するためのツールを提供します。しかも、ハンドコーディングの10倍の速度で処理します。
Salesforceへの移行を当て推量で行う必要がなくなります。無償トライアル版をダウンロードして、Salesforceデータの未来図をご確認ください。