Поделиться через


Запрос из редактора SQL в Lakehouse

Это важно

Автомасштабирование Lakebase находится в бета-версии в следующих регионах: eastus2, westeurope, westus.

Автомасштабирование Lakebase — это последняя версия Lakebase с автомасштабированием вычислений, масштабированием до нуля, ветвлением и мгновенным восстановлением. Сравнение функций с Lakebase Provisioned см. в разделе выбора между версиями.

На этой странице описывается, как запрашивать базы данных в проекте Lakebase из редактора SQL в Lakehouse с помощью двух различных методов подключения.

Редактор SQL в Lakehouse — это совместная рабочая область SQL, в которой можно создавать запросы, просматривать каталоги данных, создавать визуализации и делиться результатами с коллегами. Она предоставляет расширенные возможности для аналитики, совместной работы и автоматизации.

Замечание

Для собственных функций Postgres, таких как EXPLAIN, /, ANALYZE, и метакоманд (\dt, \d, \l), используйте Редактор SQL Lakebase. См. запрос из редактора SQL Lakebase.

Полные сведения о возможностях редактора SQL см. в статье "Запись запросов" и изучение данных в редакторе SQL.

Методы подключения

Вы можете подключиться к базе данных Lakebase из редактора SQL с помощью двух методов:

  1. Прямое подключение к вычислительным ресурсам: подключитесь непосредственно к вычислительным ресурсам Lakebase для немедленного доступа к конкретному проекту и ветви.
  2. Регистрация каталога Unity: зарегистрируйте базу данных в каталоге Unity, чтобы включить федеративные запросы, унифицированное управление и кросс-исходную аналитику.

Выбор метода подключения

Функция Прямое подключение к вычислительным ресурсам Регистрация каталога Unity
доступ к данным Полный доступ на чтение и запись к базе данных Lakebase Доступ только для чтения через каталог Unity
лучше всего подходит для Работа в основном с данными Lakebase без объединения их с другими источниками данных Объединение данных Lakebase с другими таблицами каталога Unity в федеративных запросах
Сложность настройки Немедленный доступ к запросу конкретной базы данных без регистрации Требуется регистрация каталога и привилегии Unity Catalog
Система управления Нет функций управления каталогом Unity Унифицированные элементы управления (разрешения, происхождение, журналы аудита)
Управление доступом Разрешения исключительно на основе ролей в Postgres Централизованное обнаружение и управление доступом в нескольких источниках данных
Варианты использования Прямые операции и изменения базы данных Панели мониторинга и приложения, которые интегрируют транзакционные и аналитические данные

Метод 1. Подключение непосредственно к вычислительным ресурсам Lakebase

Используйте этот метод для прямого подключения к вычислительным ресурсам Lakebase для немедленного доступа к запросу.

Перед тем как начать

Если вы не являетесь владельцем проекта, убедитесь, что у вас есть:

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

Замечание

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

Чтобы активировать неактивные вычисления, выполните запрос в редакторе SQL Lakebase или отключите масштабирование до нуля, чтобы убедиться, что вычислительные ресурсы остаются активными. См. раздел "Масштабирование до нуля".

Чтобы подключиться непосредственно к вычислительным ресурсам Lakebase, выполните приведенные действия.

  1. Используйте переключатель приложений для перехода в Lakehouse.
  2. Откройте редактор SQL, нажав на значок Редактор SQL в боковой панели.
  3. В раскрывающемся меню "Подключиться" выберите "Дополнительно...

Меню подключения

  1. В диалоговом окне "Подключение к существующему вычислительному ресурсу " выберите Lakebase Postgres, выберите параметр автомасштабирования , а затем выберите проект и ветвь.

Присоединиться к проекту и ветке LKB

  1. Нажмите кнопку "Подключить ", чтобы подключиться.

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

После подключения можно выполнить стандартные запросы SQL Postgres к базе данных Lakebase.

Создайте таблицу, вставьте данные и запросите ее:

CREATE TABLE IF NOT EXISTS playing_with_lakebase(id SERIAL PRIMARY KEY, name TEXT NOT NULL, value REAL);
INSERT INTO playing_with_lakebase(name, value)
SELECT LEFT(md5(i::TEXT), 10), random() FROM generate_series(1, 10) s(i);
SELECT * FROM playing_with_lakebase;

Запрос определенной таблицы:

SELECT * FROM public.playing_with_lakebase;

Это важно

Ограничения с прямым подключением:

  • Федеративные запросы не поддерживаются: вы можете запрашивать только подключенный проект Lakebase и ветвь. Невозможно объединить данные Lakebase с другими таблицами каталога Unity в одном запросе.
  • Метакоманд Postgres не поддерживается: метакоманд Postgres (например \dt, \d, ), \lкоторые работают в редакторе SQL Lakebase, не работают в редакторе SQL (Lakehouse).

Метод 2. Регистрация базы данных в каталоге Unity

Используйте этот метод для регистрации базы данных Lakebase в каталоге Unity, включения федеративных запросов и единого управления в источниках данных.

Перед тем как начать

Убедитесь, что у вас есть следующее:

  • Роль Postgres: соответствующая роль Postgres для доступа к базе данных. См. статью "Управление ролями Postgres".
  • Разрешения базы данных: необходимые разрешения для доступа к базе данных, схеме или таблице. См. раздел "Управление разрешениями".
  • Привилегии каталога Unity: CREATE CATALOG привилегии в хранилище метаданных каталога Unity для регистрации базы данных
  • Хранилище SQL: бессерверное хранилище SQL для запроса зарегистрированного каталога

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

Регистрация базы данных

Чтобы зарегистрировать базу данных Lakebase в каталоге Unity:

  1. Используйте переключатель приложений для перехода в Lakehouse.
  2. В обозревателе каталогов щелкните значок плюса и создайте каталог.
  3. Введите имя каталога (например, lakebase_catalog).
  4. Выберите Lakebase Postgres в качестве типа каталога, а затем выберите параметр автомасштабирования .
  5. Выберите проект, ветвь и базу данных Postgres.
  6. Нажмите кнопку "Создать".

Каталог отображается в обозревателе каталогов, где можно просматривать схемы, таблицы и представления.

Запрос через каталог Unity

После регистрации запросите базу данных Lakebase с помощью хранилищ SQL или любого средства, подключающегося к каталогу Unity.

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

-- Query a registered :re[LKB] database
SELECT * FROM chatbot_catalog.public.conversations
WHERE created_at >= current_date - INTERVAL 7 DAYS;

Объедините данные Lakebase и lakehouse:

-- Join :re[LKB] and Unity Catalog data
SELECT
  c.conversation_id,
  c.user_id,
  c.agent_response,
  u.user_name,
  u.subscription_tier
FROM chatbot_catalog.public.conversations c
JOIN main.user_analytics.users u
  ON c.user_id = u.user_id;

Сведения о разрешениях каталога Unity и предоставлении доступа другим пользователям см. в разделе "Разрешения" и "Управление доступом".

Это важно

Ограничения при регистрации каталога Unity:

  • Доступ только для чтения: каталоги, зарегистрированные из баз данных Lakebase, доступны только для чтения с помощью каталога Unity. Чтобы изменить данные, используйте редактор SQL Lakebase или подключитесь непосредственно к базе данных.
  • Отдельная база данных для каждого каталога: каждый каталог каталога Unity представляет одну базу данных Lakebase. Чтобы предоставить несколько баз данных, зарегистрируйте каждую отдельно.
  • Синхронизация метаданных: каталог Unity кэширует метаданные для уменьшения запросов Postgres. Новые объекты могут отображаться не сразу. Нажмите кнопку , чтобы активировать полное обновление.

Полные сведения о регистрации баз данных в каталоге Unity см. в разделе "Регистрация базы данных Lakebase" в каталоге Unity.

Дальнейшие шаги