检查点
Run Cloud Dataprep jobs to BigQuery
/ 100
使用 Cloud Dataprep 建立資料轉換 pipeline
本實驗室是我們與合作夥伴 Alteryx 攜手開發而成。如果您在帳戶個人資料中選擇接收產品最新消息、公告和優惠資訊,您的個人資訊即有可能提供給本實驗室的贊助者 Alteryx。
GSP430
總覽
Dataprep by Alteryx 是一項智慧型資料服務,能以圖形化的介面探索、清除與準備結構化與非結構化資料,方便您進行資料分析工作。在本實驗室中,您將瞭解如何透過 Dataprep 使用者介面 (UI) 建構資料轉換 pipeline。將結果輸出至 BigQuery。
本實驗室中使用的資料集,是已載入 BigQuery 的電子商務資料集,內含數百萬筆 Google Analytics 的 Google 商品網路商店工作階段記錄。在這個實驗室中,您將探索可用的欄位與列,並備妥資料以進行分析。
學習內容
本實驗室將說明如何執行下列工作:
- 將 BigQuery 資料集連結至 Dataprep
- 使用 Dataprep 瞭解資料集品質
- 使用 Dataprep 建立資料轉換 pipeline
- 執行轉換工作並將輸出內容傳送至 BigQuery
設定和需求
建議您先參加「使用 Google Cloud 中的 Cloud Dataprep」實驗室,再進行此實驗室。
點選「Start Lab」按鈕前的須知事項
請詳閱以下操作說明。研究室活動會計時,而且中途無法暫停。點選「Start Lab」 後就會開始計時,讓您瞭解有多少時間可以使用 Google Cloud 資源。
您將在真正的雲端環境中完成實作研究室活動,而不是在模擬或示範環境。為達此目的,我們會提供新的暫時憑證,讓您用來在研究室活動期間登入及存取 Google Cloud。
如要完成這個研究室活動,請先確認:
- 您可以使用標準的網際網路瀏覽器 (Chrome 瀏覽器為佳)。
- 是時候完成研究室活動了!別忘了,活動一開始將無法暫停。
如何開始研究室及登入 Google Cloud 控制台
-
按一下「Start Lab」(開始研究室) 按鈕。如果研究室會產生費用,畫面中會出現選擇付款方式的彈出式視窗。左側的「Lab Details」窗格會顯示下列項目:
- 「Open Google Cloud console」按鈕
- 剩餘時間
- 必須在這個研究室中使用的暫時憑證
- 完成這個實驗室所需的其他資訊 (如有)
-
點選「Open Google Cloud console」;如果使用 Chrome 瀏覽器,也能按一下滑鼠右鍵,然後選取「在無痕式視窗中開啟連結」。
接著,實驗室會啟動相關資源並開啟另一個分頁,當中顯示「登入」頁面。
提示:您可以在不同的視窗中並排開啟分頁。
注意:如果頁面中顯示「選擇帳戶」對話方塊,請點選「使用其他帳戶」。 -
如有必要,請將下方的 Username 貼到「登入」對話方塊。
{{{user_0.username | "Username"}}} 您也可以在「Lab Details」窗格找到 Username。
-
點選「下一步」。
-
複製下方的 Password,並貼到「歡迎使用」對話方塊。
{{{user_0.password | "Password"}}} 您也可以在「Lab Details」窗格找到 Password。
-
點選「下一步」。
重要事項:請務必使用實驗室提供的憑證,而非自己的 Google Cloud 帳戶憑證。 注意:如果使用自己的 Google Cloud 帳戶來進行這個實驗室,可能會產生額外費用。 -
按過後續的所有頁面:
- 接受條款及細則。
- 由於這是臨時帳戶,請勿新增救援選項或雙重驗證機制。
- 請勿申請免費試用。
Google Cloud 控制台稍後會在這個分頁開啟。
工作 1:在 Google Cloud 控制台中開啟 Dataprep
- 開啟「Cloud Shell」 並執行下列指令:
畫面上應會顯示訊息,表示您已建立服務身分。
-
在 Cloud 控制台中,前往「導覽選單」,然後在「Analytics」下方選取「Dataprep」。
-
開始使用 Dataprep 前,請勾選核取方塊,表示您同意《Google Dataprep 服務條款》,接著點選「接受」。
-
勾選核取方塊,然後在出現與 Alteryx 共用帳戶資訊的提示時,點選「同意並繼續」。
-
按一下「允許」,授予 Alteryx 專案的存取權。
-
選取 Qwiklabs 憑證進行登入,然後點選「允許」。
-
勾選核取方塊並點選「接受」,表示同意《Alteryx 服務條款》。
-
如果出現「使用儲存空間 bucket 的預設位置」提示訊息,請點選「繼續」。
工作 2:建立 BigQuery 資料集
雖然本實驗室的重點是 Cloud Dataprep,但您需要使用 BigQuery 做為將資料集擷取至 pipeline 的端點,以及 pipeline 完成後的輸出目的地。
-
在 Cloud 控制台中,依序選取「導覽選單」>「BigQuery」。
-
接著,畫面中會顯示「歡迎使用 Cloud 控制台中的 BigQuery」訊息方塊,當中會列出快速入門指南的連結和使用者介面更新內容。
-
點選「完成」。
-
在「Explorer」窗格中選取專案名稱:
- 在左側窗格的「Explorer」專區下方,點選專案 ID 右側的「查看動作」圖示 (),然後點選「建立資料集」。
- 在「資料集 ID」部分,輸入「
ecommerce
」。 - 其他設定均保留預設值。
-
點選「建立資料集」。資料集會顯示在左側窗格的專案下方。
-
複製下列 SQL 查詢並貼入查詢編輯器:
-
點選「執行」。這項查詢執行時,會將公開原始電子商務資料集中的子集 (一天的工作階段資料量或大約 56,000 筆記錄) 複製到名為
all_sessions_raw_dataprep
的新資料表,這份資料表已新增至電子商務資料集中,方便您在 Cloud Dataprep 中探索和清除資料。 -
請確認
ecommerce
資料集中已有新的資料表:
工作 3:將 BigQuery 資料連結至 Cloud Dataprep
在這項工作中,您要將 Cloud Dataprep 連結至 BigQuery 資料來源。請在「Cloud Dataprep」頁面進行下列步驟:
-
點選右上角的「建立流程」。
-
將「未命名的流程」重新命名,並指定以下詳細資料:
- 在「流程名稱」部分,輸入「
Ecommerce Analytics Pipeline
」 - 在「流程說明」部分,輸入「
Revenue reporting table
」
-
按一下「確定」。
-
如果出現「
What's a flow?
」彈出式視窗,請選取「不要顯示任何輔助程式」。 -
按一下資料集方塊中的「新增圖示」。
-
於「在流程中新增資料集」對話方塊中,選取「匯入資料集」。
-
在左側窗格中,點選「BigQuery」。
-
載入「電子商務」資料集後,點選該資料集。
-
點選
all_sessions_raw_dataprep
資料表左側的「建立資料集」圖示 (+ 號)。 -
按一下右下角的「匯入及新增至流程」。
資料來源會自動更新。現在可以開始進行下一個工作。
工作 4:透過使用者介面探索電子商務資料欄位
在這項工作中,您將在 Cloud Dataprep 中載入並探索資料集範例。
- 點選「方案圖示」,然後選取「編輯方案」。
Cloud Dataprep 會將資料集範例載入至轉換檢視畫面。這項程序可能需要幾秒鐘才能完成。現在您可以開始探索資料了!
請回答以下問題:
- 資料集中有多少個資料欄?
答案:32 個資料欄。
- 該範例包含多少個資料列?
答案:大約 12,000 個資料列。
-
channelGrouping
欄中最常見的值為何?
channelGrouping
欄標題下方的直方圖上,即可查看答案。
答案:參照連結網址。參照連結網站通常是指任何其他網站,當中包含您內容的連結。以下是其他網站瀏覽了電子商務網站中的產品,並與該產品連結的範例。相較於來自搜尋引擎的訪客,這是不同的獲取新客管道。
- 工作階段來源的最主要三個國家/地區為何?
答案:美國、印度和英國
- totalTransactionRevenue 下方的灰色長條代表什麼?
答案:totalTransactionRevenue
欄位中的遺漏值。這表示此範例中有許多工作階段沒有產生收益。我們稍後會篩除這些值,讓最終資料表只包含客戶交易量和相關收益內容。
- 在該資料範例中,
timeOnSite
(以秒為單位)、pageviews
及sessionQualityDim
的上限是多少?(提示:點選 圖示開啟「timeOnSite
」欄右側的選單,然後選取「資料欄詳細資料」)
如要關閉詳細資料視窗,請點選右上角的「關閉資料欄詳細資料」(X) 按鈕。接著重複執行上述步驟,即可查看 pageviews
和 sessionQualityDim
欄的詳細資料。
答案:
- 最大網站停留時間:5,561 秒 (或 92 分鐘)
- 最大網頁瀏覽量:155 頁
- 最大工作階段品質維度數量:97 個
timeOnSite
這樣的欄位在每個工作階段中只會計算一次。我們會在後續實驗室中,探討訪客和工作階段資料的獨特性。
- 查看
sessionQualityDim
的直方圖,其中資料值是否均勻分布?
答案:否,資料值未均勻分布,而是偏向較低的值 (低品質工作階段),這是正常的。
- 資料集的日期範圍為何?提示:查看日期欄位
答案:2017 年 1 月 8 日(一天的資料)
-
productSKU
欄下方可能會顯示紅色長條。如有顯示的話,這代表什麼意思?
答案:紅色長條表示不相符的值。進行資料取樣時,Cloud Dataprep 會試著自動識別每個資料欄的類型。如果 productSKU
欄沒有顯示紅色長條,表示 Cloud Dataprep 正確識別了資料欄的類型 (也就是字串類型)。若有顯示紅色長條,則表示 Cloud Dataprep 在取樣過程中發現了足夠的數值,從而誤判該資料欄類型應為整數。此外,Cloud Dataprep 也偵測到部分非整數值,因此將這些值標示為不相符。事實上,productSKU
不一定是整數 (例如,正確的值可能是「GGOEGOCD078399」)。在本例中,Cloud Dataprep 誤判了資料欄類型:該資料欄應該是字串,而不是整數。我們會在本實驗室的後續部分修正這個問題。
- 查看
v2ProductName
欄,其中熱門產品是哪些?
答案:Google Nest 產品
- 查看
v2ProductCategory
欄,其中熱門產品類別是哪些?
答案:
熱門產品類別是:
-
Google Nest
-
提袋
-
(未設定) (這表示部分工作階段並未與產品類別建立關聯)
-
True 或 False?最常見的
productVariant
是COLOR
。
答案:False。其實是 (未設定),因為大部分產品沒有子類 (80% 以上)
- 類型欄中的兩個值是什麼?
答案:PAGE
和 EVENT
使用者在瀏覽網站時,可能會有多種不同的互動類型,包括在查看「網頁」或進行特殊「事件」(例如「點選產品」) 時記錄工作階段資料及其他類型。多個命中類型可以在同一時間觸發,因此通常需要篩選命中類型以免重複計數。我們稍後會在數據分析實驗室中,詳細探討這個部分。
-
productQuantity
的上限是多少?
答案:100 個 (實際數據可能有出入)
productQuantity
表示已新增至購物車的產品數量。數字 100 表示新增了 100 個單項產品。
- 主要採用何種
currencyCode
進行交易?
答案:USD (美元)
-
itemQuantity
或itemRevenue
是否包含有效值?
答案:否,這兩個資料欄包含的都是 NULL
(或遺漏) 值。
- 有效的
transactionId
值占了多少比例?在ecommerce
資料集中這代表什麼?
- 答案:大約 4.6% 的交易 ID 具備有效值,這代表網站的平均轉換率 (有 4.6% 的訪客進行交易)。
- 有多少個
eCommerceAction_type
值,最常見的值為何?
答案:我們在範例中發現七個值。最常見的值是 0
,表示類型不明。這很合理,因為網站上大多數的網頁工作階段不會執行任何電子商務動作,就只是進行瀏覽。
- 在 結構定義中,
eCommerceAction_type = 6
代表什麼意義?
eCommerceAction
類型,並詳閱對應關係說明
答案:數字 6 對應的是「完成購買」。稍後我們會在本實驗室中擷取此對應關係,做為資料 pipeline 的一部分。
工作 5:清除資料
在這項工作中,您將刪除未使用的資料欄、減少重複項目、建立計算結果欄位,以及篩除不必要的資料列來清除資料。
轉換 productSKU 欄資料類型
- 點選 圖示開啟「productSKU」欄右側的選單,然後依序點選「變更類型」>「字串」,確認「productSKU」 資料欄類型為字串。
- 點選「方案」圖示,確認已建立資料轉換 pipeline 的第一個步驟:
刪除未使用的資料欄
如前面所說,我們會刪除 itemQuantity 和 itemRevenue 欄,因為這兩個資料欄只包含空值,在本實驗室中不具參考價值。
- 開啟選單找到「itemQuantity」欄,然後點選「刪除」。
- 重複執行上述步驟,即可刪除「itemRevenue」。
簡化資料列
您的團隊已通知您,來源資料集中可能包含重複的工作階段值。現在就透過新的簡化步驟移除這些重複值。
- 按一下工具列中的「篩選資料列」圖示,然後點選「移除重複的資料列」。
-
按一下右側面板中的「新增」。
-
查看目前已建立的方案,內容應如下所示:
篩除沒有收益的工作階段
您的團隊想請您建立一份資料表,當中列出在網站中購買至少一件商品的所有使用者工作階段。請篩除收益為空值的使用者工作階段。
- 在「totalTransactionRevenue」欄下方,點選灰色的「遺漏值」長條。「totalTransactionRevenue」欄中包含遺漏值的所有資料列,便會以紅色醒目顯示。
- 在「建議」面板的「刪除資料列」中,按一下「新增」。
這個步驟會篩選資料集,只納入有收益的交易 (也就是「totalTransactionRevenue」不是空值)。
篩選網頁瀏覽的工作階段
資料集包含各種類型的工作階段,例如「網頁」(網頁瀏覽次數) 或「事件」(「瀏覽產品類別」或「新增至購物車」等觸發事件)。為避免重複計算工作階段中的網頁瀏覽次數,請新增篩選器,只納入與命中相關的網頁瀏覽。
-
在「類型」資料欄下方的直方圖中,點選「網頁」資料列。所有類型為「網頁」的資料列便會以綠色醒目顯示。
-
在「建議」面板的「保留資料列」中,按一下「新增」。
工作 6:使資料更加豐富
在結構定義說明文件中搜尋「visitId」並詳閱說明,以判斷這是所有使用者工作階段的 ID 或僅是特定使用者專屬的 ID。
-
visitId
:這個工作階段的 ID。這個 ID 包含在一般儲存為utmb
的 Cookie 中;是這位使用者專屬的 ID。如想查詢完全專屬 ID,請以 fullVisitorId 加上 visitId 的方式查詢。
我們可以看到,visitId
並非所有使用者的專屬 ID。因此,我們必須建立專屬 ID。
建立專屬工作階段 ID 的新資料欄
如您所見,資料集中沒有不重複的訪客工作階段的單一資料欄。串連「fullVisitorId」和「visitId」欄位,以建立每個工作階段的專屬 ID。
- 點選工具列中的「合併資料欄」圖示。
-
在「資料欄」部分,選取「
fullVisitorId
」和「visitId
」。 -
在「分隔符」部分,輸入單一連字號字元:「
-
」。 -
在「新資料欄名稱」部分,輸入「
unique_session_id
」。
- 按一下「新增」。
unique_session_id
現在是 fullVisitorId
和 visitId
的組合。我們會在後續實驗室中,探索這個資料集內的每個資料列是在專屬工作階段層級(每個使用者工作階段一個資料列),還是在其他更精細的層級。
建立電子商務動作類型的案例說明
如前文所述,eCommerceAction_type
欄中的值是整數,對應該工作階段中執行的實際電子商務動作。例如 3 =「新增至購物車」或 5 =「結帳」。使用者不會立即察覺這項對應,因此我們建立計算結果欄位並帶入這些值的名稱。
- 按一下工具列中的「Conditions」,然後點選「單一資料欄的案例」。
-
在「要評估的資料欄」部分,指定「
eCommerceAction_type
」。 -
點選「案例 (1)」旁的「新增」8 次,總共增加 9 個案例。
- 在各個「案例」部分,指定下列對應值 (包括單引號字元):
比較 |
新值 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-
在「新資料欄名稱」部分,輸入「
eCommerceAction_label
」。其他欄位則保留預設值。 -
按一下「新增」。
調整 totalTransactionRevenue 欄中的值
如結構定義中所述,「totalTransactionRevenue」欄包含的值是傳送至 Analytics 的值乘以 10^6 (例如 2.40 將會以 2400000 表示)。將該資料欄的內容除以 10^6,就能取得原始值。
- 點選 圖示開啟「totalTransactionRevenue」欄右側的選單,然後依序選取「計算」>「自訂公式」。
- 在「公式」部分,輸入:
DIVIDE(totalTransactionRevenue,1000000)
,然後在「新資料欄名稱」部分,輸入:totalTransactionRevenue1
。請注意轉換的預覽畫面:
- 按一下「新增」。
totalTransactionRevenue1
欄下方可能會顯示紅色長條。點選 圖示開啟「totalTransactionRevenue1
」欄右側的選單,然後點選「變更類型」>「十進位」。- 查看方案中的完整步驟清單:
- 您現在可以點選「執行」。
工作 7:在 BigQuery 中執行 Cloud Dataprep 工作
-
在「執行工作」頁面,選取「Dataflow + BigQuery」做為「執行環境」。
-
在「發布動作」下方,點選「Create-CSV」右側的「編輯」。
-
在以下頁面的左側選單中,選取「BigQuery」。
-
選取「電子商務」資料集。
-
在右側面板中,點選「建立新資料表」。
-
將資料表命名為「revenue_reporting」。
-
選取「每次執行時捨棄資料表」。
-
按一下「更新」。
-
點選「執行」。
完成 Cloud Dataprep 工作後,請重新整理 BigQuery 頁面,並確認輸出內容資料表「revenue_reporting」已存在。
點選「Check my progress」確認目標已達成。
恭喜!
您已成功探索電子商務資料集,並使用 Cloud Dataprep 建立資料轉換 pipeline。
後續步驟/瞭解詳情
- 請參閱 Google Cloud Marketplace 的 Alteryx。
- 您有 Google Analytics 帳戶,並且想在 BigQuery 中查詢自己的資料集嗎?請按照匯出指南的說明操作。
- 參考下列實驗室:
Google Cloud 教育訓練與認證
協助您瞭解如何充分運用 Google Cloud 的技術。我們的課程會介紹專業技能和最佳做法,讓您可以快速掌握要領並持續進修。我們提供從基本到進階等級的訓練課程,並有隨選、線上和虛擬課程等選項,方便您抽空參加。認證可協助您驗證及證明自己在 Google Cloud 技術方面的技能和專業知識。
使用手冊上次更新日期:2024 年 2 月 11 日
實驗室上次測試日期:2023 年 9 月 20 日
Copyright 2024 Google LLC 保留所有權利。Google 和 Google 標誌是 Google LLC 的商標,其他公司和產品名稱則有可能是其關聯公司的商標。