MySql数据库用于大量数据

时间:2014-12-19 14:25:12

标签: php mysql sql performance nosql

我想创建一个移动应用程序,需要每分钟将数据发送到带有mysql数据库的后端服务器。

因此,如果我有10 000名用户每天工作8小时,那将是:

60个请求* 8个小时* 30天* 12个月=每年172800 reuqest一个用户。

10 000名用户* 172800 = 1 728 000 000

这是我认为mysql数据库的很多数据,那么你的建议是什么?我需要用什么?哪种数据库? NoSql或mysql可以处理这个吗?

2 个答案:

答案 0 :(得分:3)

评论太长了。

如果每分钟有10,000个用户数据,则每秒10,000 / 60~ = 200次插入。这是一个很大的负荷,但并非不合理。但是,它确实提出了很多问题,例如:

  • 如何使用这些数据?
  • 您的备份策略是什么?
  • 需要多少历史记录?
  • 您如何管理网络带宽?
  • 峰值插入率是多少?
  • 数据需要多快才能获得?
  • ACID合规性有多重要?

这些问题的答案应该可以帮助您确定最佳数据源。 MySQL和键值No-SQL数据库都可以应对这一挑战。 MySQL数据库每年可以处理数十亿行。典型的No-SQL数据库(MongoDB,Dynamo DB等)也可以处理这一数据量。

答案 1 :(得分:2)

MySQL可以处理这个,没问题。第二个问题,你需要问自己,你的服务器是否可以每分钟处理10K请求(也许你正在分享它)。

你应该尝试计算每秒或每分钟的请求,每年有点含糊不清。因此,对于每个拥有10K用户的用户说1分钟就足够了。 而且它很多,但可以做到。

如果您需要数据,我会调整性能。

例如,如果你不介意延迟1小时:在手机数据库中每分钟注册数据,只需每小时发送一次数据并作为批量插入MySQL。 这是请求和插入查询的1/60。 这有利于您的服务器负载和用户体验,即耗尽电池寿命。