使用C#序列化拼花数据

时间:2016-11-02 12:10:33

标签: c# apache parquet

有没有办法使用C#以Apache Parquet格式序列化数据,我无法找到任何实现。在官方的Parquet文档中,据说" Thrift也可以编码成任何其他节俭支持的语言。"但我不确定这究竟意味着什么。

由于

3 个答案:

答案 0 :(得分:6)

我们已经开始为Apache Parquet的.NET实现开源项目,欢迎任何人加入。 https://github.com/elastacloud/parquet-dotnet

答案 1 :(得分:4)

我们刚刚开源了围绕Apache Parquet C ++的.NET包装器。与Parquet.NET(后者是纯.NET实现)相比,这是一种不同的方法。

欢迎您尝试一下并分享您的反馈: https://github.com/G-Research/ParquetSharp

答案 2 :(得分:0)

不,没有。我花了一个星期的时间为.NET编写自己的镶木地板编写器,它太复杂了,需要更多的时间。我最终使用Python和fastparquet库在Hadoop集群之外进行任何处理。我必须说fastparquet是一项了不起的工作并且非常容易使用,但是缺少许多功能,即嵌套列和有效附加到文件的能力。没有提到对Python3的依赖,这可能是一个令人头痛的部署。

您可以在C#中生成Thrift协议,但这并不能让您走得太远,只是意味着您的输出将与Parquet规范兼容。

我仍然热衷于为.NET Core / .NET 4.5创建一个开源Parquet库,所以如果有人热衷合作,请告诉我。