如何建立一个稳定的系统来处理9000万行和每天都要进入实时服务器?

时间:2017-02-15 15:05:16

标签: mysql google-bigquery bigdata

我有一名员工奖励&公司的跟踪系统。我正在开发一个系统,每天为我提供FTP销售数据。 (不幸的是,他们没有提供这方面的网络服务。)我必须存储&处理所有新的销售和员工数据,我必须计算员工通过销售获得多少积分,他们拥有多少徽章......(基于销售额)。我已经有一个系统正常工作,但我正在考虑将这些计算过程移动到云,并只是在计算后传输点数据。我的系统读取所有销售数据并将其存储在MySQL中。然后,PHP脚本将原始数据处理为点数据。我的网页不加载原始数据,只需要基本的个人信息和员工钱包余额。

在这种情况下,哪个数据库系统可能更适合这个?哪种服务(AWS,Gcloud等......)适合我们的需求?如何才能使这个系统更快地运作?

提前致谢。

1 个答案:

答案 0 :(得分:1)

首先通过引入消息队列(下载,文件处理,计算等等)使一些进程并行和异步。对于PHP / MySQL,最简单的建议是Beanstalkd它有一个很好的admin panel

对于更大的步骤,您可以选择像Google BigQuery这样的云服务,每月您可以免费获得1TB查询,TB的存储成本低10-20美元(2017年第一季度)。这要求您通过流式插入或加载作业将数据副本插入BigQuery。数据进入后,即使在大型数据集上也可以编写更长时间的SQL查询。如果您需要通过用户定义函数修改某些行,您也可以在BigQuery中执行此操作。

如果您正在寻找超过2000 QPS的MySQL替代品,可以查看Cloud Spanner这里是Quizlet's great article what is Spanner good for