[英]How to transfer data from Oracle 11g release 2 to Bigquery using Dataflow's jdbc to Bigquery template?
我一直在尋找數據傳輸服務來從Oracle 11g第2版數據庫中傳輸數據。 我遇到了一些經過測試的第三方解決方案,效果很好。
但! 我想使用純粹的第一方解決方案。 因此,我調查了一下,發現了Dataflow。
數據流已經有一些模板,我可以用它來傳輸數據。
我選擇了“ jdbc to bigquery”模板。
它具有一些必需的參數和可選的參數
必需:jdbc連接URL,驅動程序類名稱,源sql查詢,bigquery輸出表,jdbc驅動程序的GCS路徑,bigquery加載過程的臨時目錄,臨時位置
可選:jdbc用戶名,jdbc密碼
我在計算引擎中設置了一個VM,以托管Oracle 11g第2版DB。 我創建了一個數據庫“數據庫”,添加了一個表“ table1”和其中的一些行。
我在數據流中使用以下參數創建了一個作業:
jdbc連接URL: jdbc:oracle:thin:@VMinternalIP:1521:database
驅動程序類名稱: oracle.jdbc.driver.OracleDriver
源sql查詢: select * from database.table1
bigquery輸出表: <testproject-0122>:<testdataset>.<table1>
jdbc驅動程序的GCS路徑: gs://testbucket/jdbc/ojdbc6.jar,gs://testbucket/jdbc/ojdbc5.jar,gs://testbucket/jdbc/ons.jar,gs://testbucket/jdbc/orai18n.jar,gs://testbucket/jdbc/simplefan.jar,gs://testbucket/jdbc/ucp.jar,gs://testbucket/jdbc/xdb6.jar
bigquery加載過程的臨時目錄: gs://testbucket/temporary
臨時位置: gs://testbucket/temporary/amkortmp
jdbc用戶名: username for oracle db
用戶username for oracle db
jdbc密碼: password for oracle db
但是,這項工作失敗了,並引發了五個錯誤。
作業狀態:從jdbcIO讀取失敗,寫入bigquery失敗,成功刪除輸入
五個錯誤中的四個顯示以下錯誤:
編輯:我更新了我的網址,沒有連接錯誤,但是現在出現以下錯誤:
ava.sql.SQLSyntaxErrorException:ORA-00942:表或視圖不存在
我可以看到該表在Oracle中。 那是架構錯誤嗎?
我使用此Dataflow模板有什么錯?
我終於找到了答案。
首先,查詢對表的引用是錯誤的。
正確格式 : select * from table1
BigQuery表引用錯誤
正確格式 : project_ID:dataset_ID.table_ID
更正此問題,使其生效。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.