Apex Data Loaderを使用してレコードの挿入/削除を行っていますが、SalesforceのAccountオブジェクトに200万レコードを挿入する最も良い方法は何ですか
これを達成するための代替方法をお聞かせください。
Apex Data Loaderを使用してレコードの挿入/削除を行っていますが、SalesforceのAccountオブジェクトに200万レコードを挿入する最も良い方法は何ですか
これを達成するための代替方法をお聞かせください。
force.comプラットフォームを使用できる場合、使用できるBulk APIがあります。このDreamforce 09の注釈も参照してください。
自分でやりたい場合は、BulkAPIまたは管理用セットアップデータのインポート(セットアップ|管理設定|データインポート|ビジネスアカウントのインポート)を使用します。 BulkAPIにはバッチあたり10,000行の制限があり、管理インポートにはアップロードごとに50,000行の制限があるため、データをスライスする必要があります。
また、新しいバージョンのData Loader外部アプリケーションで新しいBulkAPIがサポートされ、物事をスライスすることができます。セットアップメニューの管理設定|データ管理でデータローダーをダウンロードできます。そこからインポートを実行し、アプリケーションがバッチにデータをスライスさせる。
インポートが遅すぎる場合は、トリガー、重要でないワークフロー、アカウント検証を一時的に中断してください。 Salesforceデータベースは、直接データベースではなく、実際のデータベースに残る前にすべてのデータをチューニングしなければならない抽象レイヤーであり、常にパフォーマンスの低下を招くことに注意してください。
mmixの回答が正しいです、私は最新のデータローダーを使用し、バルクAPIをオンにして、データを緩和します。また、Informaticaのようなパートナーを使用することもできます。大きな負荷で多くの経験を積んでいます。
バルクAPIを使用すると、アップロードした(冗長化された、バックアップされた)ディスクにストリームをストリーミングし、並列ジョブ(複数のバッチがある場合)を使用してアップロードジョブをデータベースにロードできます。これは非常に速く、1時間に何百万ものレコードになる可能性がありますが、速度はさまざまな理由で変わる可能性があります。保証はありません。これは非同期APIです。
アペックストリガーやワークフローが多数ある場合、または負荷の更新(所有権の変更など)が必要な場合は、負荷が大幅に低下します。
あなたが本当に低負荷で立ち往生している場合は、サポートケースを提出して、私たちの仲間の人にあなたの負荷をトレースさせて、時間が費やされている場所を見てもらうこともできます。
希望するものがあります。