簡體   English   中英

Google Cloud Dataflow - 從 PubSub 到 Parquet

[英]Google Cloud Dataflow - From PubSub to Parquet

我正在嘗試使用 Google Cloud Dataflow 將 Google PubSub 消息寫入 Google Cloud Storage。 PubSub 消息采用 json 格式,我要執行的唯一操作是從 json 轉換為鑲木地板文件。

在官方文檔中,我找到了 google 提供的模板,該模板從 Pub/Sub 主題讀取數據並將 Avro 文件寫入指定的 Cloud Storage 存儲桶( https://cloud.google.com/dataflow/docs/guides/templates/provided -streaming#pubsub-to-cloud-storage-avro )。 問題是模板源碼是用Java寫的,而我更喜歡用Python SDK。

這些是我對 Dataflow 和 Beam 進行的第一次測試,網上並沒有很多資料可供參考。 任何建議、鏈接、指導、代碼將不勝感激。

為了進一步為社區做出貢獻,我將我們的討論總結為答案。

由於您是從 Dataflow 開始的,我可以指出一些有用的主題和建議:

  1. Apache Beam中的 PTransform WriteToParquet()內置方法非常有用。 它從記錄的PCollection寫入Parquet文件。 此外,為了使用它並寫入 parquet 文件,您需要按照文檔中的說明指定架構。 此外, 本文將幫助您更好地了解如何使用此方法以及如何將其寫入 Google Cloud Storage (GCS) 存儲桶。

  2. Google 提供了這段代碼,解釋了如何從 PubSub 讀取消息並將它們寫入 Google Cloud Storage。 此 QuickStart 從 PubSub 讀取消息並將來自每個 window 的消息寫入存儲桶。

  3. 由於您想從 PubSub 讀取,將消息寫入 Parquet 並將文件存儲在 GCS 存儲桶中,我建議您將以下過程作為管道的步驟:讀取消息,寫入 parquet 文件並將其存儲在地面站。

我鼓勵您閱讀上述鏈接。 然后,如果您有任何其他問題,您可以發布另一個主題以獲得更具體的幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM