在SQLite btree-index中插入一系列连续数字或随机数是否更快?

时间:2013-03-29 16:26:14

标签: b-tree

假设我们有一个大型数据集,必须进入SQLite数据库,2.5亿个项目。假设表格是

          create table foo (myInt integer, name text) 

并且myInt已编入索引但不是唯一的。没有主键。

值介于1和250000000之间,重复次数非常罕见,但并非不可能。这是有意/按设计的。

考虑到b-tree算法的工作方式(并忽略其他因素),这是更快的插入,为什么?

        (a) dataset is first sorted on myInt column (ascending or descending) and the data
        rows are then inserted in their pre-sorted order into SQLite
        (b) dataset is inserted in a totally random order

1 个答案:

答案 0 :(得分:0)

绝对(a)。 在btree中随机插入要慢得多。