云数据融合甲骨文源预览错误



我有一个问题需要澄清,以及使用云数据融合的 2 个错误: 背景:创建一个管道,以使用云数据融合将数据从 Oracle 中的单个表(版本 11.2.0.4,本地服务器(移动到 BigQuery。 我已经从即时客户端 11.2.0.4.0 下载了 Oracle JDBC 驱动程序,并使用 ojdbc6.jar 文件作为以下部署的 oracle 驱动程序。 如果我使用较新的,则会出现日期错误。

清晰度:似乎有 3 个地方可以加载 OJDBC 驱动程序:(
a( 牧马人数据库列表(例如:sbl(,单击编辑,它会要求我安装 Oracle 驱动程序或 Oracle 瘦驱动程序。 我需要输入 Oracle 类(我复制了示例 oracle.jdbc.driver.OracleDriver(。 如果我不这样做并选择瘦客户端,当我尝试查看 Wrangler->Database 下的数据库对象时会出现错误。 如果我只这样做而不这样做,那么在验证管道中的源时,我会收到一条消息,指出尚未部署 oracle 插件。

(b( 单击"HUB"并选择"驱动程序我看到 Oracle 12c JDBC Drver v12c 的选项"。 如果我选择 Oracle 选项,则会收到下载 Oracle 12c JDBC 驱动程序的提示,然后通过将驱动程序拖到窗口中来部署该驱动程序(此时没有要配置的选项(。

(c( 单击"HUB"和"插件",我看到 Oracle 导出操作插件 v 1.7.0 或 Oracle 插件 v 1.2.0 的选项。 如果我单击Oracle插件选项,我会得到一个"部署"选项。

为了澄清,我需要使用这些选项或组合中的哪一个来部署适当的驱动程序和插件以访问 oracle 数据库作为源?

错误 1:如果我使用上面的 (c( 选项,我将在源代码中看到一个 Oracle 选项。 我选择它并输入我的驱动程序名称(与我上面给出的名称相同(例如:ojdbc6(、主机、连接凭据和所有相关信息。 当我选择"验证"按钮时,出现以下错误:找不到名为"Oracle"的"批处理源"类型的插件。 确保已经部署了类型为"批处理源"的插件"Oracle"。 不确定上述用于部署的选项,我已经尝试了不同的组合但没有成功。 更愿意使用甲骨文源作为选项。

错误 2:我选择"数据库"作为源(不是 Oracle(。 我输入插件名称(与我在上面的选项 (a( 中使用的名称匹配。 我输入我的连接字符串:jdbc:oracle:thin@1.1.20.1:1521:sbl 和所有连接信息。 我验证并传递并填充输出架构(使用正确的列和数据类型(。 我选择 BigQuery 作为接收器,然后连接源和接收器之间的箭头。 接收器将更新以相应地包含源列和目标列。 我验证并它通过了。 然后我"预览"和"运行"。 大约 31 秒后,我收到以下警告和错误消息:

Warning:  In spark 1.0 and later spark.local.dir will be overridden by the value set by the cluster manager (via spark_local_dirs in mesos/standalone and local_dirs in yarn)
org.apache.spark.SparkConf#66-spark-submitter-phase-1-e4706b9a-3c7e-11ea-bb5c-36e9df22dd3d
Error:  
org.apache.spark.executor.Executor#91-Executor task launch worker for task 0    E
java.lang.NullPointerException: null
at org.apache.hadoop.mapreduce.lib.db.DataDrivenDBInputFormat.createDBRecordReader(DataDrivenDBInputFormat.java:281) ~[hadoop-mapreduce-client-core-2.9.2.jar:na]
at io.cdap.plugin.db.batch.source.DataDrivenETLDBInputFormat.createDBRecordReader(DataDrivenETLDBInputFormat.java:124) ~[1579632628793-0/:na]
at org.apache.hadoop.mapreduce.lib.db.DBInputFormat.createRecordReader(DBInputFormat.java:245) ~[hadoop-mapreduce-client-core-2.9.2.jar:na]
at io.cdap.cdap.etl.batch.preview.LimitingInputFormat.createRecordReader(LimitingInputFormat.java:51) ~[cdap-etl-core-6.1.0.jar:na]
at org.apache.spark.rdd.NewHadoopRDD$$anon$1.liftedTree1$1(NewHadoopRDD.scala:187) ~[spark-core_2.11-2.3.3.jar:2.3.3]
at org.apache.spark.rdd.NewHadoopRDD$$anon$1.<init>(NewHadoopRDD.scala:186) ~[spark-core_2.11-2.3.3.jar:2.3.3]
at org.apache.spark.rdd.NewHadoopRDD.compute(NewHadoopRDD.scala:141) ~[spark-core_2.11-2.3.3.jar:2.3.3]
at org.apache.spark.rdd.NewHadoopRDD.compute(NewHadoopRDD.scala:70) ~[spark-core_2.11-2.3.3.jar:2.3.3]
at io.cdap.cdap.app.runtime.spark.data.DatasetRDD.compute(DatasetRDD.scala:58) ~[io.cdap.cdap.cdap-spark-core2_2.11-6.1.0.jar:na]
at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:324) ~[spark-core_2.11-2.3.3.jar:2.3.3]
at org.apache.spark.rdd.RDD.iterator(RDD.scala:288) ~[spark-core_2.11-2.3.3.jar:2.3.3]
at org.apache.spark.rdd.UnionRDD.compute(UnionRDD.scala:105) ~[spark-core_2.11-2.3.3.jar:2.3.3]
at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:324) ~[spark-core_2.11-2.3.3.jar:2.3.3]
at org.apache.spark.rdd.RDD.iterator(RDD.scala:288) ~[spark-core_2.11-2.3.3.jar:2.3.3]
at org.apache.spark.rdd.MapPartitionsRDD.compute(MapPartitionsRDD.scala:49) ~[spark-core_2.11-2.3.3.jar:2.3.3]
at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:324) ~[spark-core_2.11-2.3.3.jar:2.3.3]
at org.apache.spark.rdd.RDD.iterator(RDD.scala:288) ~[spark-core_2.11-2.3.3.jar:2.3.3]
at org.apache.spark.rdd.MapPartitionsRDD.compute(MapPartitionsRDD.scala:49) ~[spark-core_2.11-2.3.3.jar:2.3.3]
at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:324) ~[spark-core_2.11-2.3.3.jar:2.3.3]
at org.apache.spark.rdd.RDD.iterator(RDD.scala:288) ~[spark-core_2.11-2.3.3.jar:2.3.3]
at org.apache.spark.rdd.MapPartitionsRDD.compute(MapPartitionsRDD.scala:49) ~[spark-core_2.11-2.3.3.jar:2.3.3]
at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:324) ~[spark-core_2.11-2.3.3.jar:2.3.3]
at org.apache.spark.rdd.RDD.iterator(RDD.scala:288) ~[spark-core_2.11-2.3.3.jar:2.3.3]
at org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:87) ~[spark-core_2.11-2.3.3.jar:2.3.3]
at org.apache.spark.scheduler.Task.run(Task.scala:109) ~[spark-core_2.11-2.3.3.jar:2.3.3]
at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:345) ~[spark-core_2.11-2.3.3.jar:2.3.3]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_232]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_232]
at java.lang.Thread.run(Thread.java:748) [na:1.8.0_232]

抱歉回复晚了。这是当前云数据融合版本 (https://issues.cask.co/browse/CDAP-16453( 中的已知问题。使用数据库插件预览在当前版本中不起作用。因此,请在已部署的管道上尝试一下。

此问题已在即将发布的版本中修复。

最新更新