apache-spark – 在spark中读取未压缩的thrift文件

我正试图从s3读取未压缩的thrift文件.到目前为止它还没有奏效.

>数据作为未压缩的thrift文件加载到s3中.来源是AWS Kinesis Firehose.
>我有一个工具可以反复排序文件,所以我知道thrift序列化/反序列化工作.
>在spark中,即时通讯使用newAPIHadoopFile
>使用elephantbird的LzoThriftBlockInputFormat,我能够成功读取lzo压缩的thrift文件
>我无法弄清楚我应该使用什么InputFormat来读取未压缩的thrift文件.

这可能与任何InputFormats有关吗?我必须实现自己的吗?

最佳答案 我最终编写了自己的自定义thrift deserializer.

需要实现自定义的InputFormat和自定义RecordReader.仍然感到惊讶的是,某些lib中还没有这样的类.这两个类已经过测试和工作,但由于我在解决了这个问题后不久就停止了这个项目,所以代码没有被清理干净.

https://github.com/mklosi/thrift-deserializer

点赞