将avro数据以ORC格式存储在HDFS中,不使用HIVE



Am将avro数据存储为ORC和Parquet格式进行比较,我成功地使用"com.twitter"%"parquet-Avro"%"1.6.0"将Avro数据存储到parquet中,但找不到任何信息或API以ORC格式存储Avro数据。

那个ORC只和蜂巢紧密相连吗?

谢谢subahsh

你还没有说你在使用Spark,但问题已经标记好了,所以我认为你在使用。

ORC文件格式目前与Spark中的HiveContext紧密相关(我认为只有1.4及更高版本),但如果你创建了一个配置单元上下文,你应该能够像Parquet一样将数据帧写入ORC文件,例如:

import org.apache.spark.sql._
val sqlContext = new org.apache.spark.sql.hive.HiveContext(sc)
val df = sqlContext.read.avro(("/input/path")
df.write.format("orc").save("/path/to/use")

如果您通过Spark数据帧API读取avro数据,那么这就是您所需要的,但在Hortonworks博客上有更多详细信息

最新更新