1. Введение
BigQuery — это бессерверное, масштабируемое и экономичное хранилище данных. Просто переместите свои данные в BigQuery и позвольте нам взять на себя всю тяжелую работу, чтобы вы могли сосредоточиться на том, что действительно важно, на ведении вашего бизнеса. Вы можете контролировать доступ как к проекту, так и к вашим данным в зависимости от потребностей вашего бизнеса, например предоставляя другим возможность просматривать или запрашивать ваши данные.
В этой лабораторной работе вы познакомитесь с аналитическими возможностями BigQuery. Вы узнаете, как импортировать набор данных из корзины Google Cloud Storage и освоите пользовательский интерфейс BigQuery, работая с набором данных розничного банковского обслуживания. Кроме того, эта лабораторная работа научит вас, как раскрыть ключевые функции BigQuery, которые значительно упрощают повседневную аналитику, например экспорт результатов запросов в электронную таблицу, просмотр и выполнение запросов из истории запросов, просмотр производительности запросов и создание табличных представлений для для использования другими командами и отделами.
Что вы узнаете
В ходе этой лабораторной работы вы научитесь выполнять следующие задачи:
- Загрузка новых данных в BigQuery
- Познакомьтесь с пользовательским интерфейсом BigQuery.
- Запуск запросов в BigQuery
- Просмотр производительности запроса
- Создание представлений в BigQuery
- Безопасно делитесь наборами данных с другими
2. Введение: понимание пользовательского интерфейса BigQuery
В этом разделе вы узнаете, как перемещаться по пользовательскому интерфейсу BigQuery, просматривать доступные наборы данных и выполнять простой запрос.
Загрузка пользовательского интерфейса BQ
- Введите «BigQuery», расположенное в верхней части консоли Google Cloud Platform.
- Выберите BigQuery из списка опций. Обязательно выберите вариант с логотипом BigQuery и увеличительным стеклом.
Просмотр наборов данных и выполнение запросов
- На левой панели в разделе «Ресурс» щелкните свой проект BigQuery.
- Нажмите
bq_demo
чтобы просмотреть таблицы в этом наборе данных. - В поле типа поиска введите «card», чтобы просмотреть список таблиц и наборов данных, в названии которых содержится слово «card».
- Выберите таблицу «card_transactions» из списка результатов поиска.
- Нажмите вкладку «Подробности» под панелью
card_transactions
, чтобы просмотреть метаданные для этой таблицы. - Нажмите вкладку «Предварительный просмотр», чтобы просмотреть предварительный просмотр таблицы.
[ Конкурентная тема для обсуждения]: интеграция с каталогом данных Google означает, что метаданными BigQuery можно управлять наряду с другими источниками данных, такими как озера данных или источники операционных данных. Это один из примеров, который показывает, что Google Cloud — это не просто реляционное хранилище данных, это целая платформа аналитических данных.
- Нажмите значок лупы, чтобы запросить таблицу «card_transactions». Автоматически сгенерированный текст появится в редакторе запросов BigQuery.
- Введите код ниже, чтобы показать нам отдельных продавцов из таблицы Card_Transactions.
SELECT distinct (merchant) FROM bq_demo.card_transactions LIMIT 1000
- Нажмите кнопку «Выполнить», чтобы выполнить запрос.
3. Создание наборов данных и обмен представлениями
Обмен данными и управление имеют решающее значение, это можно сделать интуитивно в пользовательском интерфейсе BQ. В этом разделе вы узнаете, как создать новый набор данных, заполнить его представлением и опубликовать этот набор данных.
Просмотр истории запросов
- Нажмите «История запросов» на левой панели консоли GCP.
- Нажмите «Обновить» на панели «История запросов».
- Нажмите на изображение/стрелку загрузки в правой части запроса, чтобы просмотреть результаты запроса.
Создание нового набора данных
- Выберите [название вашего проекта] на панели ресурсов пользовательского интерфейса BigQuery.
- Выберите «Создать новый набор данных» на панели информации о проекте.
- Для идентификатора набора данных:
bq_demo_shared
- Все остальные поля оставьте по умолчанию
- Нажмите «Создать набор данных».
Создание представлений
[ Конкурентная тема для обсуждения]: BigQuery полностью совместим с ANSI SQL и поддерживает как простые, так и сложные соединения нескольких таблиц, а также богатые аналитические функции. Мы постоянно выпускаем расширенную поддержку распространенных типов данных и функций SQL, используемых в традиционных хранилищах данных, чтобы упростить процесс миграции.
- Выберите «Создать новый запрос» в верхней части панели редактора запросов.
- Вставьте следующий код в редактор запросов
WITH revenue_by_month AS (
SELECT
card.type AS card_type,
FORMAT_DATE('%Y-%m', trans_date) as revenue_date,
SUM(amount) as revenue
FROM bq_demo.card_transactions
JOIN bq_demo.card ON card_transactions.cc_number = card.card_number
WHERE trans_date DATE_ADD(CURRENT_DATE, INTERVAL -1 YEAR)
GROUP BY card_type, revenue_date
)
SELECT
card_type,
revenue_date,
revenue as monthly_rev,
revenue - LAG(revenue) OVER (ORDER BY card_type, revenue_date ASC) as rev_change
FROM revenue_by_month
ORDER BY card_type, revenue_date ASC;
- Нажмите «Сохранить вид»
- Выберите текущий проект в поле «Название проекта».
- Выберите вновь созданный набор данных:
bq_demo_shared
- Для имени таблицы:
rev_change_by_card_type
- Нажмите «Сохранить».
Совместное использование представлений и наборов данных
- Выберите набор данных «bq_demo_shared» на левой панели ресурсов в пользовательском интерфейсе BigQuery.
- Нажмите «Поделиться набором данных» на панели информации о наборе данных.
- Введите адрес электронной почты
- В раскрывающемся меню «Роль» выберите «Просмотр данных BigQuery».
- Нажмите «Добавить»
- Нажмите Готово
Изучите данные в таблицах
[ Конкурентная тема для обсуждения] Еще одним преимуществом BigQuery по сравнению с конкурентами является BI Engine. BI Engine можно использовать для возврата сводных запросов типа BI менее чем за секунду с помощью механизма кэширования в памяти. В настоящее время это поддерживается Google Data Studio, но вскоре будет доступно для ускорения всех запросов в BigQuery.
Например:
Snowflake использует сторонние инструменты BI для информационных панелей и визуализации данных, в то время как GCP предлагает ряд интегрированных инструментов BI, включая Connected Sheets, Data Studio и Looker.
- Выберите представление «rev_change_by_card_type» на левой панели ресурсов в пользовательском интерфейсе BigQuery.
- Нажмите на увеличительное стекло, чтобы просмотреть вид.
- Тип:
ВЫБИРАТЬ *
ИЗ bq_demo_shared.rev_change_by_card_type
- Нажмите «Выполнить».
- Нажмите значок «Экспорт» на панели результатов.
- Выберите «Изучать данные с помощью таблиц».
- Нажмите «Начать анализ»
- Выберите «Сводная таблица».
- Выберите «Новый лист».
- Нажмите «Создать»
- Добавьте «revenue_date» в раздел «Строка» редактора сводных таблиц, расположенного в правой части окна «Таблицы».
- Добавьте «card_type» в раздел «Столбец» редактора сводных таблиц.
- Добавьте «monthly_rev» в раздел «Столбец» редактора сводных таблиц.
- Нажмите Применить.
- Перейдите в верхнюю часть пользовательского интерфейса Таблиц и выберите «Вставить диаграмму».
4. Настройка: интеграция данных
В этом разделе вы узнаете, как создать новую таблицу и выполнить JOINS для одного из множества общедоступных наборов данных, доступных в Google Cloud.
[Конкурентная тема для разговора]:
BigQuery уже много лет поддерживает общие наборы данных. Клиенты в любом проекте могут запрашивать как общедоступные наборы данных, так и наборы данных в других проектах, к которым им предоставлен общий доступ.
BigQuery может поддерживать озера данных в GCS за счет использования внешних таблиц. Помимо массовой загрузки, BigQuery поддерживает возможность потоковой передачи данных в базу данных со скоростью более сотен МБ в секунду. Snowflake не поддерживает потоковую передачу данных.
Импорт данных в новую таблицу
- На панели ресурсов выберите набор данных bq_demo.
- На панели информации о наборе данных выберите «Создать таблицу».
- Выберите облачное хранилище Google в качестве источника.
- В текстовом поле пути к файлу:
gs://retail-banking-looker/district
- Выберите CSV в качестве формата файла.
- Введите «район» в поле «Имя таблицы».
- Установите флажок для схемы автоматического определения.
- Нажмите Создать таблицу.
Запрос общедоступного набора данных
- В редакторе запросов введите следующий запрос:
SELECT
CAST(geo_id as STRING) AS zip_code,
total_pop,
median_age,
households,
income_per_capita,
housing_units,
vacant_housing_units_for_sale,
ROUND(SAFE_DIVIDE(employed_pop, pop_16_over),4) AS rate_employment,
ROUND(SAFE_DIVIDE(bachelors_degree_or_higher_25_64, pop_25_64),4) AS rate_bachelors_degree_or_higher_25_64
FROM
`bigquery-public-data.census_bureau_acs.zip_codes_2017_5yr`;
- Нажмите «Выполнить».
- Посмотреть результаты
- Теперь мы объединим эти общедоступные данные с другим запросом. Введите следующий код SQL в редакторе запросов:
WITH customer_counts AS (
select regexp_extract(address, "[0-9][0-9][0-9][0-9][0-9]") as zip_code,
count(*) as num_clients
FROM bq_demo.client
GROUP BY zip_code
)
SELECT
CAST(geo_id as STRING) AS zip_code,
total_pop,
median_age,
households,
income_per_capita,
ROUND(SAFE_DIVIDE(employed_pop, pop_16_over),4) AS rate_employment,
num_clients
FROM
`bigquery-public-data.census_bureau_acs.zip_codes_2017_5yr`
JOIN customer_counts on zip_code = geo_id
ORDER BY num_clients DESC
- Нажмите «Выполнить».
- Посмотреть результаты
5. Управление мощностями
Работа со слотами и резервациями
BQ предлагает несколько моделей ценообразования для удовлетворения ваших потребностей. Большинство крупных клиентов в первую очередь используют фиксированную ставку для предсказуемого ценообразования с зарезервированной мощностью. Для превышения этой базовой мощности BQ предлагает гибкие слоты, которые позволяют вам наращивать дополнительную емкость на лету, а затем автоматически сокращать ее, не влияя на выполнение запросов. BQ также имеет модель побайтового сканирования, которая позволяет вам платить только за выполняемые вами запросы.
[ Конкурентная тема для обсуждения: некоторые конкуренты работают исключительно по модели фиксированной мощности, когда клиентам приходится выделять виртуальный склад для каждой рабочей нагрузки в своей организации. В дополнение к модели низкой стоимости каждого запроса, которая упрощает начало работы с BigQuery, мы поддерживаем модель ценообразования за мощность с фиксированной ставкой, при которой простаивающая мощность может быть разделена между набором рабочих нагрузок. ]
- Перейдите на вкладку бронирования.
- Нажмите «Купить слоты».
- Выберите «Гибкий» в качестве продолжительности.
- Выберите 500 слотов.
- Подтвердите покупку.
- Нажмите «Просмотреть обязательства по слотам».
- Нажмите «Создать бронирование».
- Пользователь «demo» в качестве имени резервирования
- Выберите США в качестве местоположения
- Введите 500 для слотов (все доступны)
- Нажмите «Назначения»
- Выберите текущий проект для проекта организации
- Выберите «демо» для идентификатора бронирования.
- Нажмите «Создать».