Hi developers,
In August, we started the DataStore v2.0 Public Beta. Thanks to everyone who opted-in and gave us feedback! After the final prep and testing, we’re thrilled to announce that DataStore v2.0 is now officially released for general availability!
You can now directly use the new functionality for both your existing data and new data! All of the features are fully backward compatible. As mentioned in the previous announcement, DataStore v2.0 offers the following benefits:
-
Automatic backup with versioning: To protect your data, all objects in your datastores will be automatically versioned whenever you update them. The latest version will be kept forever and the older versions will be stored for 30 days. When you need to restore your data, you use the new versioning APIs to list the versions, find the correct data, and restore it.
-
Enumerate your datastore with listing: You can now enumerate all of your datastores in an experience and list all the keys in a datastore with the new listing APIs, which will be useful to understand data usage and run migrations. The key listing API also supports filtering through prefix, which will be handy to quickly find certain keys.
-
Tag your data for future indexing and querying: You can now set metadata for each object in a datastore, e.g. color of a house and UserID for GDPR requests; Querying and indexing based on such metadata will be supported in future releases. Tools like automatic GDPR Right-to-be-Forgotten request processing, and experiences like dynamically searching user generated items are all made possible with data tagging.
To learn more, check out our latest DataStore Tutorial and the API references.
DataStore v2.0 is an important milestone to achieve our vision of making DataStore best-in-class data service for the community. We’d like to thank you for the continuous support and feedback, which is the best motivation for us! Hope you’ll enjoy this update and take full advantage of the new features!
Happy building!
The Roblox Developer Services Team
FAQ
What actions do I need to take if I opted-in for public beta?
- The v2 flag will not be checked anymore, so you can keep your code as is and it will continue to work. If you’d like to keep your code clean, feel free to remove the flag setting part.
Please check out our previous FAQ for answers to additional questions.
Known Issue
Update on Nov 19
We wanted to share a notice on a recent issue with the automatic versioning backup system. While most of you have not yet needed to use backups, as they would only be required if your experience had a data issue, we want to be transparent on the status of the system in the rare case it affects you.
The backup system is designed to store older versions of data for up to 30 days. A recent investigation uncovered an issue where versions that were less than 30 days old were being incorrectly flagged and deleted. This only impacted version history and did not impact the most recent version. It has since been fixed going forward and there should not be any noticeable changes or issues for users playing your experiences. Additionally we are investigating solutions to better protect these backups.
When calling the ListVersionsAsync() API, you may only find a limited number of previous versions before November 17. Please note the automatic versioning is still working, and you will continue to see new versions being created as your experience updates your datastore. While we fixed this issue and going forward no backup data will be lost, we are investigating other solutions to better protect these backups.