I want to create an mobile app that need to send data every minute to backend server with mysql database.
So if I have 10 000 users that work 8 hours a day that will be:
60 request * 8 hours * 30 days * 12 months = 172800 reuqest per year for one user.
10 000 users * 172800 = 1 728 000 000
and this is I think a lot of data for mysql database, so what you suggest? What I need to use? Which kind of database? NoSql or mysql can handle this ?
If you have 10,000 users data every minute, then that is 10,000/60 ~= 200 inserts per second. That is a large load, but not unreasonable. However, it does bring up a lot of questions such as:
- How will this data be used?
- What is your backup strategy?
- How much history is needed?
- How are you managing the network bandwidth?
- What is the peak insert rate?
- How quickly does data need to be available?
- How important is ACID-compliance?
The answers to these questions should help you decide the best data source. Both MySQL and key-value No-SQL databases are up to this challenge. MySQL databases can handle billions of rows per year. Typical No-SQL databases (MongoDB, Dynamo DB, and so on) can also handle this volume of data.
Answered By – Gordon Linoff
Answer Checked By – Candace Johnson (BugsFixing Volunteer)