Получение NullPointerException при попытке загрузить таблицу phoenix из spark jdbc

Я использую приведенный ниже код для загрузки таблицы Phoenix в спарк:

sparkSession.read().option("driver", driverName).jdbc(url,
            "emp.person", properties);

Здесь URL является действительным в соответствии с документом:

jdbc:phoenix:zkQuorum:2181/hbase-unsecure

И это вывод из sqlline.py:

sqlline version 1.1.8
0: jdbc:phoenix:localhost:2181> select * from emp.person;
+-------+--------------------------+------------+
| HOST  |       CREATED_DATE       | TXN_COUNT  |
+-------+--------------------------+------------+
| 1     | 2018-01-16 06:55:01.394  | 1          |
+-------+--------------------------+------------+
1 row selected (0.072 seconds)

Но с искрой я получаю ниже данное исключение:

2018-01-18 18:54:12 [pool-4-thread-1] ERROR c.i.i.t.spark2.algo.JDBCTableReader:114 - Error in JDBC operation:
java.lang.NullPointerException: null
    at org.apache.spark.sql.execution.datasources.jdbc.JDBCRDD$.resolveTable(JDBCRDD.scala:72)
    at org.apache.spark.sql.execution.datasources.jdbc.JDBCRelation.<init>(JDBCRelation.scala:113)
    at org.apache.spark.sql.execution.datasources.jdbc.JdbcRelationProvider.createRelation(JdbcRelationProvider.scala:47)
    at org.apache.spark.sql.execution.datasources.DataSource.resolveRelation(DataSource.scala:306)
    at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:178)
    at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:146)
    at org.apache.spark.sql.DataFrameReader.jdbc(DataFrameReader.scala:193)
    at com.impetus.idw.turin.spark2.service.SparkService.runJDBCQuery(SparkService.java:365)
    at com.impetus.idw.turin.spark2.algo.JDBCTableReader.execute(JDBCTableReader.java:112)
    at com.impetus.idw.turin.core.Sequence.runSequence(Sequence.java:197)
    at com.impetus.idw.turin.core.Status.runStatus(Status.java:156)
    at com.impetus.idw.turin.core.Action.runAction(Action.java:179)
    at com.impetus.idw.turin.core.Node.runNode(Node.java:359)
    at com.impetus.idw.turin.core.Node.processCurrentAction(Node.java:282)
    at com.impetus.idw.turin.core.Node.run(Node.java:305)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:748)

Пожалуйста, дайте мне знать, если у кого-нибудь есть решения для этого.

0 ответов

Другие вопросы по тегам