MYSQL Innodb更新问题:
一旦我收到记录的响应(状态),我需要将响应更新到一个非常大的表(大约100万条记录并将继续增加),这将保持发生可能是每秒100次。我可以知道会有任何性能问题吗?或者我可以修改任何设置以避免表锁定或查询速度缓慢的问题。
感谢。
答案 0 :(得分:2)
这听起来像是一个设计问题。
而是存储数百万条数据记录的标志(状态记录更新更改),您应该在指向状态记录的数据记录中存储引用。因此,当您更新状态记录时,不需要进一步的数据库操作。此外,当您扫描数据记录时,您应该加入状态记录(如果需要显示)。如果经常发生状态记录更改,则最好更新数百万条数据记录。
也许,我错了,你应该解释db(结构,表记录计数)以获得更准确的答案。
答案 1 :(得分:1)
如果您使用MyISAM存储引擎存储您的表格,那么您的表格将lock with every update。
但是,InnoDB存储引擎能够locking individual rows。
如果您需要同时UPDATE
多个记录,InnoDB可能会更好。
答案 2 :(得分:0)
您在数据库上拥有的任何索引(尤其是聚簇索引)都会降低您的写入速度。
索引加快了阅读速度,但它们减慢了写作速度。大多数数据库读取的内容多于写入,但听起来你的内容更多。