Scripting Helpers is winding down operations and is now read-only. More info→
Ad
Log in to vote
1

What is the best way to store a Database? (other than Data store)

Asked by
GShocked 150
8 years ago
Edited 8 years ago

I need to store a lot of information for a first-person shooter. This includes: Player information (player stats, gun configs, owned guns, credits, outfits, etc.) Server information (server id, map, mode, etc. - for the server browser/matchmaking)

If I were to use Datastores, I would get errors because people using the server browser or matchmaking service would tell the server to request a key in a global datastore - and the Roblox wiki says if a key is accessed too much in a short amount of time, it will spew out an error saying its being accessed too much.

So I am under the impression that I should use HttpService and a separate database service. There is a 500 requests per minute per server limitation, which is more than I need anyway. The two options I've come up with are Trello and a homemade database using PHP and a web host. I've never used Trello but I've quickly looked into it - it seems viable but I don't know if I'd run into any issues.

I want to know if there are any SECURE database services I should try, and if there are any limitations that come along with them. Or is Trello a perfect option?

EDIT: I've figured out how to use Google Firebase's Realtime Database with HttpService to accomplish what I want. The only limitations with the free tier are:

1GB storage (more than enough for me)

10GB Downloaded (maybe that means 10gb transfer? more than enough for me if that's the case)

100 simultaneous connections (using the API doesn't count as a simultaneous connection, so that's no problem)

More info on connecting to Firebase via HTTP REST API here: http://stackoverflow.com/questions/40520696/how-do-i-access-my-firebase-database-via-http-rest-api

2 answers

Log in to vote
1
Answered by 8 years ago

You could use http request to POST and GET data from a remote server. I found several websites (this is one of the website i have found, there are a lot out there that offer SQL services) where it gives access to a SQL server to save data from your website but you could use the SQL server to save data from anywhere since it gives all the information needed to connect to it remotely. I have also found another site called Nanoscale which allows you to create RESTFUL apis to GET, POST, UPDATE, or DELETE information on any database you have linked in using a URL. But this requires you to know javascript to tell it what to do with the data. I haven't really dug that much into it but i have used the examples and they are amazing so far. :D

0
The problem with free web hosting services is that they may not have the best uptime. The best of paid services have a minimum of a couple hours of downtime per year. That's why I'm looking for reliable database servers - like AWS, Azure, etc. Since I'm looking for free, a lot of free service limitations make me weary about whether I will meet those limitations. Right now, I'm trying out Google Fi GShocked 150 — 8y
0
...Google Firebase, which has a limitation of 100 simultaneous connections for the free tier. I'm not sure if sending REST API requests counts toward that, but for now I'm just communicating with their technical support in hopes of getting their API to work. GShocked 150 — 8y
0
If you have a mac, you could host your own server with xcode using [Server-Side SWIFT](https://github.com/PerfectlySoft/PerfectTemplate) (if you want to make a RESTFUL Api, but it's pretty complicated and a lot of stuff break with any updates to xcode or the mac. Good news is that the developers working on this are very helpful and have created their own slack: https://perfectswift.slack.com/messa addictedroblox1414 166 — 8y
0
ges/help/  I have also created my JSON server locally with Terminal it wasn't that difficult. I'm not sure how many requests these could take, i haven't looked into it nor have tried thousands of request at a time. addictedroblox1414 166 — 8y
View all comments (4 more)
0
As I said though, I need maximum uptime. I also don't have a mac. Anyhow, I've figured out how to securely communicate with Google Firebase Realtime Database. All I need to do now is figure out how to do more than GET requests. GShocked 150 — 8y
0
Do you not mind sharing what you did? :) Also, are you trying to figure out how to do a POST request with Roblox? addictedroblox1414 166 — 8y
0
Is that what you meant when you said "All I need to do now is figure out how to do more than GET requests."? addictedroblox1414 166 — 8y
0
I did it. :) I can now send POST, PUT, DELETE and GET requests to firebase realtime database through Roblox :D addictedroblox1414 166 — 8y
Ad
Log in to vote
0
Answered by 8 years ago

Well ROBLOX recently increased their DataStore limits. And I suggest using OrderedDataStores for list type things.

0
OrderedDataStores and using :GetSorted() would get rid of the problem with accessing a specific key too often, but using :GetSorted() has a limitation of 5 + numplayers * 2 per minute per server instance. If a player refreshed the server browser at least 7 times in a minute he would overload the :GetSorted() request limitation. So I'm still on the hunt for a free and secure database service. GShocked 150 — 8y

Answer this question