Allows to store and manage a massive amount of data on the Salesforce platform
Provides consistent performance for a billion records or more, and are accessible with a standard set of APIs to your org or external system
This includes data such as historical event data, web log files, and archival data
Once you create a Big Object, you can correlate it with your core customer data using tools such as SOQL and Async SOQL
Metadata API must be used to define or add a field to a custom big object. We can’t do it through the UI
You can create up to 100 big objects per org
Supports only object and field permissions
No transaction support
Can’t use triggers, flows, processes, and the Salesforce app
SOQL relationship queries are based on a lookup field from a big object to a standard or custom object in the select field list (not in filters or subqueries)
Standard and Custom Big Objects
Standard
Defined by Salesforce and are included in Salesforce products:
Example: FieldHistoryArchive - part of Field Audit Trail Product:
To store up to 10 years worth of archived field history data,
helping you comply with industry regulations related to auditing and data retention
Custom
Defined and deployed by you through the Metadata API
Create an object file that contains its definition,
fields, and index, along with a permissionset to define the permissions for each field,
and a package file to define the contents of the object metadata
The fields defined in a big object’s index determine the big object’s identity and its ability to be queried
Use Cases
Provide 360° View of the Customer
Auditing and Tracking - long-term view of your users’ Salesforce usage for analysis or compliance purposes
Historical Archive - historical data for analysis or compliance purposes
Querying Big Objects
Subset of standard SOQL: when the query will return a small amount of data,
don’t want to wait for the results, or need the results returned immediately for use in Apex.
Async SOQL:
Schedules and runs queries asynchronously in the background
Can run multiple queries in the background while monitoring their completion status
Efficient way to process the large amount of data in a big object.