Big Object の使用開始
学習の目的
この単元を完了すると、次のことができるようになります。
- Big Object とは何かを説明する。
- カスタム Big Object の一般的な使用事例を挙げる。
- Big Object を照会する方法を特定する。
Big Object とは
有能な Salesforce プロの皆さんは、標準オブジェクト、カスタムオブジェクト、外部オブジェクトについてあらゆることを知っています。組織や外部システムで素晴らしい先駆的なことを行うために、これらのオブジェクトがデータ管理や操作にどのように役立つかも知っています。
このビッグデータの新時代には、自分自身の成功が災いして、データが多すぎるという状況に陥ることがよくあります。そのような場合には、分析する数値はあっても、効果的で効率的に分析することが困難です。パフォーマンスは影響を受け、標準オブジェクト、カスタムオブジェクト、外部オブジェクトがもっと大きかったらよかったのに、という気がしてくるでしょう。
そこで登場するのが Big Object です。Big Object を使用すれば、Salesforce プラットフォーム上で大量のデータを保存して管理することができます。大量というのはどれくらいでしょうか?
1000 レコード? いいえ、もっと大量です。
10 万レコード? もっとです。
100 万? まだまだ、全然違います。
Big Object は、10 億件以上のレコードでも安定したパフォーマンスを発揮し、組織や外部システムは API の標準セットを使用してアクセス可能です。それだけの大量のデータについて考えてみてください! 基本的には Big Object は、ユーザーがすでに知っていて愛用しているオブジェクトを巨大化させたものです。
次の 2 種類の Big Object があります。
標準 Big Object は、Salesforce によって定義され、Salesforce 製品に含まれるオブジェクトです。項目監査履歴製品に含まれている FieldHistoryArchive は、標準 Big Object の例です。FieldHistoryArchive を使用すると、最大 10 年分のアーカイブ済みの項目履歴データを保存できるため、監査とデータ保持に関する業界の規制に準拠できます。
カスタム Big Object は、[設定] で定義されリリースされます。[設定] でカスタム Big Object を作成し、その定義や項目、インデックスを設定できます。Big Object のインデックスで定義された項目によって、その Big Object の ID と、その Big Object を照会する機能が決まります。その作成方法については、次の単元で説明します。
カスタム Big Object の使用例
Big Object を使用してさまざまな種類のデータを保存することができますが、Big Object はいくつかの特定のシナリオに対処するために作成されました。
顧客の 360 度ビュー
お客様には、保存する顧客情報が大量にあります。ロイヤルティプログラムから取引、注文、請求情報まで、カスタム Big Object を使用すれば、すべての詳細を追跡できます。
監査と追跡
分析またはコンプライアンス目的で、ユーザーの Salesforce 利用状況を長期的に追跡します。
履歴アーカイブ
分析またはコンプライアンス目的で、履歴データへのアクセスを管理しながら、中核的な CRM または Lightning Platform アプリケーションのパフォーマンスを最適化します。
Big Object のクエリ
もちろん、それだけのデータを保持していても、レコードに対して適切な分析を実行できなければ役に立ちません。標準 SOQL で Bulk API や Apex 一括処理を使用して Big Object を照会できます。Salesforce データの操作に慣れているであれば、Bulk API や Apex 一括処理も問題なく使用できるでしょう。Big Object での標準 SOQL の動作がどのように異なるかについては、次の単元で詳しく説明します。
Bulk API は、レコードが 10 万件を超える結果も照会できるため、レポート作成に最適です。データを操作する必要がある場合は、Apex 一括処理のほうが適しています。Salesforce では、5 万件を超える結果セットを操作する場合は、セルフページネーションを実行するように Apex 一括処理ジョブを設定することをお勧めします。追加の処理が必要な場合は、finish()
コールで追加の Apex 一括処理ジョブをトリガーすることもできます。
注意事項
Big Object の操作は大規模であるため、その動作はその他のオブジェクトと完全に同じではありません。Big Object を使用するときには、次の点に注意してください。
- Big Object でサポートされるのは、オブジェクトと項目の権限のみです。
- Big Object のリリース後は、インデックスを編集したり削除したりすることはできません。インデックスを変更するには、新しい Big Object を使用してやり直します。
- SOQL リレーションクエリは、Big Object から標準オブジェクトまたはカスタムオブジェクトへの選択項目リストの参照項目に基づきます (検索条件やサブクエリは使用できません)。
- Big Object では、Salesforce カスタム Lightning コンポーネントと Visualforce コンポーネントがサポートされ、標準 UI 要素 (ホームページ、詳細ページ、リストビューなど) はサポートされません。
- 組織ごとに最大 100 個の Big Object を作成できます。Big Object 項目の制限は、カスタムオブジェクトの制限と同様で、組織のライセンスの種類によって異なります。
- Big Object では、Big Object、標準オブジェクト、カスタムオブジェクトを含むトランザクションはサポートされません。
- データ規模をサポートするため、Big Object ではトリガー、フロー、プロセス、Salesforce アプリケーションは使用できません。
リソース