Before you begin
- Labs create a Google Cloud project and resources for a fixed time
- Labs have a time limit and no pause feature. If you end the lab, you'll have to restart from the beginning.
- On the top left of your screen, click Start lab to begin
Run a query (dataset: samples, table: shakespeare, substring: raisin)
/ 10
Run a query (dataset: samples, table: shakespeare, substring: huzzah)
/ 10
Create a new dataset (name: babynames)
/ 20
Load the data into a new table
/ 20
Run queries against your dataset table
/ 20
Remove the babynames dataset
/ 20
如果沒有合適的硬體及基礎架構,儲存與查詢龐大的資料集,可能既耗時又昂貴。BigQuery 是具備高擴充性的無伺服器 cloud data warehouse,能夠利用 Google 基礎架構的強大處理能力,以超高效率執行 SQL 查詢,從而解決上述問題。只要將您的資料移至 BigQuery,我們就能為您處理繁雜的工作。您可以根據業務需求控管對專案與資料的存取權,例如授予他人檢視或查詢資料的權限。
您可以利用控制台、網頁使用者介面或指令列工具存取 BigQuery,也能透過 Java、.NET、Python 等多種用戶端程式庫使用。另外,您也可以透過各種供應商解決方案使用 BigQuery。
在本實作實驗室中,您將瞭解如何使用 BigQuery 專用的 Python 指令列工具 bq 查詢公開資料表,以及將樣本資料載入 BigQuery。
請詳閱以下操作說明。實驗室活動會計時,且中途無法暫停。點選「Start Lab」後就會開始計時,顯示可使用 Google Cloud 資源的時間。
您將在真正的雲端環境完成實作實驗室活動,而不是模擬或示範環境。為此,我們會提供新的暫時憑證,供您在實驗室活動期間登入及存取 Google Cloud。
為了順利完成這個實驗室,請先確認:
點選「Start Lab」按鈕。如果實驗室會產生費用,畫面上會出現選擇付款方式的對話方塊。左側的「Lab Details」窗格會顯示下列項目:
點選「Open Google Cloud console」;如果使用 Chrome 瀏覽器,也能按一下滑鼠右鍵,選取「在無痕視窗中開啟連結」。
接著,實驗室會啟動相關資源,並開啟另一個分頁,顯示「登入」頁面。
提示:您可以在不同的視窗中並排開啟分頁。
如有必要,請將下方的 Username 貼到「登入」對話方塊。
您也可以在「Lab Details」窗格找到 Username。
點選「下一步」。
複製下方的 Password,並貼到「歡迎使用」對話方塊。
您也可以在「Lab Details」窗格找到 Password。
點選「下一步」。
按過後續的所有頁面:
Google Cloud 控制台稍後會在這個分頁開啟。
Cloud Shell 是搭載多項開發工具的虛擬機器,提供永久的 5 GB 主目錄,而且在 Google Cloud 中運作。Cloud Shell 提供指令列存取權,方便您使用 Google Cloud 資源。
點按 Google Cloud 控制台頂端的「啟用 Cloud Shell」圖示 。
系統顯示視窗時,請按照下列步驟操作:
連線建立完成即代表已通過驗證,而且專案已設為您的 Project_ID:
gcloud 是 Google Cloud 的指令列工具,已預先安裝於 Cloud Shell,並支援 Tab 鍵自動完成功能。
輸出內容:
輸出內容:
gcloud 的完整說明,請前往 Google Cloud 參閱 gcloud CLI 總覽指南。
BigQuery 提供了一些範例資料表供您執行查詢。在本實驗室中,您將針對包含每部戲劇全文內容的 shakespeare 資料表執行查詢。
請執行下列指令,查看樣本資料集中 Shakespeare 資料表的結構定義:
此指令的涵義說明如下:
bq 用於叫用 BigQuery 指令列工具show 是要執行的操作project:public dataset.table 名稱輸出內容:
在 help 指令後方加入其他指令的名稱,即可獲得該特定指令的資訊。
bq help 的呼叫可擷取關於 query 指令的資訊:bq 所用指令的完整清單,只需執行 bq help 即可。現在請執行查詢,查看子字串「raisin」在莎士比亞的作品中出現幾次。
bq query "[SQL_STATEMENT]" 指令:以 \ 符號逸出任何位於 [SQL_STATEMENT] 內的引號,或
使用其他的引號類型,而不要使用括起來的符號 (" 和 ')。
在這個指令中:
--use_legacy_sql=false 表示將標準 SQL 設為預設查詢語法。輸出內容:
從資料表可看出,雖然單單 raisin 這個字並未出現,但在莎士比亞的作品中,仍有許多單詞依序用到這幾個字母。
點選「Check my progress」確認工作已完成。如果已成功對公開資料集執行查詢,您會看見評估分數。
如果莎士比亞的作品沒有您搜尋的文字,就不會傳回任何結果。
點選「Check my progress」確認工作已完成。如果已成功對公開資料集執行查詢,您會看見評估分數。
現在要建立您自己的資料表。每份資料表都儲存在資料集內。「資料集」是由一系列資料表和檢視表等資源組成的。
bq ls 指令,列出專案中現有的所有資料集:系統會將您導回指令列,因為專案中還沒有任何資料集。
bq ls 和 bigquery-public-data 專案 ID,列出該特定專案中的資料集,並在後面加上英文冒號 (:):輸出內容:
現在來建立資料集。資料集名稱不得超過 1,024 個字元,可以包含 A-Z、a-z、0-9 和底線,但不能由數字或底線做為開頭,也不可以包含空格。
bq mk 指令在專案中建立名稱為 babynames 的新資料集:輸出內容範例:
點選「Check my progress」確認工作已完成。如果已成功建立名為 babynames 的 BigQuery 資料集,您會看見評估分數。
bq ls,確認資料集現已顯示為專案的一部分:輸出內容範例:
您需先在專案中新增資料集,才能建立資料表。您將使用的自訂資料檔約有 7 MB 資料,內容是美國社會安全局彙整的熱門新生兒名字。
您可以查看加到專案中檔案的名稱。
使用 bq load 指令,只需一個步驟就能建立或更新資料表並載入資料。
您將使用 bq load 指令,在剛才建立的 babynames 資料集內將來源檔案載入至名為 names2010 的新資料表。根據預設,系統會同步執行這個作業,而且只需幾秒鐘的時間即可完成。
您將執行的 bq load 引數為:
輸出內容範例:
點選「Check my progress」確認工作已完成。如果已成功在資料表中載入資料,您會看見評估分數。
bq ls 和 babynames,確認資料表現已顯示在資料集中:輸出內容:
bq show 和 dataset.table,查看結構定義:輸出內容:
-E 標記明確要求 BigQuery 將您的資料視為 Latin-1。如要進一步瞭解字元編碼,請參閱資料載入簡介指南。
現在可以查詢資料,並傳回一些有趣結果了!
輸出內容:
輸出內容:
點選「Check my progress」確認工作已完成。如果已成功對自訂資料集執行查詢,您會看見評估分數。
下列選擇題可以加深您對本實驗室概念的理解,請盡您所能回答。
bq rm 指令移除帶有 -r 標記的 babynames 資料集,刪除該資料集中的所有資料表:Y 確認刪除指令。點選「Check my progress」確認工作已完成。如果已成功移除 babynames 資料集,您會看見評估分數。
現在,您可以使用指令列查詢公開資料表,將樣本資料載入 BigQuery 了!
這個實驗室屬於 Qwik Start 實驗室系列,此系列旨在帶您一窺 Google Cloud 的眾多功能。歡迎在實驗室目錄搜尋「Qwik Start」,看看接下來要參加哪個實驗室!
協助您瞭解如何充分運用 Google Cloud 的技術。我們的課程會介紹專業技能和最佳做法,讓您可以快速掌握要領並持續進修。我們提供從基本到進階等級的訓練課程,並有隨選、線上和虛擬課程等選項,方便您抽空參加。認證可協助您驗證及證明自己在 Google Cloud 技術方面的技能和專業知識。
使用手冊上次更新日期:2025 年 5 月 2 日
實驗室上次測試日期:2025 年 5 月 2 日
Copyright 2026 Google LLC 保留所有權利。Google 和 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
One lab at a time
Confirm to end all existing labs and start this one