Files
clickstream-data-platform/docs/labs/optional/superset-missing-object.md
T
ddadmin a03838b953 docs(labs): оформлен факультативный раздел Superset и BI
Зачем: дать менти два самостоятельных задания по BI после ступени 2.

Что: обновлено ТЗ дашборда, добавлен опыт с объектом на одной ноде, уточнены программа и индекс. Формулировки обращены к учащемуся.

Проверка: локальные ссылки и git diff --check прошли. На ClickHouse 26.3.17.56 воспроизведены ошибка чтения со второй ноды и исправление; учебный объект удален. Полный проход через интерфейс Superset не выполнялся.
2026-09-13 10:34:48 -04:00

4.2 KiB

В DBeaver работает, в Superset нет

Чему учит: найти причину, по которой один клиент читает объект хранилища, а другой его не видит.

Факультатив доступен после ступени 2. Свой дашборд для опыта не нужен. Используйте готовую витрину стенда dm.daily_traffic_v.

Подготовьте опыт

В DBeaver подключитесь к первой ноде пользователем etl, как описано в разделе «Как применить свой DDL». Для опыта создайте отдельное представление:

CREATE VIEW dm.bi_node_probe_v AS
SELECT * FROM dm.daily_traffic_v;

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

SELECT count() FROM dm.bi_node_probe_v;

Повторите запрос в SQL Lab Superset, выбрав подключение ClickHouse. Сохраните текст ошибки.

Найдите причину

Выясните, к каким серверам обращаются DBeaver и Superset. Адреса подключения показывают настройки клиентов, а имя ответившего сервера можно спросить запросом SELECT hostName().

Проверьте наличие dm.bi_node_probe_v на обеих нодах. Для второй ноды заведите подключение DBeaver с портом из README. Запишите, где объект есть, и объясните, почему успешного создания в первом подключении оказалось недостаточно.

Исправьте DDL так, чтобы представление появилось на обеих нодах. Подключение Superset должно остаться прежним. Сохраните исправленный DDL и повторите исходный запрос в обоих клиентах.

Если застряли, прочитайте раздел «Устройство зоны» в справочнике Superset и описание распределенного DDL ClickHouse.

Как проверить себя

В обоих клиентах запрос к вашему представлению должен вернуть столько же строк, сколько SELECT count() FROM dm.daily_traffic_v. Сравнивайте результаты при завершенном прогоне конвейера, пока мир не продвигается.

Объясните причину ошибки через три факта: куда пришел DDL, куда пришел запрос Superset и на каких нодах существовало представление.

После опыта удалите только dm.bi_node_probe_v на обеих нодах. Не включайте его в постоянный DDL домашних витрин: это временный объект расследования.

Что должно получиться

  • у вас сохранены успешный запрос из DBeaver и ошибка из SQL Lab;
  • вы можете объяснить, к каким серверам подключены клиенты, где было создано представление и почему Superset его не видел;
  • у вас есть исправленный DDL; оба клиента возвращают столько же строк, сколько исходная витрина;
  • после опыта вы удалили учебное представление с обеих нод.