外键索引(FK Indexes)
创建模型时,Django 会在所有外键上创建一个 B-Tree 索引,它的开销可能相当大,而且有时候并不很必要。...从第一层的树叶为第二层创建一棵新树,以此类推。
索引中列的顺序非常重要。
在上面的例子中,我们首先会得到一个组(group)的树,另一个树是所有它的用户(user)。...从 Django 1.11 开始,有一个新的 Meta 选项用于在模型上创建索引。这给了我们探索其他类型索引的机会。
PostgreSQL 有一个非常有用的索引类型 BRIN(块范围索引)。...假设我们在一列中有这些值,每一个都是一个块:
1, 2, 3, 4, 5, 6, 7, 8, 9
我们为每三个相邻的块创建一个范围:
[1,2,3], [4,5,6], [7,8,9]
对于每个范围,我们将保存范围内的最小值和最大值...创建索引时要考虑的要比索引的大小要多得多。但是现在,通过 Django 1.11 支持索引,我们可以轻松地将新类型的索引整合到我们的应用程序中,使它们更轻,更快。