Индексы моделей, специфичные для PostgreSQL

Ниже перечислены специфические для PostgreSQL indexes, доступные из модуля django.contrib.postgres.indexes.

BrinIndex

class BrinIndex(autosummarize=None, pages_per_range=None, **options)[исходный код]

Создает BRIN index.

Установите параметр autosummarize в значение True, чтобы включить automatic summarization для выполнения автовакуумирования.

Аргумент pages_per_range принимает целое положительное число.

Changed in Django 2.2:

Был добавлен параметр autosummarize.

BTreeIndex

class BTreeIndex(fillfactor=None, **options)[исходный код]
New in Django 2.2.

Создает индекс B-дерева.

Введите целочисленное значение от 10 до 100 в параметр fillfactor, чтобы настроить степень заполнения страниц индекса. По умолчанию в PostgreSQL используется значение 90.

GinIndex

class GinIndex(fastupdate=None, gin_pending_list_limit=None, **options)[исходный код]

Создает gin index.

Чтобы использовать этот индекс на типах данных, не входящих в built-in operator classes, необходимо активировать btree_gin extension на PostgreSQL. Вы можете установить его с помощью операции миграции BtreeGinExtension.

Установите параметр fastupdate в значение False, чтобы отключить GIN Fast Update Technique, который включен по умолчанию в PostgreSQL.

Введите целое число байт в параметр gin_pending_list_limit для настройки максимального размера списка ожидающих GIN, который используется, когда включено fastupdate. Этот параметр требует PostgreSQL ≥ 9.5.

GistIndex

class GistIndex(buffering=None, fillfactor=None, **options)[исходный код]

Создает индекс GiST index. Эти индексы автоматически создаются на пространственных полях с spatial_index=True. Они также полезны на других типах, таких как HStoreField или range fields.

Чтобы использовать этот индекс на типах данных, не входящих во встроенный gist operator classes, необходимо активировать btree_gist extension на PostgreSQL. Вы можете установить его с помощью операции миграции BtreeGistExtension.

Установите параметр buffering в значение True или False, чтобы вручную включить или выключить buffering build индекса.

Введите целочисленное значение от 10 до 100 в параметр fillfactor, чтобы настроить степень заполнения страниц индекса. По умолчанию в PostgreSQL используется значение 90.

HashIndex

class HashIndex(fillfactor=None, **options)[исходный код]
New in Django 2.2.

Создает хэш-индекс.

Введите целочисленное значение от 10 до 100 в параметр fillfactor, чтобы настроить степень заполнения страниц индекса. По умолчанию в PostgreSQL используется значение 90.

Используйте этот индекс только в PostgreSQL 10 и более поздних версиях

Хэш-индексы доступны в PostgreSQL уже давно, но в старых версиях они страдают от ряда проблем с целостностью данных.

SpGistIndex

class SpGistIndex(fillfactor=None, **options)[исходный код]
New in Django 2.2.

Создает SP-GiST index.

Введите целочисленное значение от 10 до 100 в параметр fillfactor, чтобы настроить степень заполнения страниц индекса. По умолчанию в PostgreSQL используется значение 90.

Вернуться на верх