PostgreSQL 特定模型索引 — Django 文档
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
参数设置为True
或False
以手动启用或禁用索引的 缓冲构建 。为 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。