arrow_back

Dataflow:Qwik Start - 範本

登录 加入
欢迎加入我们的社区,一起测试和分享您的知识!
done
学习 700 多个动手实验和课程并获得相关技能徽章

Dataflow:Qwik Start - 範本

实验 45 分钟 universal_currency_alt 1 积分 show_chart 入门级
info 此实验可能会提供 AI 工具来支持您学习。
欢迎加入我们的社区,一起测试和分享您的知识!
done
学习 700 多个动手实验和课程并获得相关技能徽章

GSP192

Google Cloud 自修研究室標誌

總覽

本實驗室將說明如何使用其中一種 Google Dataflow 範本建立串流管道。具體來說,您會透過「Pub/Sub 到 BigQuery」範本讀取來自 Pub/Sub 主題的 JSON 訊息,然後推送至 BigQuery 資料表。如需這個範本的說明文件,請參閱開始使用「Google 提供的範本」指南

建立 BigQuery 資料集和資料表時,您可以選擇使用 Cloud Shell 指令列或 Cloud 控制台。選定方法後,請於後續的實驗室活動中全程使用。如果兩種方法都想嘗試,請重新進行一次本實驗室。

學習內容

  • 建立 BigQuery 資料集與資料表
  • 建立 Cloud Storage bucket
  • 使用「Pub/Sub 到 BigQuery」Dataflow 範本建立串流管道

設定

點選「Start Lab」按鈕前的須知事項

請詳閱以下操作說明。研究室活動會計時,而且中途無法暫停。點選「Start Lab」 後就會開始計時,讓您瞭解有多少時間可以使用 Google Cloud 資源。

您將在真正的雲端環境中完成實作研究室活動,而不是在模擬或示範環境。為達此目的,我們會提供新的暫時憑證,讓您用來在研究室活動期間登入及存取 Google Cloud。

如要完成這個研究室活動,請先確認:

  • 您可以使用標準的網際網路瀏覽器 (Chrome 瀏覽器為佳)。
注意:請使用無痕模式或私密瀏覽視窗執行此研究室。這可以防止個人帳戶和學生帳戶之間的衝突,避免個人帳戶產生額外費用。
  • 是時候完成研究室活動了!別忘了,活動一開始將無法暫停。
注意:如果您擁有個人 Google Cloud 帳戶或專案,請勿用於本研究室,以免產生額外費用。

如何開始研究室及登入 Google Cloud 控制台

  1. 按一下「Start Lab」(開始研究室) 按鈕。如果研究室會產生費用,畫面中會出現選擇付款方式的彈出式視窗。左側的「Lab Details」窗格會顯示下列項目:

    • 「Open Google Cloud console」按鈕
    • 剩餘時間
    • 必須在這個研究室中使用的暫時憑證
    • 完成這個實驗室所需的其他資訊 (如有)
  2. 點選「Open Google Cloud console」;如果使用 Chrome 瀏覽器,也能按一下滑鼠右鍵,然後選取「在無痕式視窗中開啟連結」

    接著,實驗室會啟動相關資源並開啟另一個分頁,當中顯示「登入」頁面。

    提示:您可以在不同的視窗中並排開啟分頁。

    注意:如果頁面中顯示「選擇帳戶」對話方塊,請點選「使用其他帳戶」
  3. 如有必要,請將下方的 Username 貼到「登入」對話方塊。

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

    您也可以在「Lab Details」窗格找到 Username

  4. 點選「下一步」

  5. 複製下方的 Password,並貼到「歡迎使用」對話方塊。

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

    您也可以在「Lab Details」窗格找到 Password

  6. 點選「下一步」

    重要事項:請務必使用實驗室提供的憑證,而非自己的 Google Cloud 帳戶憑證。 注意:如果使用自己的 Google Cloud 帳戶來進行這個實驗室,可能會產生額外費用。
  7. 按過後續的所有頁面:

    • 接受條款及細則。
    • 由於這是臨時帳戶,請勿新增救援選項或雙重驗證機制。
    • 請勿申請免費試用。

Google Cloud 控制台稍後會在這個分頁開啟。

注意:如要查看列出 Google Cloud 產品和服務的選單,請點選左上角的「導覽選單」「導覽選單」圖示

啟動 Cloud Shell

Cloud Shell 是搭載多項開發工具的虛擬機器,提供永久的 5 GB 主目錄,而且在 Google Cloud 中運作。Cloud Shell 提供指令列存取權,方便您使用 Google Cloud 資源。

  1. 點按 Google Cloud 控制台上方的「啟用 Cloud Shell」圖示 「啟動 Cloud Shell」圖示

連線完成即代表已通過驗證,且專案已設為您的 PROJECT_ID。輸出內容中有一行宣告本工作階段 PROJECT_ID 的文字:

您在本工作階段中的 Cloud Platform 專案會設為「YOUR_PROJECT_ID」

gcloud 是 Google Cloud 的指令列工具,已預先安裝於 Cloud Shell,並支援 Tab 鍵自動完成功能。

  1. (選用) 您可以執行下列指令來列出使用中的帳戶:
gcloud auth list
  1. 點按「授權」

  2. 輸出畫面應如下所示:

輸出內容:

ACTIVE: * ACCOUNT: student-01-xxxxxxxxxxxx@qwiklabs.net To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (選用) 您可以使用下列指令來列出專案 ID:
gcloud config list project

輸出內容:

[core] project = <project_ID>

輸出內容範例:

[core] project = qwiklabs-gcp-44776a13dea667a6 附註:如需有關 gcloud 的完整說明,請前往 Google Cloud 並參閱「gcloud CLI overview guide」(gcloud CLI 總覽指南)。

工作 1:確定已成功重新啟用 Dataflow API

為確保能使用必要的 API,請重新啟動連至 Dataflow API 的連線。

  1. 在 Cloud 控制台最上方的搜尋列中,輸入「Dataflow API」。點選「Dataflow API」搜尋結果。

  2. 點選「管理」

  3. 點選「停用 API」

如果系統要求您確認操作,請點選「停用」

  1. 點選「啟用」。

API 重新啟用後,頁面上會顯示停用選項。

測試工作已完成

點選「Check my progress」,確認工作已完成。

停用並重新啟用 Dataflow API。

工作 2:使用 Cloud Shell 建立 BigQuery 資料集、BigQuery 資料表和 Cloud Storage bucket

首先來建立 BigQuery 資料集和資料表。

注意:這個工作使用的是 bq 指令列工具。如要使用 Cloud 控制台進行操作,請跳至底下的工作 3。
  1. 執行下列指令,建立名為 taxirides 的資料集:
bq mk taxirides

輸出內容大致應如下所示:

Dataset '' successfully created

測試工作已完成

點選「Check my progress」,確認工作已完成。如果已成功建立 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

測試工作已完成

點選「Check my progress」,確認工作已完成。如果已成功在 BigQuery 資料集中建立資料表,您就會看見評估分數。

在 BigQuery 資料集中建立資料表。

乍看之下,bq mk 指令可能有點複雜,不過您可以參閱 BigQuery 指令列說明文件,進一步瞭解背後的運作原理,例如,說明文件提供下列結構定義補充資訊:

  • 本機 JSON 結構定義檔路徑,或逗號分隔的資料欄定義清單,格式都是 [FIELD]:[DATA_TYPE], [FIELD]:[DATA_TYPE]

本例中我們使用的是後者,也就是逗號分隔的清單。

使用 Cloud Shell 建立 Cloud Storage bucket

將資料表例項化後,就能接著建立 bucket。

為 bucket 命名時,您可以直接使用專案 ID,確保名稱全域不重複:

  • 執行下列指令來進行這項操作:
export BUCKET_NAME={{{project_0.project_id | "Bucket Name"}}} gsutil mb gs://$BUCKET_NAME/

測試工作已完成

點選「Check my progress」,確認工作已完成。如果已成功建立 Cloud Storage bucket,您就會看見評估分數。

建立 Cloud Storage bucket。

bucket 建立完畢後,請捲動至下方的「執行管道」一節。

工作 3:使用 Google Cloud 控制台建立 BigQuery 資料集、BigQuery 資料表和 Cloud Storage bucket

注意:工作 2 與工作 3 會在指令列中執行相同工作,因此只要擇一完成即可!
  1. 在左側選單中的「大數據」區段中點選「BigQuery」

  2. 接著點選「完成」。

  3. 在「Explorer」區段底下找到專案名稱,依序點選旁邊的三點圖示和「建立資料集」

  4. 資料集 ID 請輸入 taxirides

  5. 在「資料位置」部分選取「美國 (多個美國地區)」

  6. 其他設定維持預設,然後點選「建立資料集」

測試工作已完成

點選「Check my progress」,確認工作已完成。如果已成功建立 BigQuery 資料集,您就會看見評估分數。

建立 BigQuery 資料集 (名稱:taxirides)。
  1. 接著,左側主控台的專案 ID 底下應該會顯示 taxirides 資料集。

  2. 點選 taxirides 資料集旁邊的三點圖示,然後選取「開啟」

  3. 接著選取控制台右側的「建立資料表」

  4. 在「目的地」>「資料表名稱」輸入欄位中,輸入 realtime

  5. 在「結構定義」底下將滑桿切換至「以文字形式編輯」,然後輸入下列內容:

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. 接著,點選「建立資料表」

測試工作已完成

點選「Check my progress」,確認工作已完成。如果已成功在 BigQuery 資料集中建立資料表,您就會看見評估分數。

在 BigQuery 資料集中建立資料表。

使用 Cloud 控制台建立 Cloud Storage bucket

  1. 返回 Cloud 控制台,依序前往「Cloud Storage」>「bucket」>「建立 bucket」

  2. 為 bucket 命名時,您可以直接使用專案 ID,確保名稱全域不重複:

  3. 其他設定維持預設,然後點選「建立」

測試工作已完成

點選「Check my progress」,確認工作已完成。如果已成功建立 Cloud Storage bucket,您就會看見評估分數。

建立 Cloud Storage bucket。

工作 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 控制台的「導覽選單」中,依序點選「Dataflow」>「工作」,即可找到 Dataflow 工作。

詳情請參閱說明文件

注意:系統可能需要一點時間追蹤活動進度,請稍候片刻。

測試工作已完成

點選「Check my progress」,確認工作已完成。如果已成功執行 Dataflow 管道,您就會看見評估分數。

執行管道。

請等待資源建構完畢,可供使用。

現在請點選「導覽選單」中的「BigQuery」,查看寫入到 BigQuery 的資料。

  • BigQuery 使用者介面開啟後,您會在專案名稱底下看到剛剛新增的 taxirides 資料集,再更下方則是 realtime 資料表。
注意:系統可能需要幾分鐘將資料填入 BigQuery 資料表,請稍候片刻。

工作 5:提交查詢

您可以使用標準 SQL 提交查詢。

  1. 在 BigQuery 編輯器中,新增下列指令來查詢專案中的資料:
SELECT * FROM `{{{project_0.project_id | "Bucket Name"}}}.taxirides.realtime` LIMIT 1000
  1. 接著點選「執行」

管道啟動需要一點時間,如果遇到任何問題或錯誤,可能是因為管道仍在啟動中,請重新執行查詢即可。

  1. 如果成功執行查詢,「查詢結果」面板中的輸出內容會如下所示:

查詢結果頁面

好極了!您已從 Pub/Sub 主題成功提取 1,000 筆計程車運輸資訊,並推送至 BigQuery 資料表。如您所見,透過範本執行 Dataflow 工作既實用又容易操作。記得前往 Dataflow 說明文件,其中的開始使用「Google 提供的範本」指南提供其他 Google 範本,歡迎多加利用。

工作 6:隨堂測驗

您可透過下列選擇題更清楚本實驗室的概念。盡力回答即可。

恭喜!

您已使用「Pub/Sub 到 BigQuery」Dataflow 範本建立串流管道,可讀取來自 Pub/Sub 主題的 JSON 訊息,然後推送至 BigQuery 資料表。

後續行動/瞭解詳情

這個實驗室屬於 Qwik Start 實驗室系列,這些實驗室旨在讓您簡單瞭解 Google Cloud 提供的眾多功能。在 Google Cloud Skills Boost 目錄中搜尋「Qwik Start」,找到您想進行的下一個實驗室!

Google Cloud 教育訓練與認證

協助您瞭解如何充分運用 Google Cloud 的技術。我們的課程會介紹專業技能和最佳做法,讓您可以快速掌握要領並持續進修。我們提供從基本到進階等級的訓練課程,並有隨選、線上和虛擬課程等選項,方便您抽空參加。認證可協助您驗證及證明自己在 Google Cloud 技術方面的技能和專業知識。

使用手冊上次更新日期:2024 年 2 月 4 日

實驗室上次測試日期:2023 年 11 月 10 日

Copyright 2024 Google LLC 保留所有權利。Google 和 Google 標誌是 Google LLC 的商標,其他公司和產品名稱則有可能是其關聯公司的商標。

此内容目前不可用

一旦可用,我们会通过电子邮件告知您

太好了!

一旦可用,我们会通过电子邮件告知您