如何访问Spark sql中的HIVE ACID表



如何访问Spark sql中的HIVE ACID表?

我们已经开发并开源了一个数据源,该数据源将使用户能够使用Spark处理他们的Hive ACID事务表。

Github:https://github.com/qubole/spark-acid

它以Spark包的形式提供,Github页面上有使用说明。目前,数据源只支持从Hive ACID表中读取,我们正在努力增加通过Spark写入这些表的能力。

欢迎反馈和建议!

@aniket Spark不支持直接读取Hive Acid表。(https://issues.apache.org/jira/browse/SPARK-15348/SPARK-16996)事务表的数据布局需要特殊的逻辑来决定要读取哪些目录以及如何正确组合它们。例如,一些数据文件可能表示先前写入的行的更新。此外,如果你在读的时候有东西正在写这个表,你的读可能会失败(没有特殊逻辑(,因为它会试图读取不完整的ORC文件。压缩可能(同样没有特殊逻辑(会使数据看起来像是重复的。它可以通过LLAP完成(WIP(-在中跟踪https://issues.apache.org/jira/browse/HIVE-12991

我遇到了同样的问题(Spark for Hive acid表(,我可以使用Spark的JDBC调用进行管理。也许我可以使用spark的JDBC调用,直到我们从spark获得本机ACID支持。

https://github.com/Gowthamsb12/Spark/blob/master/Spark_ACID

Spark至少从Spark 2.3.2开始就可以直接读取酸表。但我也可以确认,它无法读取spark 2.2.0中的酸表。

最新更新