gpt4 book ai didi

php - 何时禁用键

转载 作者:行者123 更新时间:2023-11-29 01:45:21 26 4
gpt4 key购买 nike

我有 35 个大型(100 万行和 35 列)数据库,每个数据库都根据主键更新每行导入。

我正在考虑将这些更新分组到 block 中,禁用 key 然后重新启用它们。

有谁知道什么时候建议禁用按键。即,如果我要更新单个记录,那将是一个糟糕的主意,但如果我想更新每条记录,那将是一个好主意。是否有任何数学公式可以遵循,还是我应该继续进行基准测试?

最佳答案

当我注意到对插入/更新有特殊的性能影响时,我会禁用我的键。这些是最容易陷入外键问题的。如果插入中有很多列和非空属性,则将一行插入具有数千万条记录的完全键控/索引表可能是一场噩梦。我不会担心小表中的键/索引 --- 在较小的表中(假设大约 500,000 行或更少,可能有 6 或 7 列)键可能不会杀死你。

如上所述,您在执行此操作时还必须考虑禁用索引的实时管理。如果索引由数据库实时维护,则会减慢更改操作的速度数据库中的表也是如此。

关于数学论坛:当您有/没有索引时,您可以查看插入/更新速度的趋势,与数据库大小有关。在某个时候(即你的数据库达到一定大小)你可能会发现插入的时间开始呈几何级数增长......或者它需要一个陡峭的“跳跃”。如果你能在你的系统中找到这些点,你就会知道你什么时候把它推到极限——一个好的管理员甚至可以告诉你为什么,在那些点上,系统性能正在下降。

具有讽刺意味的是——有时键/索引会加快速度!索引和键可以通过使任何子查询或其他操作非常(线性时间)快来加速某些更新和插入。因此,如果操作速度很慢,您可能会问自己“是否有一些静态数据可以索引以加快查找操作速度”?

关于php - 何时禁用键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8298372/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com