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 入门级
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

GSP192

Google Cloud 自修研究室標誌

總覽

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

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

設定

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

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

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

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

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

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

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

    • 「Open Google Console」(開啟 Google 控制台) 按鈕
    • 剩餘時間
    • 必須在這個研究室中使用的暫時憑證
    • 完成這個研究室所需的其他資訊 (如有)
  2. 按一下「Open Google Console」(開啟 Google 控制台)。接著,研究室會啟動相關資源並開啟另一個分頁,當中會顯示「Sign in」(登入) 頁面。

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

    注意事項:如果頁面中顯示了「Choose an account」(選擇帳戶) 對話方塊,請按一下「Use Another Account」(使用其他帳戶)
  3. 如有必要,請複製「Lab Details」(研究室詳細資料) 面板中的使用者名稱,然後貼到「Sign in」(登入) 對話方塊。按一下「Next」(下一步)

  4. 複製「Lab Details」(研究室詳細資料) 面板中的密碼,然後貼到「Welcome」(歡迎使用) 對話方塊。按一下「Next」(下一步)

    重要注意事項:請務必使用左側面板中的憑證,而非 Google Cloud 技能重點加強的憑證。 注意事項:如果使用自己的 Google Cloud 帳戶來進行這個研究室,可能會產生額外費用。
  5. 按過後續的所有頁面:

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

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 總覽指南)。

確定已成功重新啟用 Dataflow API

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

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

  2. 點選「管理」

  3. 點選「停用 API」

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

  1. 點選「啟用」。

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

測試已完成的工作

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

停用並重新啟用 Dataflow API。

工作 1:使用 Cloud Shell 建立 Cloud BigQuery 資料集和資料表

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

注意:這部分使用的是 bq 指令列工具。如果您想使用 Cloud 控制台進行操作,請跳至底下相應的區段。
  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 Storage 值區。

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

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

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

測試已完成的工作

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

建立 Cloud Storage 值區。

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

工作 2:使用 Cloud 主控台建立 Cloud BigQuery 資料集和資料表

注意:進行這部分的操作前,請務必先完成指令列設定!
  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 Storage 值區。

  1. 返回 Cloud 主控台,依序前往「Cloud Storage」>「值區」>「建立值區」

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

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

測試已完成的工作

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

建立 Cloud Storage 值區。

工作 3:執行管道

使用下列指令部署 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 資料表,請稍候片刻。

工作 4:提交查詢

您可以使用標準 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 範本!

工作 5:隨堂測驗

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

恭喜!

完成任務

這個自修研究室是「基本概念:資料、機器學習和 AI」任務的一部分。任務是一系列相關聯的研究室,這些研究室構成一個完整的學習路徑。完成這項任務後即可獲得徽章,以表彰您的成就。您可以公開展示徽章,並在線上履歷或社群媒體帳戶中加入徽章連結。歡迎報名參加這項任務或任何包含本研究室的任務,立即取得完成學分。請參閱「Google Cloud 技能重點加強目錄」來查看所有可參加的任務。

後續步驟/瞭解詳情

本研究室是一系列稱為 Qwik Start 的研究室之一,這些研究室旨在讓您簡單瞭解 Google Cloud 提供的眾多功能。在 Google Cloud Skills Boost 目錄中搜尋「Qwik Start」,即可找到要進行的下一個研究室!

Google Cloud 教育訓練與認證

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

使用手冊上次更新日期:2023 年 11 月 10 日

研究室上次測試日期:2023 年 11 月 10 日

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