Краткое руководство: расширение PostgreSQL для Visual Studio Code для Azure HorizonDB (предварительная версия)

Расширение PostgreSQL для Visual Studio Code упрощает разработку и управление базами данных PostgreSQL. В этом руководстве описывается подключение к базе данных PostgreSQL и выполнение запросов в Visual Studio Code.

Одна и та же последовательность действий применяется независимо от того, к чему вы подключаетесь:

  • Локальная установка PostgreSQL,
  • Кластер Azure HorizonDB.

Необходимые условия

Прежде чем начать, убедитесь, что у вас есть необходимые средства и ресурсы, скачанные и установленные.

Установка расширения PostgreSQL

Чтобы установить расширение PostgreSQL, выполните следующие действия.

  1. Откройте Visual Studio Code и перейдите в представление расширений, выбрав значок Extensions в строке действий или с помощью команды View: Extensions.
  2. Найдите PostgreSQL в Extensions Marketplace.
  3. Выберите расширение PostgreSQL , созданное корпорацией Майкрософт, и выберите "Установить".

После установки значок расширения PostgreSQL появится на боковой панели Visual Studio Code.

Добавление подключения к PostgreSQL

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

  1. Щелкните значок слона на боковой панели, чтобы открыть страницу расширения PostgreSQL.
  2. Нажмите кнопку "Добавить подключение ".
  3. Введите сведения о подключении вручную или вставьте строка подключения.
  4. При использовании Azure войдите в учетную запись Azure и найдите экземпляр базы данных. Фильтрация по подписке, группе ресурсов, серверу или кластеру и имени базы данных. Кластеры Azure HorizonDB в подписках, к которым у вас есть доступ, перечислены.

Формат строки подключения

Кластер HorizonDB в Azure предоставляет две конечные точки. Выберите ту, которая соответствует рабочей нагрузке:

  • Конечная точка чтения и записи — подключается к основной, которая принимает как операции чтения, так и записи. Используйте эту конечную точку для операций записи приложения, изменений схемы и операций чтения, которым необходимо видеть самые последние зафиксированные данные.
  • Конечная точка чтения — автоматически балансирует нагрузку подключений ко всем репликам высокого уровня доступности в кластере. Используйте эту конечную точку для нагрузок, связанных с масштабированием операций чтения, созданием отчетов и аналитикой. Сегодня поддерживается до четырех реплик HA, доступных для чтения (в дальнейшем — до 8), при этом размер каждой из них идентичен размеру основного экземпляра.

Имена узлов обеих конечных точек указаны на странице Overview кластера и на странице Replicas в портале Azure. Формат строка подключения — это стандартная форма libpq:

# Read/write endpoint (primary)
psql "host=<cluster-name>.<region>.horizondb.azure.com port=5432 dbname=<database> user=<user> sslmode=require"

# Reader endpoint (load-balanced HA replicas)
psql "host=<cluster-name>-reader.<region>.horizondb.azure.com port=5432 dbname=<database> user=<user> sslmode=require"

Распространенный шаблон заключается в сохранении двух профилей в диспетчер подключений — одной для конечной точки чтения и записи и одной для конечной точки чтения — и переключения между ними на основе задачи.

Authentication

Расширение поддерживает два метода проверки подлинности:

  • Имя пользователя или пароль . Введите учетные данные базы данных непосредственно в поля подключения.

Снимок экрана диалогового окна подключения расширения PostgreSQL для Visual Studio Code.

Тестирование и сохранение подключения

  1. Выберите "Проверить подключение", чтобы проверить сведения о подключении.
  2. После успешного тестирования в поле теста отображается флажок.
  3. Выберите "Подключиться" , чтобы установить подключение.
  4. Подключение автоматически сохраняется и отображается в окне "Подключения".

Если тест завершается ошибкой при подключении к облачной базе данных, убедитесь, что IP-адрес клиента разрешен правилами брандмауэра кластера (HorizonDB). Обе службы в настоящее время поддерживают публичный доступ с использованием списка разрешённых IP-адресов; поддержка private endpoint в HorizonDB включена в дорожную карту.

Просмотр объектов базы данных

Обозреватель объектов предоставляет иерархическое представление объектов базы данных:

  • Разверните элемент базы данных для просмотра схем, таблиц, представлений, функций и хранимых процедур.
  • Щелкните правой кнопкой мыши на базе данных, чтобы увидеть параметры:
    • Запуск нового запроса
    • Чат с этой базой данных (запускает интерфейс чата @pgsql )
    • Подключение к PSQL для запуска psql подключения терминала
  • "Щелкните правой кнопкой мыши по таблице и выберите Выбрать первые 1000, чтобы просмотреть данные." Запрос откроется в редакторе запросов, а результаты отображаются на вкладке "Средство просмотра результатов".

В подключении Azure HorizonDB можно также перечислить разрешенные расширения, доступные в кластере, с помощью следующих элементов:

SELECT * FROM pg_available_extensions ORDER BY name;

Общие расширения HorizonDB, которые могут потребоваться установить в базе данных, включают vector, pg_diskannazure_aiиage:

CREATE EXTENSION IF NOT EXISTS azure_ai;
CREATE EXTENSION IF NOT EXISTS vector;
CREATE EXTENSION IF NOT EXISTS pg_diskann;
CREATE EXTENSION IF NOT EXISTS age;

Выполнение запросов

Используйте редактор запросов для создания и выполнения запросов SQL:

  • Воспользуйтесь преимуществами IntelliSense с поддержкой контекста для автозаполнения ключевых слов SQL и имен объектов.
  • Используйте выделение синтаксиса и автоформатирование для повышения удобочитаемости и точности.
  • Доступ к ранее выполненным запросам через панель журнала запросов.

Маршрутизация операций чтения и записи в HorizonDB

Если у вас есть профили как для конечных точек чтения/записи, так и для конечных точек чтения, выберите соответствующее подключение в средстве выбора подключений Редактор запросов перед запуском запроса. Операции записи и DDL должны выполняться через эндпоинт чтения/записи; эндпоинт для чтения принимает запросы в режиме только чтения и балансирует нагрузку между репликами высокой доступности.

Просмотр результатов запроса

Средство просмотра результатов предлагает расширенные функции для взаимодействия с результатами запроса:

  • Экспорт результатов в форматы CSV, JSON или Excel для дальнейшего анализа.
  • Используйте параметры поиска, фильтрации и сортировки для уточнения данных.
  • Представления постоянных данных поддерживают контекст при переключении между вкладками.

Использование GitHub Copilot для расширенной помощи

Интеграция с GitHub Copilot улучшает возможности разработки PostgreSQL, предоставляя предложения кода с поддержкой искусственного интеллекта, советы по оптимизации запросов и помощь в интерактивной базе данных. Эта функция помогает оптимизировать рабочий процесс, сократить время разработки и получить более подробную информацию о операциях базы данных.

Убедитесь, что установлены расширения GitHub Copilot и Copilot Chat. Войдите в учетную запись GitHub и включите @pgsql агент Чата Copilot в параметрах расширения.

Запросы интерактивной базы данных

Щелкните правой кнопкой мыши базу данных и выберите "Чат с этой базой данных ", чтобы взаимодействовать с Copilot.

Напишите такие запросы, как в следующем примере, чтобы получить подробные аналитические сведения и предложения.

@pgsql tell me about the tables in the HR schema

При подключении к кластеру Azure HorizonDB Copilot получает контекст активного подключения, в том числе сведения об установленных расширениях, поэтому запросы могут использовать возможности HorizonDB, такие как pgvector, pg_diskann расширенная фильтрация и функции azure_ai ИИ.

Дополнительные сведения см. в разделе Quickstart: настройка расширения GitHub Copilot для PostgreSQL в Visual Studio Code.

Подключение с помощью Visual Studio Code

Параметр Add Connection в расширении PostgreSQL для Visual Studio Code упрощает подключение к кластеру Azure HorizonDB. Эта функция упрощает настройку, указав вам необходимые сведения о подключении.

Нажмите кнопку "Добавить подключение" , чтобы создать новое подключение к кластеру HorizonDB. Вы можете предварительно заполнить параметры подключения, используя эндпоинт для чтения и записи или эндпоинт для чтения.

Подтверждение требований

  • На боковой панели убедитесь, что все необходимые компоненты (Visual Studio Code и расширение PostgreSQL) удовлетворены, установив соответствующие флажки.
  • При необходимости скачайте Visual Studio Code и расширение с помощью ссылок на боковой панели.
  • При необходимости заполните параметры подключения, такие как имя базы данных по умолчанию, метод проверки подлинности и пул соединений.

Снимок экрана портала Azure, на котором показана боковая панель

Открыть в Visual Studio Code

  • Нажмите кнопку "Открыть в Visual Studio Code" на боковой панели.
  • Если запуск Visual Studio Code и расширения занимает более 40 секунд, на боковой панели появится кнопка "Повторить открытие в Visual Studio Code".

Запустите Visual Studio Code.

  • Если Visual Studio Code установлен и запущен, диалоговое окно подключения расширения PostgreSQL запускается автоматически.
  • Если Visual Studio Code установлен, но не открыт, он запускается примерно в течение 40 секунд, за которым следует диалоговое окно подключения.

Предоставление сведений о проверке подлинности

Выберите предпочтительный метод проверки подлинности:

  • Проверка подлинности паролей . Введите имя пользователя и пароль вручную.

Укажите другие сведения о подключении, например имя профиля, имя базы данных (необязательно), группу серверов и номер порта.

Сохранение и подключение

Нажмите кнопку "Сохранить" и "Подключить" , чтобы установить подключение. После подключения разверните сервер в дереве обозревателя объектов, чтобы просмотреть базы данных, схемы и таблицы или использовать встроенное средство запроса для управления объектами базы данных.

Troubleshoot

При возникновении проблем во время процесса подключения:

  • Убедитесь, что Visual Studio Code и расширение PostgreSQL установлены и включены.
  • Убедитесь, что IP-адрес клиента разрешен в кластере Azure HorizonDB.
  • Для HorizonDB убедитесь, что вы подключаетесь к правильной конечной точке рабочей нагрузки. Записи должны быть нацелены на конечную точку чтения и записи, а не конечную точку чтения.
  • Если предварительные требования не выполнены, на боковой панели представлены отзывы и шаги по устранению проблемы, включая повторную попытку подключения.
  • Проверьте правильность имени пользователя и учетных данных для базы данных.

Отзывы и поддержка

Для ошибок, запросов функций и проблем используйте встроенное средство обратной связи в Visual Studio Code. Вы можете выполнить этот процесс обратной связи с помощью меню справки Visual Studio Code или палитры команд PGSQL.

  • Меню "Справка"
    • Перейти к Помощь > Сообщить о проблеме
  • Палитра команд
    • Откройте палитру команд с помощью Ctrl + Shift + P и выполните: PGSQL: Report Issue