Spec-Zone.ru › Django 3.1

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

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

BloomIndex

class BloomIndex(length=None, columns=(), **options)
Новое в Django 3.1.

Создаёт индекс bloom.

Для использования этого индекса вам необходимо активировать расширение bloom в PostgreSQL. Его можно установить, используя операцию миграции BloomExtension.

Укажите целое число от 1 до 4096 для параметра length, чтобы указать длину каждой записи индекса. По умолчанию в 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-дерева.

Укажите целое число от 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)

Создаёт индекс хеширования.

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

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

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

SpGistIndex

class SpGistIndex(fillfactor=None, **options)

Создаёт индекс SP-GiST.

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

© Django Software Foundation and individual contributors
Licensed under the BSD License.
https://docs.djangoproject.com/en/3.1/ref/contrib/postgres/indexes/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API