【发布时间】:2014-09-08 10:16:32
【问题描述】:
我遇到了数据库插入缓慢和延迟的问题。
情况是什么,我有一个表mobiledata,其中插入量很高。它有一个主键作为 id (bigserial)。 id nextval 来自序列 mobiledata_seq。
当我在表中看到插入时,插入行时缺少序列。该行也在一段时间后插入,比如 10 秒
这在极少数情况下会发生,有时它就像一种魅力。
例子:
Select id from missingdata order by id desc limit 100;
输出
611815
611813
611810
611809
611807
611805
611804
611802
611801
611800
611799
611798
611797
611796
611795
【问题讨论】:
-
听起来更像是某些事务正在丢弃来自
nextval的调用。序列生成列中的间隙不意味着缺少某些内容。序列缓存也可以在这里发挥作用。 -
首先:检查 postgres 日志文件(可能还有应用程序日志文件,如果有的话)
标签: mysql sql performance postgresql