Перейти к основному содержимому
Расширения PostgreSQL TimescaleDB
Последнее изменение:

Расширения PostgreSQL TimescaleDB

К базам данных PostgreSQL TimescaleDB можно подключать расширения. Расширения позволяют добавлять функциональности к базе данных без изменения исходного кода самой СУБД.

Список расширений доступных в облачных базах данных можно посмотреть в таблице Описание расширений.

Некоторые расширения зависят от других — зависимые расширения не будут работать без главного расширения. Список зависимых и главных расширений можно посмотреть в таблице Зависимые расширения.

Добавить расширение можно в панели управления, через API Облачных баз данных и через Terraform.

Добавить расширение

Расширения подключаются отдельно к каждой базе данных. Если вы подключаете зависимое расширение и главное расширение ещё не подключено, то сначала автоматически будет подключено главное расширение, а потом зависимое.

  1. В панели управления перейдите в раздел Облачная платформаБазы данных.
  2. Откройте страницу кластера → вкладка Базы данных → карточка базы данных.
  3. В блоке Расширения нажмите Добавить расширение.
  4. Выберите расширение. Список доступных расширений и их описание можно посмотреть в таблице Описание расширений.
  5. Нажмите Добавить.

Удалить расширение

Зависимое расширение можно удалить отдельно. Чтобы удалить главное расширение, сначала удалите зависимое. Список зависимых и главных расширений можно посмотреть в таблице Зависимые расширения.

  1. В панели управления перейдите в раздел Облачная платформаБазы данных.
  2. Откройте страницу кластера → вкладка Базы данных → карточка базы данных.
  3. В блоке Расширения, в строке расширения нажмите .

Описание расширений

address_standardizerИспользуется для структурирования почтовых адресов, переданных в виде строки
address_standardizer_data_usИспользуется для структурирования почтовых адресов США и Канады для расширения address_standardizer
autoinc

Содержит функцию autoinc(). Эта функция возвращает следующее значение для последовательности, которое хранится в поле целочисленного типа. В отличие от встроенных типов, управляющих последовательностями, autoinc():

  • блокирует попытки вставить в поле значение из запроса;
  • позволяет изменять значение в поле при обновлении записи
bloomДобавляет доступ к индексам баз данных на основе фильтров Блума, которые требуют значительно меньше памяти, чем хеш-таблицы, но допускают ложноположительные срабатывания
btree_ginСодержит примеры классов оператора GIN (Generalized Inverted Index, обобщенный инвертированный индекс), который используется для обратного поиска
btree_gistСодержит классы оператора GiST (Generalized Search Tree, обобщенное дерево поиска). В отличие от индексов B-tree, GiST поддерживает операторы <> (не равно) и < — > (дистанция), хотя и не обеспечивает уникальности возвращаемых значений
citextСодержит тип данных citext, который используется для регистронезависимой работы со строками
cubeСодержит тип данных cube, который используется для представления многомерных кубов
dict_intСодержит пример дополнительного шаблона словаря для полнотекстового поиска, с помощью которого можно избежать разрастания списка уникальных слов и увеличить скорость поиска
dict_xsynСодержит пример дополнительного шаблона словаря синонимов (Extended Synonym Dictionary) для полнотекстового поиска: при поиске слова будут найдены все его синонимы
fuzzystrmatchСодержит функции, которые используются для определения сходства и различия строк
hstoreСодержит тип hstore, который позволяет хранить пары ключ/значение в одном поле таблицы и эффективно работать с ними
intarrayСодержит функции и операторы для работы с массивами целых чисел, в которых нет пустых (NULL) значений
ip4rПоддерживает индексацию IPv4 и IPv6 адресов для повышения производительности запросов
isnСодержит типы данных для международных стандартов нумерации продукции EAN13, UPC, ISBN, ISMN и ISSN. Проверка и формирование номеров осуществляется по заданному списку префиксов
jsqueryДобавляет поддержку языка JsQuery, который используется для работы с данными типа jsonb. JsQuery позволяет организовать эффективный поиск во вложенных объектах и содержит дополнительные операторы сравнения с поддержкой индексов
loСодержит тип данных lo и функцию lo_manage(), которые используются для управления большими бинарными объектами (Binary Large Object, BLOB) в соответствии с требованиями спецификаций драйверов JDBC и ODBC (стандартное поведение PostgreSQL им не соответствует)
ltreeСодержит тип данных ltree для представления меток данных, хранящихся в древовидной иерархической структуре
moddatetimeСодержит функцию moddatetime(), которая позволяет отслеживать время последней модификации строки таблицы
pg_partmanДобавляет расширенные возможности по партицированию таблиц, в том числе на основе времени или последовательности
pg_stat_statementsДобавляет возможности отслеживания планирования и сбора статистики выполнения всех SQL-запросов, запущенных в кластере. Для использования расширения необходима роль dbaas_admin — эта роль автоматически выдается владельцу базы данных, назначить ее другим пользователям нельзя
pgtrgmСодержит инструменты для быстрого поиска похожих строк на основе сопоставления триграмм
pgcryptoПредоставляет набор криптографических функций для защиты данных. Подробнее о шифровании данных с помощью расширения pgcrypto и примеры использования в инструкции Шифрование данных
pgrowlocksСодержит функцию pgrowlocks(), которая возвращает сведения о блокировке строк в указанной таблице
pgTAPПредоставляет набор инструментов для тестирования схемы базы данных и SQL-функций
plv8Позволяет использовать JavaScript для написания хранимых процедур и триггеров
postgisПозволяет хранить и обрабатывать объекты геоинформационных систем (ГИС) в базах данных PostgreSQL. Для использования расширения необходима роль dbaas_admin — эта роль автоматически выдается владельцу базы данных, назначить ее другим пользователям нельзя
postgis_rasterПозволяет работать с растровыми изображениями и проводить анализ объектов геоинформационных систем (ГИС) в базах данных
postgis_fdwДобавляет поддержку Foreign Data Wrapper, чтобы получить доступ к внешним серверам PostgreSQL. Для использования расширения необходима роль dbaas_admin — эта роль автоматически выдается владельцу базы данных, назначить ее другим пользователям нельзя
prefixДобавляет поддержку префиксов и масок для оптимизации запросов
rumДобавляет метод доступа для работы с индексами RUM
segСодержит тип данных seg для представления отрезков линий или интервалов с плавающей запятой
tablefuncСодержит набор функций, возвращающих таблицы (наборы строк)
unaccentСодержит словарь для поиска текста без учета диакритических знаков
uuid-osspСодержит функции для генерации UUID по стандартным алгоритмам
xml2Добавляет поддержку запросов XPath и языка XSLT

Зависимые расширения

earthdistanceСодержит модуль для вычисления расстояний между точками на поверхности Земли. Работает только вместе с главным расширением cube
pg_stat_kcacheДобавляет возможность сбора статистики по операциям чтения и записи, выполненным на уровне файловой системы. Работает только вместе с главным расширением pg_stat_statements. Для использования расширения необходима роль dbaas_admin — эта роль автоматически выдается владельцу базы данных, назначить ее другим пользователям нельзя
pgroutingСодержит функции для геопространственной маршрутизации базы данных PostGIS. Работает только вместе с главным расширением postgis
postgis_tiger_geocoderСодержит функции для геокодирования на основе данных в формате TIGER. Работает только вместе с главным расширением postgis
postgis_topologyСодержит типы данных и функции расширения postgis для управления топологическими объектами. Работает только вместе с главным расширением postgis. Для использования расширения необходима роль dbaas_admin — эта роль автоматически выдается владельцу базы данных, назначить ее другим пользователям нельзя