Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Это важно
Azure Cosmos DB для PostgreSQL больше не поддерживается для новых проектов. Не используйте эту службу для новых проектов. Вместо этого используйте одну из этих двух служб:
Используйте Azure Cosmos DB для NoSQL как распределенное решение базы данных, предназначенное для крупномасштабных сценариев с соглашением об уровне доступности (SLA) 99.999%, мгновенным автомасштабированием и автоматическим переключением в случае отказа в нескольких регионах.
Используйте функцию эластичных кластеров Базы данных Azure для PostgreSQL для сегментированного PostgreSQL с помощью расширения Citus с открытым кодом.
PostgreSQL расширяет функциональные возможности базы данных с помощью расширений. Расширения позволяют объединить несколько связанных объектов SQL в одном пакете, который затем можно загрузить или удалить из базы данных с помощью одной команды. После загрузки в базу данных расширения могут действовать как встроенные функции. Дополнительные сведения о расширениях PostgreSQL см. на странице Упаковка связанных объектов в расширение.
Использование расширений PostgreSQL
Чтобы использовать расширения PostgreSQL, их необходимо сначала установить в базу данных. Чтобы установить определенное расширение, выполните команду CREATE EXTENSION, используя инструмент psql. При этом упакованные объекты будут загружены в базу данных.
Примечание.
Если CREATE EXTENSION завершает работу ошибкой из-за отсутствия разрешения, попробуйте вместо этого выполнить функцию create_extension(). Например:
SELECT create_extension('postgis');
Чтобы удалить расширение, установленное таким образом, используйте drop_extension().
Azure Cosmos DB для PostgreSQL в настоящее время поддерживает подмножество расширений ключей, как описано здесь. Другие расширения не поддерживаются. Вы не можете создать собственное расширение с помощью Azure Cosmos DB для PostgreSQL.
Расширения, поддерживаемые Azure Cosmos DB для PostgreSQL
В следующих таблицах перечислены стандартные расширения PostgreSQL, поддерживаемые в Azure Cosmos DB для PostgreSQL. Эти сведения также можно получить, выполнив SELECT * FROM pg_available_extensions;.
Версии каждого расширения, установленного в кластере, иногда отличаются в зависимости от версии PostgreSQL (11, 12, 13, 14, 15 или 16). В таблицах перечислены версии расширений для каждой версии базы данных.
Расширение Citus
| Расширение | Описание | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
|---|---|---|---|---|---|---|---|
| citus | Распределенная база данных Citus. | 9,5 | 10.2 | 11.3 | 12,1 | 12,1 | 12,1 |
Расширения типов данных
| Расширение | Описание | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
|---|---|---|---|---|---|---|---|
| citext | Предоставляет тип символьной строки без учета регистра. | 1.5 | 1,6 | 1,6 | 1,6 | 1,6 | 1,6 |
| куб | Предоставляет тип данных для многомерных кубов. | 1.4 | 1.4 | 1.4 | 1.5 | 1.5 | 1.5 |
| hll | Предоставляет структуру данных HyperLogLog. | 2.18 | 2.18 | 2.18 | 2.18 | 2.18 | 2.18 |
| hstore | Предоставляет тип данных для хранения наборов пар "ключ — значение". | 1.5 | 1,6 | 1,7 | 1.8 | 1.8 | 1.8 |
| не является | Предоставляет типы данных для международных стандартов нумерации продуктов. | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
| вот | Обслуживание больших объектов. | 1,1 | 1,1 | 1,1 | 1,1 | 1,1 | 1,1 |
| ltree | Предоставляет тип данных для иерархических древовидных структур. | 1,1 | 1,1 | 1.2 | 1.2 | 1.2 | 1.2 |
| seg | Тип данных для представления сегментов линии или интервалов с плавающей точкой. | 1,3 | 1,3 | 1,3 | 1.4 | 1.4 | 1.4 |
| tdigest | Тип данных для накопления статистики на основе ранжирования в режиме онлайн, например, квантили и усечённые средние. | 1.4.1 | 1.4.1 | 1.4.1 | 1.4.1 | 1.4.1 | 1.4.1 |
| topn | Тип для top-n JSONB. | 2.6.0 | 2.6.0 | 2.6.0 | 2.6.0 | 2.6.0 | 2.6.0 |
Расширения для полнотекстового поиска
| Расширение | Описание | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
|---|---|---|---|---|---|---|---|
| dict_int | Предоставляет шаблон словаря текстового поиска для целых чисел. | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
| dict_xsyn | Шаблон словаря текстового поиска для расширенной обработки синонимов. | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
| без акцента | Словарь для текстового поиска, который удаляет из лексем знаки ударения (диакритические знаки). | 1,1 | 1,1 | 1,1 | 1,1 | 1,1 | 1,1 |
Расширения функций
| Расширение | Описание | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 15 |
|---|---|---|---|---|---|---|---|
| autoinc | Функции для автоприращения полей. | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
| расстояние до Земли | Предоставляет возможность вычисления великокруговых расстояний на поверхности Земли. | 1,1 | 1,1 | 1,1 | 1,1 | 1,1 | 1,1 |
| fuzzystrmatch | Предоставляет несколько функций для определения сходства и расстояния между строками. | 1,1 | 1,1 | 1,1 | 1,1 | 1,1 | 1.2 |
| insert_username | Функции для отслеживания того, кто изменил таблицу. | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
| intagg | Агрегатор и перечислитель целых чисел (устарело). | 1,1 | 1,1 | 1,1 | 1,1 | 1,1 | 1,1 |
| intarray | Предоставляет функции и операторы для управления массивами целых чисел, не содержащими значений null. | 1.2 | 1.2 | 1,3 | 1.5 | 1.5 | 1.5 |
| moddatetime | Предназначено для отслеживания времени последнего изменения. | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
| orafce | Функции и операторы, эмулирующие подмножество функций и пакетов из Oracle RDBMS. | 4,9 | 4,9 | 4,9 | |||
| pg_partman | Управляет секционированными таблицами по времени или идентификатору. | 4.7.4 | 4.7.4 | 4.7.4 | 5.1.0 | 5.1.0 | 5.1.0 |
| pg_surgery | Функции для проведения вмешательства в нарушенное отношение. | 1.0 | 1.0 | 1.0 | |||
| pg_trgm | Предоставляет функции и операторы для определения сходства буквенно-цифрового текста на основе сопоставления триграмм. | 1.4 | 1.4 | 1.5 | 1,6 | 1,6 | 1,6 |
| pgcrypto | Предоставляет функции шифрования. | 1,3 | 1,3 | 1,3 | 1,3 | 1,3 | 1,3 |
| refint | Функции для реализации ссылочной целостности (устарело). | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
| tablefunc | Предоставляет функции, которые манипулируют целыми таблицами, включая кросс-таблицы. | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
| tcn | Активирует уведомления об изменениях. | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
| timetravel | Функции для реализации путешествий во времени. | 1.0 | |||||
| uuid-ossp | Создает глобально уникальные идентификаторы (UUID). | 1,1 | 1,1 | 1,1 | 1,1 | 1,1 | 1,1 |
Расширения типов индекса
| Расширение | Описание | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
|---|---|---|---|---|---|---|---|
| цвести | Метод доступа Блума — индекс на основе файла сигнатуры. | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
| btree_gin | Предоставляет примеры классов операторов GIN, которые реализуют поведение, подобное B-дереву, для определенных типов данных. | 1,3 | 1,3 | 1,3 | 1,3 | 1,3 | 1,3 |
| btree_gist | Предоставляет классы операторов индекса GiST, которые реализуют B-дерево. | 1.5 | 1.5 | 1.5 | 1,6 | 1,7 | 1,7 |
Расширения языка
| Расширение | Описание | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
|---|---|---|---|---|---|---|---|
| plpgsql | Загружаемый процедурный язык PL/pgSQL. | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
Прочие расширения
| Расширение | Описание | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
|---|---|---|---|---|---|---|---|
| amcheck | Предназначено для проверки целостности отношений. | 1,1 | 1.2 | 1.2 | 1,3 | 1,3 | 1,3 |
| dblink | Модуль, который поддерживает подключения к другим базам данных PostgreSQL из сеанса базы данных. В разделе "dblink и postgres_fdw" см. сведения об этом расширении. | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
| old_snapshot | Позволяет проверить состояние сервера, используемого для реализации old_snapshot_threshold. | 1.0 | 1.0 | 1.0 | |||
| pageinspect | Проверяйте содержимое страниц базы данных на низком уровне. | 1,7 | 1,7 | 1.8 | 1,9 | 1.11 | 1.12 |
| pg_azure_storage | Интеграция Azure для PostgreSQL. | 1,3 | 1,3 | 1,3 | 1,3 | ||
| pg_buffercache | Предоставляет средства для анализа того, что происходит в общем буферном кэше в режиме реального времени. | 1,3 | 1,3 | 1,3 | 1,3 | 1,3 | 1.4 |
| pg_cron | Планировщик заданий для PostgreSQL. | 1.5 | 1,6 | 1,6 | 1,6 | 1,6 | 1,6 |
| pg_freespacemap | Изучите карту свободного места (FSM). | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
| pg_prewarm | Предоставляет способ загрузки реляционных данных в буферный кэш. | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
| pg_stat_statements | Предоставляет средства для отслеживания статистики выполнения всех инструкций SQL, выполняемых сервером. Смотрите раздел «pg_stat_statements» для получения информации об этом расширении. | 1,6 | 1,7 | 1.8 | 1,9 | 1,10 | 1,10 |
| pg_visibility | Изучите карту видимости (VM) и информацию о видимости на уровне страницы. | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
| pgrowlocks | Предоставляет средства для отображения сведений о блокировке на уровне строк. | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
| pgstattuple | Предоставляет средства для отображения статистических данных на уровне отдельных кортежей. | 1.5 | 1.5 | 1.5 | 1.5 | 1.5 | 1.5 |
| postgres_fdw | Оболочка для внешних данных, используемая для доступа к данным на внешних серверах PostgreSQL. В разделе "dblink и postgres_fdw" см. сведения об этом расширении. | 1.0 | 1.0 | 1.0 | 1,1 | 1,1 | 1,1 |
| sslinfo | Сведения о TLS/SSL-сертификатах | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
| строки_системы_тсм | Метод TABLESAMPLE, который принимает число строк в качестве ограничения. | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
| tsm_system_time | Метод TABLESAMPLE, который принимает время в миллисекундах в качестве ограничения. | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
| xml2 | Запросы XPath и XSLT. | 1,1 | 1,1 | 1,1 | 1,1 | 1,1 | 1,1 |
Расширение Pgvector
| Расширение | Описание | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
|---|---|---|---|---|---|---|---|
| pgvector | Поиск сходства вектора с открытым исходным кодом для Postgres | 0.5.1 | 0.7.0 | 0.7.0 | 0.7.0 | 0.7.0 | 0.7.0 |
Расширения PostGIS
| Расширение | Описание | PG 11 | PG 12 | PG 13 | PG 14 | PG 15 | PG 16 |
|---|---|---|---|---|---|---|---|
| PostGIS | Пространственные и географические объекты для PostgreSQL. | 3.3.4 | 3.4.1 | 3.4.1 | 3.4.1 | 3.4.1 | 3.4.1 |
| стандартизатор адресов | Используется для разбора адреса на составные элементы. Используется для поддержки шага нормализации геокодирования адресов. | 3.3.4 | 3.4.2 | 3.4.2 | 3.4.2 | 3.4.2 | 3.4.2 |
| postgis_sfcgal | Функции PostGIS SFCGAL. | 3.3.4 | 3.4.2 | 3.4.2 | 3.4.2 | 3.4.2 | 3.4.2 |
| postgis_topology | Пространственные типы и функции топологии PostGIS. | 3.3.4 | 3.4.2 | 3.4.2 | 3.4.2 | 3.4.2 | 3.4.2 |
pg_stat_statements
Расширение pg_stat_statements предварительно загружено в каждом кластере Azure Cosmos DB для PostgreSQL, чтобы обеспечить возможность отслеживания статистики выполнения инструкций SQL.
Параметр pg_stat_statements.track определяет, какие инструкции учитываются расширением. По умолчанию используется значение top, то есть осуществляется отслеживание всех запросов, создаваемых непосредственно клиентами. Два других уровня отслеживания: none и all.
Существует компромисс между информацией о выполнении запроса, предоставляемой pg_stat_statements, и воздействием на производительность сервера при регистрации каждой инструкции SQL. Если расширение pg_stat_statements не используется активно, рекомендуется задать для параметра pg_stat_statements.track значение none. Некоторые сторонние службы мониторинга могут полагаться на pg_stat_statements для доставки аналитических сведений о производительности запросов, поэтому убедитесь, что это так для вас или нет.
dblink и postgres_fdw
dblink и postgres_fdw позволяют подключать один сервер PostgreSQL к другому серверу или к другой базе данных на том же сервере. Принимающий сервер должен разрешать подключения с отправляющего сервера при помощи его брандмауэра. Чтобы использовать эти расширения для подключения кластеров Azure Cosmos DB для PostgreSQL с общедоступным доступом, установите параметр 'Разрешить службам и ресурсам Azure доступ к этому кластеру (или серверу)' в положение ВКЛ. Этот параметр также необходимо включить, если нужно использовать расширения для возврата на тот же сервер. Разрешить службам и ресурсам Azure доступ к этому кластеру можно, найдя данный параметр на странице портала Azure для кластера в разделе Сетевые параметры. В настоящее время исходящие подключения из Azure Cosmos DB для PostgreSQL не поддерживаются.
Расширение orafce
Функции UTL_FILE отключены в расширении orafce.
Следующие шаги
- Узнайте о поддерживаемых версиях PostgreSQL.