gpt4 book ai didi

performance - SQLite 中对性能的主键影响

转载 作者:行者123 更新时间:2023-12-03 16:05:27 25 4
gpt4 key购买 nike

我有一个用于存储备份作业信息的 sqlite 数据库。每次运行,由于向特定表添加大约 32,000 个条目,它会增加大约 25mb。

这个表是一个“映射表”,用于将某些信息链接到另一个表中的记录......它有一个我不使用的主键(自动增量整数)。

sqlite 将根据其值为 INT 列保留 1、2、4 或 8 个字节。该表只有 3 个额外的列,也是 INT 类型。

我在查询中用作过滤器 (WHERE) 的列上的数据库中添加了索引。

在存在索引等的情况下以及在描述的情况下,主键在性能方面是否有任何有用的好处?

注意:性能对这个项目来说非常非常重要 - 但如果在 32,000 个条目上节省 10 毫秒意味着额外的 10MB 数据,则不是!

最佳答案

主键索引用于查找给定主键的行。它还用于确保主键值是唯一的。

如果您使用其他列搜索数据,则不会使用主键索引,因此不会产生任何性能优势。不过,它的存在也不应该对性能产生负面影响。

不必要的索引会浪费磁盘空间,并使 INSERT 和 UPDATE 语句执行得更慢。它应该不会对查询性能产生负面影响。

关于performance - SQLite 中对性能的主键影响,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1237369/

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