Hive Warehouse Connector - чтение таблицы Hive, содержащей столбец с массивом типов - PullRequest
0 голосов
/ 06 марта 2020

когда я пытаюсь сделать простой SELECT для таблицы улья, в котором есть столбцы с типом Array, я получаю эту ошибку:

User class threw exception: java.lang.NoSuchMethodError: org.apache.hadoop.hive.llap.FieldDesc.getTypeInfo()Lshadehive/org/apache/hadoop/hive/serde2/typeinfo/TypeInfo;
    at com.hortonworks.spark.sql.hive.llap.util.SchemaUtil.convertSchema(SchemaUtil.java:25)
    at com.hortonworks.spark.sql.hive.llap.HiveWarehouseDataSourceReader.getTableSchema(HiveWarehouseDataSourceReader.java:113)
    at com.hortonworks.spark.sql.hive.llap.HiveWarehouseDataSourceReader.readSchema(HiveWarehouseDataSourceReader.java:124)
    at org.apache.spark.sql.execution.datasources.v2.DataSourceV2Relation$.apply(DataSourceV2Relation.scala:56)
    at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:224)
    at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:164)
    at com.hortonworks.spark.sql.hive.llap.HiveWarehouseSessionImpl.executeQuery(HiveWarehouseSessionImpl.java:62)
    at com.orange.vodcastview.datainjector.MetaProcessorMain$.main(MetaProcessorMain.scala:34)
    at com.orange.vodcastview.datainjector.MetaProcessorMain.main(MetaProcessorMain.scala)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.apache.spark.deploy.yarn.ApplicationMaster$$anon$4.run(ApplicationMaster.scala:721)

1 Ответ

0 голосов
/ 07 марта 2020

Попробуйте проверить эту статью - https://reflectoring.io/nosuchmethod/

Обычно вы получаете эту ошибку, если путь к классам отличается во время компиляции и выполнения. Проверьте, какую версию Spark вы используете при создании проекта, и что работает в среде, в которой вы его развернули.

...