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