To develop and test within sandboxes efficiently and with as few errors as possible, sandboxes need to be configured and populated with data that mirrors the source environment as closely as possible.
How can you get the data you need into your sandbox environments? Here are four options.
Refreshing a Full or Partial Copy sandbox updates the sandbox’s data and metadata from its source org. Refreshing a Developer or Developer Pro sandbox only updates the metadata. If the sandbox is a clone (see below) or if it uses a sandbox template, the refresh process updates the org’s data in addition to its metadata.
During the refresh process, Salesforce marks the new org as the active version, and the old org is flagged for deletion. At some future point in time (usually about 2 days), the old version of the org is permanently deleted from the database.
The frequency of refreshes is limited based on the type of sandbox you’re using. Refreshes occur in a queued fashion, so the time it takes to refresh depends on the size of the org, its customization, how much data it contains, the number of objects and configuration choices, and server load. If timed correctly, it can take only a few minutes to refresh a small sandbox, but it can also take days or even weeks if you’re attempting to refresh a large org during peak hours.
Cloning enables you to create a sandbox by replicating an existing sandbox rather than using the production org as a source. This is useful once the ideal data set has been created. It allows multiple users to work on identical individual sandboxes for each type of work, such as development, testing, and staging, without interfering with the work of others.
While Sandbox Cloning is an excellent resource to use once an ideal data set has been seeded into your sandbox, you’re not going to want to clone data from a sandbox that doesn’t have relevant data to your project.
Data Loader is a client application for the bulk import or export of data. It can be used through the user interface to bulk import or export Salesforce records through .CSV files, as well as Insert, Update, Upsert, Delete, or Export Salesforce records as .CSV files. Data Loader command line can also be used to move data to or from a relational database, such as Oracle or SQL Server.
Using Data Loader to populate an Excel spreadsheet with exported data from production and then populating a sandbox is a multi-step process that is prone to errors. It’s also very difficult to recreate relationships where records have multiple parents, intra-object relationships, and attachments. If you plan to populate your sandboxes using Excel and Data Loader, be sure to set aside a couple of extra weeks for each project so you’ll be able to fully replicate necessary objects and their dependencies.
Not all methods of populating sandboxes are equal. The above-mentioned solutions often lead to sandbox seeding challenges that slow the process down between development and go-live. Sandboxes are only as valuable as the data they contain, and populating them with perfectly sized, relevant data sets can be arduous and time consuming. Without an automated seeding solution from Salesforce AppExchange, it’s difficult to innovate quickly and identify coding errors before code is released.
As an alternative solution, consider Enhanced Sandbox Seeding by OwnBackup. This a revolutionary new approach to seeding sandboxes enables administrators and developers to effortlessly define, finetune, and automate the replication of precise subsets of data schemes from production environments or other sandboxes, then quickly seed them to Developer, Developer Pro, or Partial Copy Sandboxes with identical metadata.