The next generation of fast, efficient record restoration for Salesforce is here.
Salesforce offers unique challenges to customers who are trying to protect the integrity of their company data. It’s not uncommon for a Salesforce deployment to see many thousands (in some cases, hundreds of thousands!) of record updates per day from user interactions and batch integrations. This presents a problem when one of these update streams goes wrong and updates incorrectly. How does a data admin perform a data restore on a fine-grained set of records to restore just the data that has been corrupted while leaving all the other valid updates in place? What happens if one of these integrations causes data corruption at scale?
To make this challenge even harder, what happens if your team doesn’t detect the corruption when it happens, and users continue to update the system? A standard restore tool that allows you to restore either the database as a whole, the individual object, or by restoring records captured in a specific backup job is not what you need here. There are still many thousands of changes in your Salesforce system that are valid, business-critical updates and need to be preserved.
For years GRAX has provided customers with the pinpoint restore solution that allows them to quickly and easily find and restore data from their own backup storage. Today we are launching the next evolution in restoration technology: GRAX Point-in-Time Restore. With this latest feature, customers are empowered to restore changes en-masse to any point in time since the backup of their history began. GRAX Point-in-Time Restore is the next generation of fast, efficient record restoration for Salesforce when you need to restore hundreds of thousands of records at a time. All this in a sharp, easy-to-use, enhanced user interface as well.
Let’s consider a scenario; your company is running nightly integrations that update your Opportunity Pipeline. This process runs on a schedule every night at 2 AM while everyone is sleeping. There is also a configured daily backup to run after this process is complete; it runs at 4 AM to make sure it captures these changes along with the day’s user updates. Unfortunately, one of the integrations has gone awry in the early Saturday morning batch and updated 50k Opportunities to Closed Lost – making your entire pipeline hosed!
Come Monday morning, your data stewards and CRM admins can use the power of the GRAX Point-in-Time Restore to get everything back on track for the sales to continue.
The steps are simple:
1 – Find your data to restore
2 – Select the fields you wish to have restored
3 – Snap this data set to the Point in Time you want your data
4 – Preview your restore data
5 – Click Restore and fetch a hot drink!
That is all it takes. Now GRAX is batching your records to Salesforce using the highly efficient bulk APIs to enable you to restore hundreds of thousands of records as fast as possible. You can see this in action if you watch the restore progress with real-time status updates of the restore job right there in the user interface (UI). If you feel that you made a mistake, the abort button will cancel your restore job when you click it.
Let’s look at some of the more exciting parts of the GRAX Point-in-Time Restore.
The GRAX Console
The GRAX Console is the new and enhanced UI for GRAX that cleanly separates the tasks of Data Admin from the end-users that access your Salesforce system every day. It is built using modern web technologies that allow specific users to modify data en-masse access to this system. The GRAX Console also leverages the same Single Sign-On mechanism using OAuth, which GRAX users already have in place today, so there is no need to configure different Identity Providers to allow users access. If you are a GRAX Admin in Salesforce, then you can access the GRAX Console.
Under the Restore tab, you will see all your restore jobs and what state they are in. To keep things safe, we will only ever execute one restore job at a time.
Point in Time Restore Configuration
One of the truly powerful features of the GRAX Point-in-Time Restore is the ability to be laser-focused on exactly what data needs to be written into Salesforce. This allows you to repair partially damaged data, even data records that other users in the system may still have been updating. Consider your record types that expose one set of data to your Sales users and a different set of data to your Service Agents. If you need to update for just the Service team, it would be nice not to throw out the Sales Team’s recent changes.
GRAX Point-in-Time Restore enables flexibility by allowing you to select which fields are going to be written as part of the restore execution. As you configure the execution, you can select from all the fields available to GRAX in the backup; you can choose all or just a few depending on your needs.
Here, you also get to specify the point in time you wish this data to be restored to. There is no need to know which backup job captured a particular record; just tell GRAX that you want the data we had on the 1st of September 2021 at 2 PM, and GRAX Point-in-Time Restore will do the rest.
This allows you to restore bulk records to any time since you started your GRAX backups.
Restore Preview and Data Download
With great power comes great responsibility, which has never been truer than when you create a tool that can mass update data in your production Salesforce instance. GRAX Point-in-Time Restore adds a step in that allows you to preview the data you have configured, including downloading the complete record set if your process requires checking every single record.
This makes it super easy to ensure that you will restore only the data you want before continuing.
One more time before you restore, see what you are doing and click the restore button!
Handling Salesforce API Errors
GRAX Point-in-Time Restore is taking advantage of the Salesforce Bulk API, and while this makes the Restore process many orders of magnitude faster, it is still subject to the rules of Salesforce. Yes, errors can occur on the API, from incredibly simple things like a user having a record open for edit or more complicated problems with colliding workflow or validation rules.
GRAX Point in Time Restore allows you to approach these record update failures if (or when) they occur in your restore.
In this Point-in-Time Restore of Account records, you can see that there is about a 10% error of the set of records we tried to restore. It looks like there were some fields in here that caused a problem with the Salesforce security settings. So we can go and rectify that profile problem in Salesforce and then retry just those 510 records that failed.
With this, it keeps it simple for end-users to work through any errors one at a time with just the groups of records that were causing the troubles in the first place.
The GRAX Point-in-Time Restore is available for customers to use today with no need for extra licensing or contract negotiations! Contact your GRAX Customer Success Manager or help@grax.com for details on how to get this in your environment.