Дата публикации
ai_products

Amazon QuickSight запускает Dataset Q&A: текстовые запросы к любым BI-датасетам с прозрачным SQL

Что нового

Amazon добавила в QuickSight (в тексте источника фигурирует как Amazon Quick / Quick) новый режим работы с данными — Dataset Q&A.

Он дополняет уже существующие Dashboard Q&A и Topic Q&A и даёт пользователям несколько новых возможностей:

  1. Текстовые запросы напрямую к датасету
    Вы задаёте вопрос на естественном языке, QuickSight:

    • выбирает нужный датасет;
    • строит SQL-запрос;
    • запускает его по всей таблице, без сэмплирования строк и лимитов по объёму данных;
    • возвращает результат в виде таблицы или визуализации.
  2. Работа с полным датасетом, а не только с дашбордом
    Можно спрашивать про любые поля и измерения, даже если они не вынесены ни в один существующий дашборд или Topic.

  3. Отсутствие предварительной настройки
    Dataset Q&A не требует:

    • создания Topics;
    • настройки семантических слоёв;
    • подготовки вычисляемых полей.
      Достаточно уже существующего датасета в QuickSight.
  4. Dataset Enrichment — загрузка бизнес-контекста к одному датасету
    Авторы данных могут «обучить» систему контексту:

    • загрузкой YAML/JSON-файла или текстовой инструкции с:
      • описаниями полей;
      • ожидаемыми связями между полями;
      • особыми правилами и оговорками по колонкам и всему датасету;
    • или ручным вводом этого контекста в интерфейсе.
      Этот контекст применяется ко всем запросам к датасету.
  5. Chat Explainability — прозрачность каждого шага
    Для любого ответа на текстовый запрос QuickSight показывает:

    • сгенерированный SQL;
    • какие фильтры применил;
    • какие допущения сделал агент;
    • пошаговое объяснение на естественном языке.
      Можно проверить логику перед тем, как делиться результатом.
  6. Поддержка сложных вопросов в одном запросе
    Dataset Q&A умеет обрабатывать:

    • несколько вопросов в одном сообщении;
    • фильтры, группировки, агрегации и вычисляемые метрики «на лету»;
    • указания по типу визуализации (например, dual axis chart, ось с нуля).
  7. Работа с несколькими датасетами и Spaces
    QuickSight использует внутренний knowledge graph, чтобы:

    • автоматически выбирать релевантный датасет, если их несколько;
    • работать по опции All data and apps, когда пользователь вообще не знает, где лежат данные;
    • объединять структурированные датасеты и документы внутри Spaces (PDF, Word, CSV и т.д.) и отвечать, опираясь на все источники.
  8. Соблюдение безопасности без дополнительной настройки
    Любой текстовый запрос учитывает:

    • row-level security (RLS);
    • column-level security (CLS);
      Дополнительной конфигурации для Dataset Q&A не нужно.
  9. Поддерживаемые источники данных
    В режиме Dataset Q&A сейчас можно работать с:

    • Amazon Athena;
    • Amazon Redshift;
    • Amazon Aurora PostgreSQL;
    • Amazon S3 Tables.
      Поддерживаются как SPICE, так и direct query (без сэмплирования; для SPICE действуют ограничения ёмкости SPICE).
  10. Ограничения текущей версии

    • Нельзя использовать составные датасеты, где родитель в SPICE, а дочерний — в direct query.
    • Нельзя подключать custom SQL датасеты с параметрами.

Чётких цифр по скорости, цене, лимитам контекста или токенам Amazon не приводит. Но в примере QuickSight обрабатывает 1 857 960 строк за один запрос и 714 562 строк для месячного среза без сэмплирования.

Как это работает

Общая схема

  1. Пользователь задаёт вопрос в чате My Assistant в QuickSight.
  2. Система интерпретирует текст:
    • определяет, о каких бизнес-сущностях идёт речь;
    • сопоставляет их с полями в доступных датасетах;
    • выбирает подходящий источник данных.
  3. QuickSight строит SQL-запрос с учётом:
    • контекста предыдущих сообщений;
    • Dataset Enrichment (если настроен);
    • RLS/CLS;
    • указанных пользователем фильтров и параметров визуализации.
  4. Запрос выполняется:
    • по SPICE-экстракту или напрямую по источнику (Athena, Redshift, Aurora PostgreSQL, S3 Tables);
    • без сэмплирования строк в режиме direct query.
  5. Ответ возвращается в виде:
    • таблицы;
    • графика (включая dual axis);
      плюс текстовые инсайты и предложения следующих шагов.
  6. Через Chat Explainability пользователь может раскрыть:
    • сгенерированный SQL;
    • шаги рассуждений;
    • принятые допущения.

Семантический граф и выбор датасета

QuickSight использует enterprise knowledge graph для работы со структурированными активами:

  • дашбордами;
  • датасетами;
  • Topics;
  • Spaces с набором активов.

Этот граф хранит связи:

  • какие поля используются в каких дашбордах и Topics;
  • как датасеты связаны между собой;
  • какие описания и бизнес-контекст добавили авторы.

Когда пользователь задаёт вопрос, система:

  1. Ищет по семантическому графу активы, связанные с ключевыми понятиями из запроса.
  2. Сопоставляет текст с названиями полей, их синонимами, описаниями и примерами значений.
  3. Выбирает датасет (или несколько), который лучше всего подходит под вопрос.

Пользователь может:

  • явно указать датасет через knowledge picker;
  • выбрать несколько датасетов;
  • выбрать Space с миксом датасетов и документов;
  • включить режим All data and apps, чтобы QuickSight сам нашёл нужные источники.

Разбор неоднозначностей

Ключевая задача — правильно интерпретировать бизнес-язык. Пример из блога: слово «volume» может означать:

  • количество строк;
  • выручку;
  • количество отгруженных единиц.

QuickSight решает это так:

  1. Смотрит на структуру датасета: названия колонок, типы данных, распределения значений.
  2. Использует описания полей и Dataset Enrichment.
  3. Учитывает контекст предыдущих вопросов в чате.
  4. При необходимости «подглядывает» в данные: выборки значений и статистики.

После этого система строит SQL с использованием одного из трёх внутренних механизмов генерации SQL (подробности по ним в блоге не раскрываются, но видно, что поддерживаются window-функции, агрегации, вычисляемые поля).

Dataset Enrichment

Dataset Enrichment — это способ «заземлить» модель в бизнес-контекст по одному конкретному датасету.

Автор может:

  • загрузить файл (YAML, JSON) с описанием:
    • полей;
    • связей между ними;
    • правилами интерпретации;
    • специфическими инструкциями по колонкам и по всему датасету;
  • или ввести тот же контент как обычный текст.

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

Explainability и SQL-прозрачность

Для каждого ответа на естественном языке QuickSight может показать:

  • сгенерированный SQL-запрос;
  • как он использовал контекст предыдущих вопросов;
  • какие фильтры и условия применил;
  • на каком поле группировал;
  • как вычислил производные метрики (например, проценты от общего, среднюю длительность).

Это помогает:

  • аналитикам и инженерам проверять корректность логики;
  • объяснять бизнесу, как именно получился результат;
  • учиться SQL по живым примерам.

Пример реального SQL

Для запроса:

«What percentage of total trips does each member type account for in September 2025, and what is the average ride duration in minutes? Use a dual axis visual with the axis starting at 0.»

QuickSight сгенерировал SQL:

SELECT
  "member_casual",
  COUNT(*) AS trip_count,
  ROUND(COUNT(*) * 100.0 / SUM(COUNT(*)) OVER (), 2) AS percentage_of_total_trips,
  ROUND(AVG(date_diff('second', "started_at", "ended_at")) / 60.0, 2) AS avg_duration_minutes
FROM "Divvy_Bike_Trips"
WHERE "ended_at" >= '2025-09-01 00:00:00'
  AND "ended_at" < '2025-10-01 00:00:00'
GROUP BY "member_casual"
ORDER BY trip_count DESC

Ключевые моменты:

  • Window-функция SUM(COUNT(*)) OVER () даёт общее число поездок по всем типам пользователей.
  • Процент: COUNT(*) * 100.0 / SUM(COUNT(*)) OVER ().
  • Длительность поездки: AVG(date_diff('second', started_at, ended_at)) / 60.0 — средняя длительность в минутах.
  • Фильтрация по периоду: с 1 по 30 сентября 2025 года (исключая 1 октября).
  • Группировка по member_casual — разделение на подписчиков и разовых пользователей.

Этот пример показывает, что система умеет:

  • строить сложные агрегации;
  • считать проценты от общего на лету;
  • работать с датами и длительностями;
  • использовать контекст поля ended_at, если пользователь об этом попросил.

Что это значит для вас

Для кого это полезно

1. Бизнес-пользователи и продакт-менеджеры

Что вы получаете:

  • Можно задать вопрос в духе:
    «Сколько у нас поездок по месяцам c сентября по декабрь 2025 года?»
    без знания SQL и структуры схемы.
  • Ответ приходит за секунды, а не через тикет к BI-команде.
  • Можно уточнять:
    «Посчитай по полю ended_at»,
    «Покажи в виде столбчатой диаграммы с осью от нуля».

Когда это особенно полезно:

  • разовые вопросы вне существующих дашбордов;
  • быстрые проверки гипотез;
  • подготовка к встречам и презентациям без ожидания обновления дашборда.

2. Аналитики и data scientists

Плюсы:

  • Быстрый «черновой» анализ без написания SQL руками;
  • Возможность задавать сложные вопросы:
    • проценты от общего;
    • группировки по нескольким измерениям;
    • фильтры по периодам и категориям;
  • Полная прозрачность SQL для проверки и доработки.

Где использовать:

  • исследовательский анализ (EDA) по новым датасетам;
  • проверка гипотез до того, как вы строите полноценный дашборд;
  • обучение менее технических коллег анализу данных.

3. Data engineers и владельцы данных

Выгоды:

  • Меньше однотипных тикетов от бизнеса «сделайте выборку по этим полям»;
  • Возможность зашить бизнес-правила в Dataset Enrichment:
    • как считать выручку;
    • кто считается «активным клиентом»;
    • какие фильтры всегда должны применяться.

Где осторожность:

  • Для сложной логики с несколькими слоями агрегаций и жёсткими SLA по точности лучше сохранять критичные SQL-запросы и BI-дашборды как артефакты, а не полагаться только на чат.

Где это действительно помогает

  1. Ad-hoc BI-запросы
    Классический сценарий: бизнес-вопрос не покрыт дашбордом. Dataset Q&A закрывает этот разрыв:

    • не нужно создавать новый дашборд;
    • не нужно настраивать Topic;
    • можно сразу спрашивать датасет.
  2. Исследование новых датасетов
    Пример из блога — датасет поездок Divvy в Чикаго за последние четыре месяца 2025 года.
    Можно начать с вопроса:
    «Опиши структуру этого датасета» — QuickSight расскажет, что означает каждая колонка.

  3. Многодатасетный анализ без ETL
    Пример сценария:

    • датасет поездок на велосипедах;
    • датасет погоды;
    • отчёты по инфраструктуре в PDF;
    • календарь событий в Word;
    • всё это собрано в Space «Transportation Analytics».

    Вопросы уровня:

    • «Как погода влияла на велопоездки в сентябре?»;
    • «Какие крупные события совпали с пиками поездок?»

    QuickSight сам выбирает нужные источники в Space и собирает ответ.

  4. Обучение и контроль качества SQL
    Технические пользователи могут:

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

Где лучше не полагаться только на Dataset Q&A

  1. Финансовая отчётность и строгие регуляторные отчёты
    Когда важна воспроизводимость до строки, лучше:

    • использовать зафиксированные SQL-скрипты;
    • поддерживать проверенные дашборды;
    • документировать логику расчётов отдельно.

    Dataset Q&A здесь полезен как вспомогательный инструмент, а не единственный источник истины.

  2. Очень сложные аналитические пайплайны
    Если отчёт строится на цепочке из нескольких витрин, промежуточных агрегаций и сложных джойнов, удобнее:

    • заранее спроектировать витрины;
    • вынести бизнес-логику в ETL/ELT;
    • использовать Dataset Q&A поверх уже упрощённого слоя.
  3. Сценарии, не поддерживаемые ограничениями продукта

    • Composite datasets с сочетанием SPICE и direct query для дочерних датасетов не подойдут.
    • Custom SQL с параметрами нужно будет запускать традиционным способом.

Доступность и правовые нюансы

  • Dataset Q&A — часть Amazon QuickSight Enterprise Edition.
  • Для работы нужен аккаунт AWS и включённый QuickSight Enterprise с минимум одним Enterprise-пользователем и одним Professional-пользователем.
  • Сервис развёрнут в инфраструктуре AWS; с территории России к AWS многие компании подключаются через VPN или частные каналы.
  • Если у вашей организации нет доступа к AWS по юридическим или инфраструктурным ограничениям, воспользоваться Dataset Q&A не получится.

Место на рынке

Dataset Q&A решает ту же задачу, что и другие text-to-SQL и BI-ассистенты, но встроен прямо в QuickSight и работает поверх существующей модели безопасности и семантического слоя.

С кем это можно сравнить по типу продукта:

  • Power BI Copilot в Microsoft Power BI;
  • Looker Q&A / Explore в Google Looker;
  • встроенные ассистенты в Tableau (Ask Data / Tableau GPT);
  • отдельные text-to-SQL сервисы, которые подключаются к Redshift, Snowflake, BigQuery и т.д.

Конкретные цифры по скорости, стоимости запросов, лимитам токенов или сравнению с GPT‑4o / Claude 3 Opus Amazon не приводит.
Но из описания видно несколько акцентов:

  • Глубокая интеграция с QuickSight
    Dataset Q&A знает о:

    • RLS/CLS;
    • дашбордах;
    • Topics;
    • Spaces и knowledge graph.
      Отдельные text-to-SQL сервисы обычно требуют ручной настройки безопасности и схемы.
  • Прозрачный SQL и explainability по умолчанию
    Для корпоративного BI это важнее, чем «магия» ответа. QuickSight делает ставку на объяснимость и контроль.

  • Фокус на полном датасете без сэмплирования
    Многие демонстрационные text-to-SQL решения работают на сэмплах или ограничивают число строк. QuickSight подчёркивает, что для direct query обращается к полному объёму данных, как в примере с 1 857 960 строками.

Если вы уже используете QuickSight как основной BI-инструмент, Dataset Q&A логично рассматривать как встроенное расширение, а не как замену внешним LLM-ассистентам.
Если ваша аналитика живёт в Power BI, Looker или Tableau, переход на QuickSight только ради Dataset Q&A вряд ли оправдан: придётся переносить витрины, дашборды и процессы в экосистему AWS.

Как запустить

Ниже — краткий практический walkthrough на примере датасета поездок Divvy в Чикаго за последние четыре месяца 2025 года.

Предварительные требования

Вам понадобится:

  • Аккаунт AWS (см. раздел Getting Started with AWS в документации);
  • Включённый Amazon QuickSight Enterprise Edition с:
    • минимум одним Enterprise-пользователем;
    • минимум одним Professional-пользователем;
  • Базовое понимание концепций QuickSight:
    • датасеты;
    • режим SPICE и direct query;
    • чат-интерфейс My Assistant.

Подготовка датасета

  1. Скачайте открытый датасет Divvy Bike Trips: последние четыре месяца 2025 года.
  2. Загрузите файлы в QuickSight и создайте датасет Divvy_Bike_Trips.
  3. При необходимости используйте опцию append, чтобы объединить несколько файлов.
  4. Подробные шаги по загрузке — в разделе про новый data preparation experience в документации QuickSight или в соответствующем видео на YouTube.

Шаг 1. Подключение датасета к чату

  1. В интерфейсе Amazon QuickSight нажмите иконку Open chat в правом верхнем углу.
  2. Откроется чат My Assistant.
  3. Внизу, в футере чата, откройте knowledge picker и выберите Add в разделе Specific data and apps.
  4. В окне Add Quick assets перейдите на вкладку Datasets и выберите Divvy_Bike_Trips.
  5. Нажмите Save.
  6. Убедитесь, что Divvy_Bike_Trips выбран в knowledge picker.
  7. Задайте первый вопрос для разведки датасета:
    «Can you describe the structure of this dataset?»

QuickSight опишет:

  • какие есть поля;
  • какие типы данных;
  • что означает каждый столбец.

Dataset Q&A работает как с SPICE, так и с direct query датасетами (Athena, Redshift, Aurora PostgreSQL, S3 Tables).

Шаг 2. Примеры запросов

Пример 1. Базовый анализ по месяцам

Вопрос:

"How many rides do we have for every month in 2025 from September until December?"

QuickSight:

  • строит SQL с группировкой по месяцам;
  • считает общее число поездок по каждому месяцу;
  • показывает результат в виде таблицы и кратких наблюдений;
  • использует весь датасет — 1 857 960 поездок, без сэмплирования.

Пример 2. Добавление контекста (поле ended_at)

В датасете есть два timestamp-поля:

  • started_at — начало поездки;
  • ended_at — окончание.

По умолчанию QuickSight группирует по started_at.
Если вам нужен конец поездки, задайте вопрос так:

"How many rides do we have for every month in 2025 from September until December? Use the ended_at timestamp to determine the month."

QuickSight использует ended_at для группировки и отражает это в SQL.

Пример 3. Просмотр SQL через Explainability

Чтобы посмотреть SQL, задайте тот же вопрос и раскройте блок Explainability в ответе:

"How many rides do we have for every month in 2025 from September until December?"

В Explainability вы увидите:

  • SQL-запрос;
  • какие поля использованы (в том числе ended_at из предыдущего контекста);
  • фильтры и группировки.

Пример 4. Несколько вопросов в одном сообщении

Вы можете задать серию вопросов сразу:

*"How many bike rides are there?

How many trips by bike type?

How many trips by members?"*

QuickSight выполнит отдельный SQL-запрос для каждого вопроса и вернёт сводный ответ.

Пример 5. Сложные вычисления и визуализация

Вопрос:

"What percentage of total trips does each member type account for in September 2025, and what is the average ride duration in minutes? Use a dual axis visual with the axis starting at 0."

QuickSight:

  • считает процент поездок каждого типа пользователя от общего числа в сентябре 2025;
  • вычисляет среднюю длительность поездки в минутах;
  • строит dual axis визуализацию с осью от нуля;
  • использует SQL с window-функциями (пример запроса приведён выше).

Работа с несколькими датасетами и Spaces

1. Несколько датасетов в knowledge picker

Добавьте, например:

  • Divvy_Bike_Trips;
  • Chicago_Weather_2025.

Примеры запросов:

  • "What was the total number of bike trips in September 2025?" — идёт в датасет поездок;
  • "What were the average temperatures in September 2025?" — идёт в датасет погоды;
  • "Show me bike trip volumes and weather patterns for each month" — анализирует оба датасета и возвращает комбинированные инсайты.

2. Auto-discovery: All data and apps

В knowledge picker можно выбрать All data and apps:

  • QuickSight сам ищет релевантные датасеты и документы;
  • строит запросы;
  • собирает единый ответ.

3. Spaces для сквозного анализа

Создайте Space, например, "Transportation Analytics", и положите туда:

  • датасет поездок Divvy;
  • датасет погоды;
  • отчёты по инфраструктуре в PDF;
  • календарь городских событий в Word;
  • существующие дашборды QuickSight.

После выбора Space можно спрашивать:

  • "How did weather patterns affect bike ridership in September?" — комбинирует поездки и погоду;
  • "What major events occurred during peak ridership weeks?" — использует календарь событий;
  • "Compare bike-sharing usage with public transit ridership trends" — анализирует несколько структурированных датасетов.

QuickSight сам выбирает, какие активы использовать, и собирает ответ.

Дополнительно: паттерны использования

Паттерн 1. Нарастающая сложность без перенастройки

Как это выглядит:

  1. Вы спрашиваете: "What were total sales last quarter?" (аналог примера с поездками по месяцам).
  2. Затем уточняете:
    "What percentage of revenue came from repeat customers in each region, and how did their average order value compare to new customers?"

Dataset Q&A позволяет:

  • двигаться от простых сумм к сложным долям и сравнениям;
  • не менять конфигурацию датасета или Topics;
  • сохранять контекст разговора.

Плюс: рабочий процесс ближе к естественному мышлению аналитика.

Паттерн 2. SQL-прозрачность для технической валидации

Сценарий:

  • data engineer хочет убедиться, что запрос:
    "What is the average order value for repeat customers who made purchases in both Q3 and Q4 2025?"
    правильно трактует «repeat customers» как тех, кто покупал и в Q3, и в Q4.

Dataset Q&A позволяет:

  • посмотреть SQL через Explainability;
  • проверить, что логика использует AND, а не OR;
  • убедиться в корректности дат и уровней агрегации;
  • при необходимости скорректировать формулировку вопроса.

Результат: проще защищать методологию перед руководством.

Паттерн 3. Полный охват датасета

В примере с Divvy:

  • общий анализ по месяцам использует 1 857 960 поездок;
  • расчёт процентов по сентябрю — 714 562 поездки.

Никакого сэмплирования или усечения выборки для direct query.
Это критично для сценариев вроде:

  • "What percentage of tickets were resolved within SLA by priority level and support tier?" — по всем тикетам за год.

Dataset Q&A даёт точные агрегаты по всему объёму данных.

Паттерн 4. Мультиактивный анализ

Когда решение полезно:

  • нужно связать несколько источников: транспорт, погода, события, отчёты;
  • нет желания строить сложный ETL и объединённые витрины.

Пример вопроса:

"What was the impact of major events on bike and transit usage in October 2025?"

QuickSight:

  • берёт поездки на велосипедах и транзит;
  • вынимает события из PDF-календаря;
  • добавляет погоду из CSV;
  • собирает общий ответ.

Это снижает порог для сквозного анализа по нескольким доменам.

Ключевые отличия от других режимов QuickSight

Внутри самого QuickSight теперь три разных режима текстовых запросов:

  1. Dashboard Q&A

    • Работает только в рамках опубликованного дашборда.
    • Понимает бизнес-контекст, который автор заложил в визуалы, фильтры и вычисляемые поля.
    • Подходит для «погружения» в уже готовую аналитику.
  2. Topic Q&A

    • Автор заранее настраивает Topic:
      • переименовывает поля в бизнес-термины;
      • добавляет синонимы;
      • задаёт инструкции и правила.
    • Пользователь задаёт вопросы к этому curated-набору полей.
  3. Dataset Q&A

    • Работает напрямую с датасетом без Topics и дашбордов.
    • Даёт доступ ко всем полям и вычисляемым метрикам на лету.
    • Показывает SQL и шаги рассуждений.

Если у вас уже есть тщательно настроенные Topics, Topic Q&A остаётся удобным входом для бизнес-пользователей.
Dataset Q&A полезен, когда нужно выйти за рамки заранее подготовленного слоя и исследовать данные глубже.

Очистка ресурсов

Если вы повторяли walkthrough с Divvy_Bike_Trips в своём аккаунте AWS и больше не планируете его использовать:

  1. Зайдите в раздел датасетов в Amazon QuickSight.
  2. Найдите датасет Divvy_Bike_Trips.
  3. Удалите его (см. раздел Deleting a dataset в документации QuickSight).

Это поможет избежать лишних расходов на хранение и обработку данных.


Читайте также