arrow_back

Dataflow: Qwik Start – шаблони

Test and share your knowledge with our community!

Dataflow: Qwik Start – шаблони

Lab 45 годин universal_currency_alt 1 кредит show_chart Початковий
info This lab may incorporate AI tools to support your learning.
Test and share your knowledge with our community!

GSP192

Огляд

У цій практичній роботі ви навчитеся створювати конвеєр потокового передавання даних на основі шаблонів Dataflow від Google. Зокрема ви використовуватимете шаблон Pub/Sub to BigQuery, що читає повідомлення у форматі JSON із теми Pub/Sub і записує їх у таблицю BigQuery. Документацію щодо цього шаблона можна переглянути в посібнику Початок роботи із шаблонами Google.

Набір даних і таблицю BigQuery можна створити за допомогою командного рядка Cloud Shell або через Cloud Console. Виберіть один із цих способів і застосовуйте його під час виконання практичної роботи. Щоб попрактикуватися з обома способами, виконайте практичну роботу двічі.

Завдання

  • Створіть набір даних і таблицю BigQuery
  • Створіть сегмент Cloud Storage
  • Створіть конвеєр потокового передавання даних за допомогою шаблона Dataflow Pub/Sub to BigQuery

Налаштування

Перш ніж натиснути кнопку Start Lab (Почати практичну роботу)

Ознайомтеся з наведеними нижче вказівками. На виконання практичного заняття відводиться обмежений час, і його не можна призупинити. Щойно ви натиснете Почати заняття, з’явиться таймер, який показуватиме, скільки часу для роботи з ресурсами Google Cloud у вас залишилося.

Ви зможете виконати практичне заняття в дійсному робочому хмарному середовищі (не в симуляції або демонстраційному середовищі). Для цього на час практичного заняття вам надаються тимчасові облікові дані для реєстрації і входу в Google Cloud.

Для цього практичного заняття потрібно мати:

  • стандартний вебпереглядач, наприклад Chrome (рекомендовано);
Примітка. Виконуйте практичне заняття в анонімному вікні вебпереглядача (рекомендовано). Так ви уникнете додаткової плати, що може стягуватися з вашого особистого облікового запису внаслідок його помилкового використання замість облікового запису для навчання.
  • достатню кількість часу, оскільки почавши практичне заняття, ви не зможете призупинити його.
Примітка. Для виконання цього практичного заняття використовуйте лише обліковий запис для навчання, оскільки з іншого облікового запису Google Cloud може стягуватися плата.

Як почати виконувати практичну роботу й увійти в Google Cloud Console

  1. Натисніть кнопку Start Lab (Почати практичне заняття). Якщо за практичне заняття необхідно заплатити, відкриється вікно, де ви зможете обрати спосіб оплати. Ліворуч розміщено панель "Відомості про практичне заняття" з такими компонентами:

    • кнопка "Відкрити консоль Google";
    • час до закінчення;
    • тимчасові облікові дані, які потрібно використовувати для доступу до цього практичного заняття;
    • інша інформація, необхідна для виконання цього практичного заняття.
  2. Натисніть Відкрити консоль Google або натисніть правою кнопкою миші й виберіть Відкрити анонімне вікно, якщо ви використовуєте вебпереглядач Chrome.

    Завантажаться необхідні ресурси. Потім відкриється нова вкладка зі сторінкою "Увійти".

    Порада. Упорядковуйте вкладки в окремих вікнах, розміщуючи їх поруч.

    Примітка. Якщо з’явиться вікно Виберіть обліковий запис, натисніть Вибрати інший обліковий запис.
  3. За потреби скопіюйте значення в полі Username (Ім’я користувача) нижче й вставте його у вікні Вхід.

    {{{user_0.username | "Username"}}}

    Поле "Ім’я користувача" також можна знайти на панелі "Відомості про практичне заняття".

  4. Натисніть Далі.

  5. Скопіюйте значення в полі Password (Пароль) нижче й вставте його у вікні Welcome (Привітання).

    {{{user_0.password | "Password"}}}

    Поле "Пароль" також можна знайти на панелі "Відомості про практичне заняття".

  6. Натисніть Далі.

    Важливо. Обов’язково використовуйте облікові дані, призначені для відповідного практичного заняття. Не використовуйте облікові дані Google Cloud. Примітка. Якщо ввійти у власний обліковий запис Google Cloud, може стягуватися додаткова плата.
  7. Що від вас очікується

    • Прийміть Умови використання.
    • Не додавайте способи відновлення й двохетапну перевірку (оскільки це тимчасовий обліковий запис).
    • Не реєструйте безкоштовні пробні версії.

Через кілька секунд консоль Google Cloud відкриється в новій вкладці.

Примітка. Щоб отримати доступ до продуктів і сервісів Google Cloud, натисніть меню навігації або введіть назву сервісу чи продукту в полі пошуку.

Як активувати Cloud Shell

Cloud Shell – це віртуальна машина з попередньо завантаженими інструментами для розробників. Вона містить головний каталог обсягом 5 ГБ постійної пам’яті й працює в середовищі Google Cloud. Cloud Shell надає доступ до ресурсів Google Cloud через командний рядок.

  1. Угорі консолі Google Cloud натисніть Activate Cloud Shell (Активувати Cloud Shell) .

  2. У вікнах, що відкриються, виконайте наведені нижче дії.

    • У вікні з інформацією про Cloud Shell натисніть Continue (Далі).
    • Дозвольте Cloud Shell використовувати ваші облікові дані, щоб здійснювати виклики Google Cloud API.

Щойно ви підключитеся, вас буде автентифіковано, а проєкт отримає ваш Project_ID (Ідентифікатор проєкту). Вивід міститиме рядок зі значенням Project_ID (Ідентифікатор проєкту) для цього сеансу:

Your Cloud Platform project in this session is set to {{{project_0.project_id | "PROJECT_ID"}}}

gcloud – це інструмент командного рядка для Google Cloud. Він входить у пакет Cloud Shell і підтримує функцію автозавершення клавішею TAB.

  1. (Необов’язково) Щоб вивести поточне ім’я облікового запису, введіть таку команду:
gcloud auth list
  1. Натисніть Authorize (Авторизувати).

Вивід:

ACTIVE: * ACCOUNT: {{{user_0.username | "ACCOUNT"}}} To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (Необов’язково) Щоб вивести ідентифікатор проєкту, введіть таку команду:
gcloud config list project

Вивід:

[core] project = {{{project_0.project_id | "PROJECT_ID"}}} Примітка. Щоб знайти повну документацію щодо gcloud, перегляньте посібник з інтерфейсу командного рядка gcloud у Google Cloud.

Завдання 1. Повторно ввімкніть Dataflow API

Щоб переконатися, що потрібний API підключений, перезапустіть підключення до Dataflow API.

  1. У рядку пошуку вгорі Cloud Console введіть "Dataflow API". Виберіть серед результатів Dataflow API.

  2. Натисніть Manage (Керувати).

  3. Виберіть Disable API (Вимкнути API).

Якщо з’явиться запит із пропозицією підтвердити дію, натисніть Disable (Вимкнути).

  1. Натисніть Enable (Увімкнути).

Коли API ввімкнеться, на сторінці з’явиться опція вимкнути його.

Перевірка виконаного завдання

Щоб підтвердити виконання завдання, натисніть Підтвердити виконання.

Вимкніть і ввімкніть Dataflow API.

Завдання 2. Створіть набір даних і таблицю BigQuery, а також сегмент Cloud Storage за допомогою Cloud Shell

Спочатку створіть набір даних і таблицю BigQuery.

Примітка. У цьому завданні використовується інструмент командного рядка bq. Якщо ви хочете виконати практичну роботу за допомогою Cloud Console, пропустіть цю частину й перейдіть до завдання 3.
  1. Виконайте наведену нижче команду, щоб створити набір даних під назвою taxirides:
bq mk taxirides

Вивід має виглядати приблизно так:

Dataset '' successfully created

Перевірка виконаного завдання

Щоб підтвердити виконання завдання, натисніть Підтвердити виконання. Якщо набір даних BigQuery створено правильно, з’явиться оцінка.

Створіть набір даних BigQuery (назва: taxirides).

На наступному етапі ви використаєте цей набір даних, щоб створити екземпляр таблиці BigQuery.

  1. Для цього виконайте таку команду:
bq mk \ --time_partitioning_field timestamp \ --schema ride_id:string,point_idx:integer,latitude:float,longitude:float,\ timestamp:timestamp,meter_reading:float,meter_increment:float,ride_status:string,\ passenger_count:integer -t taxirides.realtime

Вивід має виглядати приблизно так:

Table 'myprojectid:taxirides.realtime' successfully created

Перевірка виконаного завдання

Щоб підтвердити виконання завдання, натисніть Підтвердити виконання. Якщо таблицю в наборі даних BigQuery створено правильно, з’явиться оцінка.

Створіть таблицю в наборі даних BigQuery.

На перший погляд команда bq mk здається складною. Проте за допомогою документації щодо командного рядка BigQuery можна з’ясувати, з яких компонентів вона складається. Наприклад, у документації є інформація про схему:

  • це або шлях до локального файлу у форматі JSON, або список визначень стовпців, відокремлених комами, у формі [FIELD]:[DATA_TYPE], [FIELD]:[DATA_TYPE].

Зараз ми використовуємо другий варіант – список значень, відокремлених комами.

Створіть сегмент Cloud Storage за допомогою Cloud Shell

Екземпляр таблиці створено. Тепер створіть сегмент.

Як назву сегмента можна використовувати ідентифікатор проекту, щоб забезпечити глобально унікальну назву:

  • Для цього виконайте такі команди:
export BUCKET_NAME={{{project_0.project_id | "Bucket Name"}}} gsutil mb gs://$BUCKET_NAME/

Перевірка виконаного завдання

Щоб підтвердити виконання завдання, натисніть Підтвердити виконання. Якщо сегмент Cloud Storage створено правильно, з’явиться оцінка.

Створіть сегмент Cloud Storage.

Створивши сегмент, прокрутіть сторінку до розділу Run the Pipeline (Запустити конвеєр).

Завдання 3. Створіть набір даних і таблицю BigQuery, а також сегмент Cloud Storage за допомогою Google Cloud Console

Примітка. Не виконуйте завдання 3, якщо ви вже завершили завдання 2, бо тоді ви вже виконали необхідні дії в командному рядку.
  1. У меню ліворуч у розділі Big Data (Масив даних) натисніть BigQuery.

  2. Потім натисніть Done (Готово).

  3. Натисніть значок із трьома крапками поруч із назвою проекту в розділі Explorer (Провідник), а потім натисніть Create dataset (Створити набір даних).

  4. Як ідентифікатор набору даних введіть taxirides.

  5. У полі Data location (Місцезнаходження даних) виберіть us (multiple regions in United States).

  6. У решті полів залиште значення за умовчанням і натисніть CREATE DATASET (СТВОРИТИ НАБІР ДАНИХ).

Перевірка виконаного завдання

Щоб підтвердити виконання завдання, натисніть Підтвердити виконання. Якщо набір даних BigQuery створено правильно, з’явиться оцінка.

Створіть набір даних BigQuery (назва: taxirides).
  1. Набір даних taxirides з’явиться на консолі ліворуч під ідентифікатором вашого проекту.

  2. Натисніть значок із трьома крапками поруч із набором даних taxirides і виберіть опцію Open (Відкрити).

  3. Потім праворуч на консолі виберіть CREATE TABLE (СТВОРИТИ ТАБЛИЦЮ).

  4. У вводі Destination (Цільовий ресурс) > Table Name (Назва таблиці) укажіть realtime.

  5. У розділі Schema (Схема) натисніть перемикач Edit as text (Редагувати як текст) і вставте наведений нижче код.

ride_id:string,point_idx:integer,latitude:float,longitude:float,timestamp:timestamp, meter_reading:float,meter_increment:float,ride_status:string,passenger_count:integer

Консоль має виглядати десь так:

  1. Тепер натисніть Create table (Створити таблицю).

Перевірка виконаного завдання

Щоб підтвердити виконання завдання, натисніть Підтвердити виконання. Якщо таблицю в наборі даних BigQuery створено правильно, з’явиться оцінка.

Створіть таблицю в наборі даних BigQuery.

Створіть сегмент Cloud Storage за допомогою Cloud Console

  1. Поверніться в Cloud Console і виберіть Cloud Storage > Buckets (Сегменти) > Create bucket (Створити сегмент).

  2. Як назву сегмента можна використовувати ідентифікатор проекту, щоб забезпечити глобально унікальну назву:

  3. Залиште решту значень за умовчанням і натисніть Create (Створити).

Перевірка виконаного завдання

Щоб підтвердити виконання завдання, натисніть Підтвердити виконання. Якщо сегмент Cloud Storage створено правильно, з’явиться оцінка.

Створіть сегмент Cloud Storage.

Завдання 4. Запустіть конвеєр

Розгорніть шаблон Dataflow:

gcloud dataflow jobs run iotflow \ --gcs-location gs://dataflow-templates-{{{project_0.default_region | "Region"}}}/latest/PubSub_to_BigQuery \ --region {{{project_0.default_region | "Region"}}} \ --worker-machine-type e2-medium \ --staging-location gs://{{{project_0.project_id | "Bucket Name"}}}/temp \ --parameters inputTopic=projects/pubsub-public-data/topics/taxirides-realtime,outputTableSpec={{{project_0.project_id | "Table Name"}}}:taxirides.realtime

Щоб переглянути завдання, у меню навігації Google Cloud Console натисніть Dataflow > Jobs (Завдання).

Щоб дізнатися більше, перегляньте цей документ.

Примітка. Можливо, вам доведеться трохи зачекати, доки завершиться відстеження активності.

Перевірка виконаного завдання

Щоб підтвердити виконання завдання, натисніть Підтвердити виконання. Якщо конвеєр Dataflow запущено правильно, з’явиться оцінка.

Запустіть конвеєр.

Ви побачите, як складаються ваші ресурси, щоб бути готовими до використання.

Тепер перегляньте дані, записані в BigQuery. Для цього в меню навігації натисніть BigQuery.

  • Коли відкриється інтерфейс BigQuery, ви побачите набір даних taxirides під назвою вашого проекту. Унизу з’явиться таблиця realtime.
Примітка. Можливо, знадобиться зачекати кілька хвилин, доки дані заповнять таблицю BigQuery.

Завдання 5. Надішліть запит

Ви можете надсилати запити за допомогою стандартної мови SQL.

  1. У BigQuery в полі Editor (Редактор) додайте наведений нижче фрагмент коду, щоб надіслати запит щодо даних у проекті:
SELECT * FROM `{{{project_0.project_id | "Bucket Name"}}}.taxirides.realtime` LIMIT 1000
  1. Тепер натисніть RUN (ВИКОНАТИ).

Якщо виникнуть проблеми або помилки, виконайте запит іще раз (конвеєр запуститься протягом хвилини).

  1. Якщо запит виконано успішно, на панелі Query Results (Результати запиту) з’явиться вивід, як показано нижче.

Чудово! Ви отримали дані про 1000 поїздок на таксі з теми Pub/Sub і перемістили їх у таблицю BigQuery. Ви переконалися, що шаблони – це практичний і простий спосіб виконувати завдання Dataflow. Ознайомтеся з кількома іншими шаблонами Google у документації щодо Dataflow (див. посібник Початок роботи із шаблонами Google).

Завдання 6. Перевірте свої знання

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

Вітаємо!

Ви створили конвеєр потокового передавання даних за допомогою шаблона Dataflow Pub/Sub to BigQuery, що читає повідомлення у форматі JSON із теми Pub/Sub і записує їх у таблицю BigQuery.

Наступні кроки/Докладніше

Ця робота також входить до низки практичних робіт під назвою Qwik Starts. Вони призначені для ознайомлення з функціями Google Cloud. Такі практичні роботи можна знайти в каталозі Google Cloud Skills Boost за запитом "Qwik Starts".

Навчання й сертифікація Google Cloud

…допомагають ефективно використовувати технології Google Cloud. Наші курси передбачають опанування технічних навичок, а також ознайомлення з рекомендаціями, що допоможуть вам швидко зорієнтуватися й вивчити матеріал. Ми пропонуємо курси різних рівнів – від базового до високого. Ви можете вибрати формат навчання (за запитом, онлайн або офлайн) відповідно до власного розкладу. Пройшовши сертифікацію, ви перевірите й підтвердите свої навички та досвід роботи з технологіями Google Cloud.

Посібник востаннє оновлено 4 лютого 2024 року

Практичну роботу востаннє протестовано 10 листопада 2023 року

© Google LLC 2025. Усі права захищено. Назва та логотип Google є торговельними марками Google LLC. Усі інші назви компаній і продуктів можуть бути торговельними марками відповідних компаній, з якими вони пов’язані.

Before you begin

  1. Labs create a Google Cloud project and resources for a fixed time
  2. Labs have a time limit and no pause feature. If you end the lab, you'll have to restart from the beginning.
  3. On the top left of your screen, click Start lab to begin

This content is not currently available

We will notify you via email when it becomes available

Great!

We will contact you via email if it becomes available

One lab at a time

Confirm to end all existing labs and start this one

Use private browsing to run the lab

Use an Incognito or private browser window to run this lab. This prevents any conflicts between your personal account and the Student account, which may cause extra charges incurred to your personal account.