0

我有一个进程,每台服务器打开 60 个 Iframe 窗口,每个窗口都执行部分任务。mysql 表没有索引,数据在批量插入中一次插入 1000 行(首先写入每个帧中创建的临时内存,然后批量卸载到 hd 表)。每张表处理 15 亿行数据,由运行 32 核 128g ram 服务器的 60 帧写入,它在 6-7 小时内将服务器 cpu 最大化到 99-100%。我有 3 台服务器处理这个任务,还有 1 台在 24 个驱动器上作为数据库服务器,它只运行 6 - 15% 的 cpu 负载来管理 mysql (5.0.67) 。从 1 到 3 台服务器处理数据,不会增加写入的“总”数据,瓶颈可能在哪里发生?3 个中的每一个都写入 1 个 db 表,表锁最小,我可以将其翻转到每一帧写入 1 个表以消除锁定,但我认为这不是问题所在,因为 180 个连接连续写入仅相当于每秒 5-10 个锁定。删除索引确实大大加快了写入速度,(一旦写入所有数据,我就必须处理这个问题)。是否有 mysql 值/选项/?这会改善这一点,我还有 160 个表要创建?我希望我可以使用 Ram 表,但是每个表的数据本身就是 33 gig,而 mysql 5.0.67 不会这样做,有人认为切换到 5.6 会有很大的不同吗?我很难过,mysql 说它的平均写入速度为 47 mb / s,关键效率 = 100%,查询缓存命中率 = 93 - 100%。非常感谢任何帮助感谢大家的任何意见。t 认为这是考虑 180 个连接持续写入的问题所在,仅相当于每秒 5 到 10 个锁。删除索引确实大大加快了写入速度,(一旦写入所有数据,我就必须处理这个问题)。是否有 mysql 值/选项/?这会改善这一点,我还有 160 个表要创建?我希望我可以使用 Ram 表,但是每个表的数据本身就是 33 gig,而 mysql 5.0.67 不会这样做,有人认为切换到 5.6 会有很大的不同吗?我很难过,mysql 说它的平均写入速度为 47 mb / s,关键效率 = 100%,查询缓存命中率 = 93 - 100%。非常感谢任何帮助感谢大家的任何意见。t 认为这是考虑 180 个连接持续写入的问题所在,仅相当于每秒 5 到 10 个锁。删除索引确实大大加快了写入速度,(一旦写入所有数据,我就必须处理这个问题)。是否有 mysql 值/选项/?这会改善这一点,我还有 160 个表要创建?我希望我可以使用 Ram 表,但是每个表的数据本身就是 33 gig,而 mysql 5.0.67 不会这样做,有人认为切换到 5.6 会有很大的不同吗?我很难过,mysql 说它的平均写入速度为 47 mb / s,关键效率 = 100%,查询缓存命中率 = 93 - 100%。非常感谢任何帮助感谢大家的任何意见。一旦写入所有数据,就必须处理这个问题)。是否有 mysql 值/选项/?这会改善这一点,我还有 160 个表要创建?我希望我可以使用 Ram 表,但是每个表的数据本身就是 33 gig,而 mysql 5.0.67 不会这样做,有人认为切换到 5.6 会有很大的不同吗?我很难过,mysql 说它的平均写入速度为 47 mb / s,关键效率 = 100%,查询缓存命中率 = 93 - 100%。非常感谢任何帮助感谢大家的任何意见。一旦写入所有数据,就必须处理这个问题)。是否有 mysql 值/选项/?这会改善这一点,我还有 160 个表要创建?我希望我可以使用 Ram 表,但是每个表的数据本身就是 33 gig,而 mysql 5.0.67 不会这样做,有人认为切换到 5.6 会有很大的不同吗?我很难过,mysql 说它的平均写入速度为 47 mb / s,关键效率 = 100%,查询缓存命中率 = 93 - 100%。非常感谢任何帮助感谢大家的任何意见。s 写入平均 47 mb / s,密钥效率 = 100%,查询缓存命中率 = 93 - 100%。非常感谢任何帮助感谢大家的任何意见。s 写入平均 47 mb / s,密钥效率 = 100%,查询缓存命中率 = 93 - 100%。非常感谢任何帮助感谢大家的任何意见。

4

1 回答 1

2

您是否同时打开 60 个 iframe?

这意味着所有进程都是并行的。事情不会像这样变得更快,而是会变慢。

瓶颈与从磁盘读取表有关。成倍的并发磁盘访问会减慢一切。更不用说同时长时间运行的查询,这可能会在数据库服务器中相互阻塞。

比较写入这些值的 47 Mb/s:

  • SATA I 最大理论吞吐量 150Mb/s
  • 1000 Gbps 网络:最大理论吞吐量 125Mb/s

你和两者都很亲近

于 2013-08-14T13:14:45.170 回答