PostgreSQL 特定模型索引 — Django 文档

来自菜鸟教程
Django/docs/3.1.x/ref/contrib/postgres/indexes
跳转至:导航、​搜索

PostgreSQL 特定的模型索引

以下是 PostgreSQL 特定的 索引 ,可从 django.contrib.postgres.indexes 模块获得。

BloomIndex

class BloomIndex(length=None, columns=(), **options)

3.1 版中的新功能。

创建 bloom 索引。

要使用此索引访问,您需要激活 PostgreSQL 上的 bloom 扩展。 您可以使用 BloomExtension 迁移操作安装它。

length 参数提供从 1 到 4096 的整数位,以指定每个索引条目的长度。 PostgreSQL 的默认值为 80。

columns 参数采用最多 32 个值的元组或列表,这些值是从 1 到 4095 的整数位。


BrinIndex

class BrinIndex(autosummarize=None, pages_per_range=None, **options)

创建 BRIN 索引

autosummarize参数设置为True,使自动汇总由autovacuum执行。

pages_per_range 参数采用正整数。


BTreeIndex

class BTreeIndex(fillfactor=None, **options)

创建 B 树索引。

fillfactor 参数提供一个从 10 到 100 的整数值,以调整索引页面的打包方式。 PostgreSQL 的默认值为 90。


GinIndex

class GinIndex(fastupdate=None, gin_pending_list_limit=None, **options)

创建 gin 索引

要在不在 内置运算符类 中的数据类型上使用此索引,您需要在 PostgreSQL 上激活 btree_gin 扩展 。 您可以使用 BtreeGinExtension 迁移操作安装它。

fastupdate 参数设置为 False 以禁用在 PostgreSQL 中默认启用的 GIN 快速更新技术

gin_pending_list_limit 参数提供整数字节以调整启用 fastupdate 时使用的 GIN 挂起列表的最大大小。


GistIndex

class GistIndex(buffering=None, fillfactor=None, **options)

创建 GiST 索引 。 这些索引是在 spatial_index=True 的空间字段上自动创建的。 它们也可用于其他类型,例如 HStoreField范围字段

要对不在内置 gist 运算符类 中的数据类型使用此索引,您需要在 PostgreSQL 上激活 btree_gist 扩展 。 您可以使用 BtreeGistExtension 迁移操作安装它。

buffering 参数设置为 TrueFalse 以手动启用或禁用索引的 缓冲构建

fillfactor 参数提供一个从 10 到 100 的整数值,以调整索引页面的打包方式。 PostgreSQL 的默认值为 90。


HashIndex

class HashIndex(fillfactor=None, **options)

创建哈希索引。

fillfactor 参数提供一个从 10 到 100 的整数值,以调整索引页面的打包方式。 PostgreSQL 的默认值为 90。

仅在 PostgreSQL 10 及更高版本上使用此索引

哈希索引在 PostgreSQL 中已经存在很长时间了,但它们在旧版本中存在许多数据完整性问题。


SpGistIndex

class SpGistIndex(fillfactor=None, **options)

创建 SP-GiST 索引

fillfactor 参数提供一个从 10 到 100 的整数值,以调整索引页面的打包方式。 PostgreSQL 的默认值为 90。