[英]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.