Индексы моделей, специфичные для PostgreSQL
Ниже приведены индексы, специфичные для PostgreSQL, доступные из модуля django.contrib.postgres.indexes.
BrinIndex
-
class BrinIndex(pages_per_range=None, **options)[source] -
Создаёт индекс BRIN.
Аргумент
pages_per_rangeпринимает положительное целое число.
GinIndex
-
class GinIndex(fastupdate=None, gin_pending_list_limit=None, **options)[source] -
Создаёт индекс gin.
Для использования этого индекса с типами данных, не находящимися в встроенных классах операторов, необходимо активировать расширение btree_gin в PostgreSQL. Его можно установить с помощью операции миграции
BtreeGinExtension.Установите параметр
fastupdateв значениеFalse, чтобы отключить технику быстрого обновления GIN, которая включена по умолчанию в PostgreSQL.Укажите целое число байтов для параметра gin_pending_list_limit, чтобы настроить максимальный размер очереди ожидания GIN, используемой при включенном
fastupdate. Этот параметр требует PostgreSQL ≥ 9.5.Изменено в Django 2.0:Были добавлены параметры
fastupdateиgin_pending_list_limit.
GistIndex
-
class GistIndex(buffering=None, fillfactor=None, **options)[source] -
Новое в Django 2.0.
Создаёт индекс GiST. Эти индексы автоматически создаются для пространственных полей с
spatial_index=True. Они также полезны для других типов, таких какHStoreFieldили поля диапазонов.Для использования этого индекса с типами данных, не находящимися во встроенных классах операторов GiST, необходимо активировать расширение btree_gist в PostgreSQL. Его можно установить с помощью операции миграции
BtreeGistExtension.Установите параметр
bufferingв значениеTrueилиFalse, чтобы вручную включить или отключить буферизованное создание индекса.Укажите целое число от 10 до 100 для параметра fillfactor, чтобы настроить степень заполнения страниц индекса. По умолчанию в PostgreSQL значение равно 90.
© Django Software Foundation and individual contributors
Licensed under the BSD License.
https://docs.djangoproject.com/en/2.0/ref/contrib/postgres/indexes/