我确实有HDP 2.6.1.0-129
我有用于序列化水槽数据文件的外部Jar example.jar。
我在Custom hive-site
部分添加了新的参数name = hive.aux.jars.path
value hdfs:///user/libs/
保存新配置并重新启动hadoop componens并在更长时间内重新启动所有hadoop群集。
在Hive客户端之后我尝试运行select
select * from example_serealized_table
和hive确实返回错误
FAILED: RuntimeException MetaException(message:org.apache.hadoop.hive.serde2.SerDeException java.lang.ClassNotFoundException: Class com.my.bigtable.example.model.gen.TSerializedRecord not found)
如何解决这个问题?
P.S。
如果尝试添加当前会话,
add jar hdfs:///user/libs/example-spark-SerializedRecord.jar;
尝试将* .jar放到本地文件夹中。 问题一样。
答案 0 :(得分:0)
我不是说图书馆写的是我的同事写的。 事实证明,它重新定义了影响字段记录级别的变量。 在排除了库中的重写变量之后,重现的问题确实停了下来。