![]() |
1
2
假设您是在一个或几个事务中加载数据,那么大部分时间可能都花在构建索引上(取决于表的模式)。
如果您的表比innodb缓冲池大(或者几乎和innodb缓冲池一样大),那么您就有麻烦了;不能有效地插入带有索引的ram的表,因为它必须执行读操作才能插入。这使得可以更新现有索引块。 请记住,磁盘写入是正常的(它们大多是顺序的,而且您有一个电池支持的raid控制器,对吧?),但读取速度很慢,需要避免。 总结
不要做上面列出的任何优化,它们可能是在浪费时间(不要相信我的话-在实验室的测试系统上测试这些操作的基准)。
|
![]() |
2
0
要回答问题的最后一部分,不,它不会重新开始工作;如果插入没有被复制,但随后的更新是,结果将不是一个漂亮的景象。禁用外键和唯一键应该是可以的,前提是以后重新启用它们,并处理任何违反约束的情况。 你多久做一次?能否更频繁地加载较小的数据集? |
![]() |
Sweepy Dodo · JSON lite的格式化 6 月前 |
![]() |
giantjenga · 优化整数向量到二进制向量的转换 8 月前 |
![]() |
Zegarek · Postgresql递归查询未提供预期结果 8 月前 |
![]() |
Joe · 为什么这两个查询之间的性能存在如此大的差异? 11 月前 |
![]() |
tic-toc-choc · 在`dplyr中高效使用列表进行过滤` 11 月前 |