簡體   English   中英

使用數據流將數據從 MySQL 加載到 BigQuery

[英]Load data from MySQL to BigQuery using Dataflow

我想使用 Cloud Dataflow 將數據從 MySQL 加載到 BigQuery。 任何人都可以分享有關使用 Cloud Dataflow 和 Python 語言將數據從 MySQL 加載到 BigQuery 的文章或工作經驗嗎?

謝謝

您可以使用apache_beam.io.jdbc從 MySQL 數據庫讀取數據,並使用BigQuery I/O在 BigQuery 上寫入數據。

需要 Beam 知識,所以我建議先看一下Apache Beam Programming Guide

如果您正在尋找預建的東西,我們有JDBC 到 BigQuery Google 提供的模板,它是開源的( 此處),但它是用 Java 編寫的。

如果您只想將數據從MySQL復制到BigQuery ,您可以先將MySql數據導出到Cloud Storage ,然后將此文件加載到BigQuery表。

我認為在這種情況下不需要使用Dataflow ,因為您沒有復雜的轉換和業務邏輯。 它只對應一個副本。

通過sql查詢和gcloud cli 將MySQL數據導出Cloud Storage

gcloud sql export csv INSTANCE_NAME gs://BUCKET_NAME/FILE_NAME \
--database=DATABASE_NAME \
--offload \
--query=SELECT_QUERY \
--quote="22" \
--escape="5C" \
--fields-terminated-by="2C" \
--lines-terminated-by="0A"

通過gcloud cli 和bqcsv文件加載BigQuery表:

bq load \
  --source_format=CSV \
  mydataset.mytable \
  gs://mybucket/mydata.csv \
  ./myschema.json

./myschema.jsonBigQuery表架構。

暫無
暫無

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

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