我有一个程序将数据写入 mysql 数据库并将大量日志写入文件..我注意到如果我将大量数据作为程序的输入,即创建日志的数据高达 70GB我使用的表的 mysql 数据库表计数 (*) 超过 1,000,000 个条目,一段时间后整个程序变慢了。
但是当最初以大约 1000/分钟的速度收集报告时,当数据如我之前所说的那样变得 < 400/分钟时。是数据库写入还是文件写入导致程序变慢?
日志只是从我的程序中输出的,被重定向到一个文件。那里没有缓冲。
最佳答案
有一种简单的方法可以对此进行测试。
如果您创建一个blackhole
表,MySQL 会假装什么都做,但不会真正将任何数据写入文件。
- 像您一样创建表 普通表,
- 制作一份日志拷贝。
- 现在像在真实数据库中一样写入黑洞数据库。
如果它快得多,那是 MySQL 让你伤心了。
参见:http://dev.mysql.com/doc/refman/5.5/en/blackhole-storage-engine.html
关于c++ - mysql数据库写入和文件写入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6153615/