如何在火花中读取兽人事务蜂巢表?
我在通过火花读取ORC事务表时遇到问题,我获得了hive表的架构,但无法读取实际数据
查看完整场景:
hive> create table default.Hello(id int,name string) clustered by
(id) into 2 buckets STORED AS ORC TBLPROPERTIES
('transactional'='true');
hive> insert into default.hello values(10,'abc');
现在我正在尝试从 Spark sql 访问 Hive Orc 数据,但它显示 仅架构
>spark.sql("select * from hello").show()
输出:id,名称
是的,作为一种解决方法,我们可以使用压缩,但是当作业是微批处理压缩时,无济于事。 所以我决定使用 JDBC 调用。请在下面的链接中参考我对这个问题的回答或参考我的 GIT 页面 - https://github.com/Gowthamsb12/Spark/blob/master/Spark_ACID
请参考我对这个问题的回答
Spark现在(2.3版本(不完全符合Hive事务表。解决方法是在任何事务后对表进行压缩。
更改表 你好紧凑的"主要";
此压缩应使您能够看到数据。(一段时间后,数据被压缩(
您需要在末尾添加一个操作以强制它运行查询:
spark.sql("Select * From Hello").show()
(此处默认显示 20 行(
或
spark.sql("Select * From Hello").take(2)
以查看 2 行输出数据。
这些只是可以在数据帧上执行的操作的示例。