gpt4 book ai didi

mysql - 我应该如何管理每小时插入和删除大量行的表?

转载 作者:行者123 更新时间:2023-11-29 14:38:31 25 4
gpt4 key购买 nike

我必须在表中临时存储大量数据,一次一个小时。例如,我每小时写入 20k(或其他大量)记录。我在一小时内对这些数据做了一些处理,到一小时结束时,表再次为空。在新的一小时开始时,我添加了 20k 条记录并继续该过程。

我当前将数据存储在具有 INT 自动增量主键的 MySQL 表中。

最终,我将用完数字,我正在寻找解决问题的解决方案,而不是推迟它(例如使用无符号的 BIG INT)。我可以想到几种解决方案,但我不确定每种解决方案的后果是什么 - 特别是对 MySQL 的影响。例如,以特定方式执行此操作是否会导致表损坏或性能问题等。

这样的问题应该如何解决?

  1. 每小时创建和删除表
  2. 每小时重置自动增量列
  3. 执行#1 或#2,但间隔较长
  4. 不要使用自动增量键(我可以轻松插入自己的顺序键)
  5. 其他?

注意:出于处理目的,每小时重复使用 key 并不重要。我仅用它来分发数据处理。

最佳答案

清空表时,重置其自动增量计数器:

ALTER TABLE foo AUTOINCREMENT = 1;

从表中清除行会使计数器保留在原来的位置,最终您会用完您所指出的键空间。如果您重置此计数器,这并不重要,因为每个小时都是一组新数据,这似乎是最有效的解决方案。

关于mysql - 我应该如何管理每小时插入和删除大量行的表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8482714/

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