Cloud Data Fusion Oracle Ошибка предварительного просмотра источника - PullRequest
2 голосов
/ 21 января 2020

У меня есть вопрос для уточнения, а также 2 ошибки с использованием облачных данных: Справочная информация: Создание конвейера для перемещения данных из одной таблицы в Oracle (версия 11.2.0.4, локальный сервер) в BigQuery с использованием облачных данных. фьюжн. Я скачал драйвер Oracle JDB C с мгновенного клиента 11.2.0.4.0 и использовал файлы ojdbc6.jar в качестве драйвера oracle для следующих развертываний. Если я использую более новый, я получаю ошибку даты.

Ясность: Похоже, что есть 3 места для загрузки драйвера OJDB C:
(a) Список баз данных Wrangler (например: sbl), нажмите «Изменить», и он будет попросите меня установить Oracle драйвер или Oracle тонкий драйвер. Мне необходимо ввести класс Oracle (который я копирую из примеров oracle .jdb c .driver.OracleDriver). Если я не сделаю это и выберу тонкий клиент, я получаю сообщение об ошибке при попытке просмотреть объекты базы данных в разделе Wrangler-> Database. Если я делаю только это, а не одно из других, то при проверке источника в конвейере я получаю сообщение о том, что плагин oracle не был развернут.

(b) Нажмите HUB и выберите драйверы, которые я вижу. опция для Oracle 12 c JDB C Drver v12 c. Если я выберу опцию Oracle, я получу приглашение загрузить драйвер Oracle 12 c JDB C, а затем развернуть этот драйвер, перетаскивая драйвер в окно (на данный момент нет параметров для настройки).

(c). Нажмите HUB и плагины, и я вижу опции для Oracle Плагин экспорта действий v 1.7.0 или Oracle Плагины v 1.2.0. Если я щелкну опцию Oracle Plugins, я получу опцию «Deploy».

Для уточнения, какую из этих опций или комбинаций мне нужно использовать для развертывания соответствующего драйвера и плагинов для доступа oracle база данных в качестве источника?

Ошибка 1: Если я использую опцию (c) сверху, я увижу опцию Oracle в источнике , Я выбираю его и ввожу имя моего драйвера (то же имя, которое я дал выше (например, ojdbc6), хост, учетные данные подключения и всю соответствующую информацию. Когда я нажимаю кнопку Validate, я получаю следующую ошибку: Плагин с именем 'Oracle' из тип 'batchsource' не найден. Убедитесь, что плагин 'Oracle' типа 'batchsource' уже развернут. Не уверен, какие из перечисленных выше вариантов использовать для развертывания, и я пробовал разные комбинации безуспешно. Предпочитал бы использовать Oracle источник в качестве опции.

Ошибка 2: Я выбираю «База данных» в качестве источника (не Oracle). Я ввожу в имя плагина (которое совпадает с Я использовал в варианте (а) сверху. Я ввожу в строку подключения: jdbc:oracle:thin@1.1.20.1: 1521: sbl и всю информацию о подключении. Я проверяю, и она передает и заполняет схему вывода (с правильными столбцами и типами данных) Я выбираю BigQuery в качестве моего Sink и затем соединяю стрелки между источником и приемником. Приемник обновляется, чтобы соответствующим образом включать столбцы источника и назначения. Я подтверждаю, и это проходит. Я тогда «Предварительный просмотр» и «Выполнить». Примерно через 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]

1 Ответ

0 голосов
/ 07 апреля 2020

Извините за поздний ответ. Это известная проблема в текущей версии Cloud Data Fusion (https://issues.cask.co/browse/CDAP-16453). Предварительный просмотр с плагином БД не будет работать в текущей версии. Поэтому, пожалуйста, попробуйте на развернутом конвейере.

Эта проблема будет исправлена ​​в следующей версии, которая скоро выйдет.

...