導入事例 / ソフトウェアとインターネット

2022 年
Salesforce のロゴ

Salesforce の UIP が Amazon EC2 スポットインスタンスを利用してデータ処理時間を 90% 超短縮し、1 か月あたり 100 万 USD 超のコストを削減

100 万 USD

1 か月あたりのコスト削減額

200~250 TB

以前なら 100 TB 相当の処理コストで対応できるようになった量 

4 時間から 15 分

処理時間の短縮

設定テスト

数時間での調査とテスト

概要

Salesforce の Unified Intelligence Platform Team (UIP) は、ペタバイトレベルのデータレイクを管理しており、コスト削減と効率の向上を目指して、データの分析と処理を革新したいと考えていました。UIP チームは、ほぼすべてのワークロード向けに安全でサイズ変更可能なコンピューティングキャパシティを提供する Amazon Elastic Compute Cloud (Amazon EC2) のインスタンスプロビジョニングモデルの組み合わせに Amazon Web Services (AWS) を使用することで、スケーラブルで伸縮自在なコンピューティングインフラストラクチャを構築できました。改善されたコンピューティングインフラストラクチャは、より短い処理時間で 2 倍ものデータを処理できるようになり、1 か月あたり 100 万 USD 超のコスト削減が実現されました。

Salesforce はデータワークフローに AWS を利用しており、AWS は顧客関係管理に Salesforce を利用しています。この協力関係により、開発者はより容易に、両方のテクノロジーを使用して顧客向けアプリケーションを構築して立ち上げたり、Salesforce 内でネイティブに AWS のサービスを使用したり、Salesforce と AWS の両方でデータとワークフローを安全に接続したりできます。

Business coworkers discussing new ideas and brainstorming in a modern office

機会 | AWS での効率化のためのアーキテクチャ

2019 年後半、UIP チームはオンプレミスクラスターを Amazon EMR に移行することに着手しました。Amazon EMR は、Apache Spark、Apache Hive、Trino などのオープンソース分析フレームワークを使用して、大規模な分散データ処理ジョブ、インタラクティブな SQL クエリ、機械学習アプリケーションを実行するためのクラウドビッグデータプラットフォームです。Amazon EMR は、Salesforce がビッグデータフレームワークの管理の複雑さを軽減するのに役立っています。また、Amazon EC2 スポットインスタンスをネイティブに統合できるため、企業がクラウドにおける未使用の Amazon EC2 キャパシティを活用するのに役立ちます。

チームは、コスト最適化戦略の一環としてのスポットインスタンスの使用に、Apache Spark で実行されているワークロードが適していると判断しました。Amazon EMR 上の Apache Spark は自動再試行機能を備えているため、Amazon EC2 のキャパシティ要件を理由としてスポットインスタンスの再利用が発生した場合の回復力が高まります。また、UIP チームは Spark Streaming を利用することで 5 分間でデータを処理できます。これも、再試行が必要になる可能性を最小限に抑えるのに役立ちます。

最も低い料金で最大限の可用性を実現するために、Salesforce UIP は、スポットインスタンスを他の Amazon EC2 購入オプションと併用してみました。同チームは、スポットインスタンスと Amazon EC2 オンデマンドインスタンスをさまざまな割合で組み合わせてシナリオを実行しました。Amazon EC2 オンデマンドインスタンスでは、企業は長期的な契約なしでコンピューティングキャパシティの料金を秒単位で支払い、インスタンスのライフサイクルを全体的に制御できます。Salesforce UIP では、オンデマンドインスタンス用に Savings Plan を使用していました。Savings Plans は、特定の使用量を契約する代わりに、オンデマンド料金と比較して低料金を実現する柔軟な料金モデルです。クラスターの信頼性とインスタンスに対する割引の適切なバランスを模索する中で、UIP チームは最適な設定を特定しました。この設定は、スポットインスタンスの恩恵を受ける Amazon EC2 の使用を 60% とし、残りを Savings Plans でカバーすることとするものでした。サービスレベル契約 (SLA) の要件を満たすために、Salesforce UIP はパフォーマンスを念頭に置いてフリートを作成しました。プロセッサの特性と SLA の時間要件を満たす能力に応じて、ワークロードを SLA クラスターと非 SLA クラスターに分割しています。「フリートの構築という観点から、この点に関する真のメリットは、使用できるインスタンスタイプの数にあると考えています」と Salesforce のプリンシパルエンジニアである Eric Legault 氏は述べています。「AWS は、さまざまな設定のマシンや多様なシナリオを試すのに役立ちました。設定を変更するだけで、数時間後には、実際に機能するかどうかを確認できたのです。そのことが、この取り組みを成功に導いた大きな要因だったと考えています」。

kr_quotemark

Amazon EMR マネージドスケーリングは、クラウドの伸縮自在な機能を利用するうえで大きな役割を果たしています。また、スポットインスタンスを革新的な方法で使用するだけで、コストを大幅に削減できます”

Eric Legault 氏
Salesforce、プリンシパルエンジニア

ソリューション | スポットインスタンスを使用して数百万 USD のコストを削減

スポットインスタンスの使用に関する AWS のベストプラクティスに従って、チームは、同じキャパシティを維持しながら、2~3 つのインスタンスタイプから 27 のインスタンスタイプに移行することで、フリートにさらなる安定性をもたらしました。UIP チームは、CPU、メモリ、またはバランスの取れたワークロードに最適化されたインスタンスタイプを使用し、インテルのプロセッサと AMD のプロセッサを組み合わせて、さまざまな目的に特化した 12 のクラスターを運用しています。「インスタンスタイプが多いほど、クラスターの回復力が高まります」と Legault 氏は述べています。

現在、Salesforce UIP は 1 日に 200~250 TB を処理しており、以前は 100 TB の処理にかかっていたのとほぼ同じコストで、その 2 倍の量のデータを書き込んでいます。取り込み処理をストリーミングアプローチにリアーキテクトし、スポットインスタンスを使用してコストを管理しながらインフラストラクチャを強化することで、チームの処理効率も改善し、データの取り込みと処理にかかる時間が 4 時間から 15 分に短縮されました。コンピューティングメトリクスの可視性を高めるために、Salesforce は AWS リソースのモニタリングおよびオブザーバビリティサービスである Amazon CloudWatch を利用しています。チームは、運用メトリクスの可視化を図るオープンソースソフトウェアの Grafana で構築されたカスタムダッシュボードを使用して、アプリケーションをモニタリングしています。

Salesforce の UIP ソリューションでは Amazon EMR マネージドスケーリングも使用しています。このサービスは、可能な限り低いコストで最高のパフォーマンスが得られるようにクラスターのサイズを自動的に変更します。スポットインスタンスの再利用が発生する可能性を低く抑えるため、Salesforce は、クラスターがキャパシティを約 5% 上回ってスケールできるようにしています。キャパシティを追加することで、処理が高速化され、必要に応じてクラスターの可用性と安定性が向上します。「スケールアップしたり、キャパシティが不要になったときにはスケールダウンしたりできることが、大きなメリットだと考えています」と Legault 氏は述べています。「このプロセスは、再利用によってインスタンスが使用できなくなった場合にも役立ちます」。 さらに、Amazon EMR マネージドスケーリング内の新機能を使用すると、Salesforce の UIP は Apache Spark の中間シャッフルデータを格納するインスタンスをスケールダウンすることがなくなり、パフォーマンスの改善とコストの削減につながります。

Salesforce UIP がスポットインスタンスを組み込んだことにより、Savings Plan の使用が補完されるとともに、コンピューティングコストが 60% 超削減されました。これにより、同社では 1 か月あたり 100 万 USD 超のコストを削減できました。フルタイムで稼働する 2 つのクラスターに加えて、データの突然の流入に対応するために必要な場合、UIP チームは 3 つ目のクラスターをコスト効率よくスケールアップできます。UIP チームがスポットインスタンスを使用してアップスケールを処理できると、Salesforce の他の領域のコスト削減にもつながります。Savings Plan のインスタンスが解放され、他のチームがピーク時に使用してコストを削減できるようになるからです。

成果 | フリート管理にインテリジェンスを組み込む

最適化プロセスの一環として、UIP チームはスポットインスタンスアドバイザーを使用しています。これは、企業が中断の可能性の最も低いプールを判断したり、オンデマンド料金を通じてコストを削減したりするのに役立ちます。チームは、Amazon EC2 スポットプレースメントスコアを使用して、より多くのインテリジェンスを動的なフリート管理に組み込むことを希望しています。Amazon EC2 スポットプレースメントスコアでは、Salesforce の要件に基づいて AWS リージョンまたはアベイラビリティーゾーンをほぼリアルタイムで推奨できます。UIP チームは、AWS リージョン全体でその取り組みを拡大する中で、Amazon EC2 スポットプレースメントスコアを使用して、さらにキャパシティを増やして、料金を低く抑えることを計画しています。「当社は、クラウドのキャパシティとさまざまな Amazon EC2 インスタンスタイプを使用して、オンプレミスでは成し得なかったことを行っています」と Legault 氏は述べています。「Amazon EMR マネージドスケーリングは、クラウドの伸縮自在な機能を利用するうえで大きな役割を果たしています。また、スポットインスタンスを革新的な方法で使用するだけで、コストを大幅に削減できます」。

Salesforce について

Salesforce は、非常に広く利用されている顧客関係管理 (CRM) およびカスタマーエンゲージメントプラットフォームとして、世界中で 150,000 を超える企業にサービスを提供しています。Salesforce は、営業、サービス、マーケティング、コマース、IT の各チームを、顧客情報の単一共有ビューで統合し、顧客と従業員の両方との関係を強化するのをサポートしています。

使用されている AWS のサービス

Amazon Elastic Compute Cloud (EC2)

Amazon EC2 は、極めて幅広く層の厚いコンピューティングプラットフォームです。500 を超えるインスタンスを備え、最新のプロセッサ、ストレージ、ネットワーク、オペレーティングシステム、購入モデルから選択できるため、ワークロードのニーズに最適なかたちで対応するのに役立ちます。

詳細 »

Amazon EC2 スポットインスタンス

Amazon EC2 スポットインスタンスを使うと、AWS クラウド内の使用されていない EC2 キャパシティーを活用できます。

詳細 »

Savings Plans

Savings Plans は、1 年または 3 年の期間で特定の使用量 (USD/時間で測定) を契約する代わりに、オンデマンド料金よりも低い料金を実現する柔軟な料金モデルです。

詳細 »

Amazon EMR マネージドスケーリング

EMR マネージドスケーリングでは、クラスターの最小コンピューティング制限と最大コンピューティング制限を指定すると、Amazon EMR が最良のパフォーマンスとリソースの最適な使用状況を実現できるようにクラスターのサイズを自動的に変更します。

詳細 »

今すぐ始める

あらゆる業界のさまざまな規模の組織が AWS を活用してビジネスを変革し、日々ミッションを遂行しています。当社のエキスパートにお問い合わせいただき、今すぐ AWS ジャーニーを開始しましょう。