arrow_back

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

Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

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!
done
Get access to over 700 hands-on labs, skill badges, and courses

GSP192

Логотип Google Cloud Self-Paced Labs

Огляд

У цій практичній роботі ви навчитеся створювати конвеєр потокового передавання даних на основі шаблонів 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 (Почати практичну роботу)

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

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

Щоб виконати цю практичну роботу, потрібно мати:

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

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

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

    • кнопка Open Google Cloud console (Відкрити Google Cloud Console);
    • час до закінчення;
    • тимчасові облікові дані, які потрібно використовувати для доступу до цієї практичної роботи;
    • інша інформація, необхідна для виконання цієї практичної роботи.
  2. Натисніть Open Google Cloud console (Відкрити Google Cloud Console) або натисніть правою кнопкою миші й виберіть Open Link in Incognito Window (Відкрити посилання в анонімному вікні), якщо ви використовуєте вебпереглядач Chrome.

    Завантажаться необхідні ресурси. Потім відкриється нова вкладка зі сторінкою Sign in (Вхід).

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

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

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

    Поле Username (Ім’я користувача) також можна знайти на панелі Lab Details (Відомості про практичну роботу).

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

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

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

    Поле Password (Пароль) також можна знайти на панелі Lab Details (Відомості про практичну роботу).

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

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

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

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

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

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

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

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

Щойно ви підключитеся, вас буде автентифіковано, а проект отримає ваш PROJECT_ID (ІДЕНТИФІКАТОР ПРОЕКТУ). Вивід міститиме рядок зі значенням PROJECT_ID (ІДЕНТИФІКАТОР ПРОЕКТУ) для цього сеансу:

Your Cloud Platform project in this session is set to YOUR_PROJECT_ID

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

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

  2. Вихідні дані матимуть такий вигляд:

Вивід:

ACTIVE: * ACCOUNT: student-01-xxxxxxxxxxxx@qwiklabs.net To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (Необов’язково) Щоб вивести ідентифікатор проекту, введіть таку команду:
gcloud config list project

Вивід:

[core] project = <project_ID>

Приклад виводу:

[core] project = qwiklabs-gcp-44776a13dea667a6 Примітка. Щоб знайти повну документацію щодо 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

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

Сторінка Create table (Створити таблицю)

  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 2024. Усі права захищено. Назва та логотип Google є торговельними марками Google LLC. Усі інші назви компаній і продуктів можуть бути торговельними марками відповідних компаній, з якими вони пов’язані.

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