scala - 蜂巢选择查询在火花创建外部表时抛出异常使用ORC格式
问题描述
我已经通过 spark-shell 创建了示例表。按分区将 datframe 写入外部表使用 ORC 格式。它是在 spark-shell 中读取/写入的工作文件。但是当我尝试在 hive-shell 上执行相同的选择查询时,它会抛出异常。
下面我已经实现的代码
scala> val df = sc.parallelize(Seq((1,"Sudhir",30),(2,"Sourabh",27),(3,"Suman",35),(4,"Basu",30) )).toDF("id","name","age")
scala>df.write.partitionBy("age").format("ORC").mode(SaveMode.Append).saveAsTable("Abc1")
scala> val df3 = sqlContext.sql("select * from abc1")
scala> df3.dropDuplicates(Seq("id")).show()
耗时:0.486 秒,获取:35 行 hive (sba_db_2018)> select * from Abc1; OK abc1.col 失败,出现异常 java.io.IOException:java.io.IOException: hdfs://nag1-vm-sprintba-11.synapse.com:8020/apps/hive/warehouse/sba_db_2018.db/abc1/age =27/part-r-00001-31ebd621-02bb-4db5-9170-5405010e68fd.orc 不是 SequenceFile 耗时:0.147 秒
解决方案
推荐阅读
- excel - 如何在 Excel VBA 中定义动态变量?
- tensorflow - 获得图像的 one hot 编码表示和计算损失
- dart - 更改音频播放速度
- javascript - 当 DOM 改变时运行一个函数?
- windows - 适用于 Mac 和 Windows 的 .yarnrc
- logging - Log4j JDK Logging 适配器:在启动过程后期应用 LogManager 系统属性
- sql - SQL 中有没有办法识别和标记包含循环关系的树?
- php - 使用 PHP MYSQL 进行 AJAX 实时搜索
- android - Firebase 事件参数未使用方法 #1 记录,但适用于方法 #2。为什么?
- pdf - PDF 字符串中使用的未知编码