如何使用MySQL和整个LAMP每天处理500万事务


How can I handle 5M Transactions every day with MySQL and the whole LAMP?

嗯,也许5M没有那么多,但它需要接收基于以下模式的XMLhttp://www.sat.gob.mx/sitio_internet/cfd/3/cfdv3.xsd因此,我需要每行保存几乎所有的信息。现在,根据法律,我们必须将信息保存很长一段时间,最终这个数据库将非常非常大。

也许每天创建一张桌子?比如_invoices_16_07_2012。

嗯,我迷路了。。我不知道怎么做,但我知道这是可能的。

最重要的是,我需要创建一个PDF和另外两个基于每个XML的文件,并将它们保持在HD上。你应该能够使用网站快速检索你的文件。

将大量数据放入一行中的一个字段中(不确定这是否是您正在考虑的事情)。

编写一个脚本来解析xml对象,并将xml中的每个值保存在一个单独的字段中,或者以对您有意义的方式保存(因此您必须创建一个包含所有适当字段的表)。您应该能够将数据输入为每个xml表的一行。

您还需要对数据库进行分片,并将其分布在多个表上的服务器集群中。MySQL确实支持这一点,但我以前只增强过自己的分片机制。

不要为每个XML工作表创建一个表,因为这太过分了。

现在,你为什么需要mysql?您在查询XML中的数据吗?如果存储这些数据只是为了存档,则不需要mysql,而是可以将文件压缩到tarball中,并直接存储在磁盘上。您的网站可以通过这种方式轻松获取文件。

如果你确实需要一个大数据存储,可以处理500万个事务,数据量与你所说的一样多,你可能还想研究Hadoop之类的东西,并将数据存储在分布式文件系统中。如果你想更容易地查询你的数据,可以看看HBase,它可以在Hadoop上运行。

希望这能有所帮助。