I want to know if saving this amount of data is advised or not. Will something this big be susceptible to data loss? If this amount of data was lost then the player would generally be starting back at square 1.
Should I consider DataStore2? I’m pretty lost and I’m terrible with DataStores.
(Sorry if I’m worring over nothing, please just guide me.)
I wouldn’t consider that big, its still rather small imo. You should be fine saving that data as long as you consider the factors above.
However for the last two points, if the data saved is quite often and/or the data saved is big, your most likely gonna get a request limit based on time and ur data wouldn’t be saved. You can only do a new request after the maximum time passes through.
My personal experience I’ve used the normal Roblox Datastore, Datastore2, and Global Datastore ( hosted outside roblox ). I’ve saved up data larger than what you have provided, I still haven’t received a case of data loss yet, probably because I’ve considered those factors.
The data would be saved every 3-5 minutes and it would be saved as well as when a player quits and joins and if the server shuts down. (Also everytime a player purchases a developer product)
I guess the data wasn’t as big as I thought it was, so with the information provided above, would there be a big or small chance of data loss?
No I dont believe there will be a case of data loss. You should probably wait for what other people have to say though, I haven’t run into a single issue since starting with datastores. Though, what method are you using for saving data, when server shuts down?
It is suggested to use game.BindToClose() and hook up the data save function.
I think you have the wrong idea of data loss. Data loss is when you fail to handle data saving and loading correctly or unable to use the data store due to a service outage. Data loss is not primarily tied to the amount of data being stored as the data limit is hard to hit in most cases.
The data limit per data store is documented in the developer hub. You can check the size of your data with HttpService JSON encode and printing the size (in bytes)
Best way of saving data for me is Global Datastore. If I am being specific, Firebase Realtime Datastore. Its useful for my case considering I need to use the data in multiple place files. There is already a module created on it which I am using and its great. You can check it out if you havent seen it already: [Open Source] FirebaseService
I’d suggest you use Datastore2 for your case. It has alot of great functions provided through their module.
Saving data every time a developer product is purchased can result in getting rate limited, I had to deal with that many months ago. I’d recommend when someone purchases a developer product, you add it to a queue and have it get saved the next 3-5 minute save cycle.