我有一些类型的数据,我必须在HDFS上作为序列文件上传。
最初,我曾考虑过根据模式的类型在运行时创建.jr文件,并使用Hadoop的rcc DDL工具来创建这些类并使用它们。
但是看一下rcc文档,我发现它已被弃用了。我试图看看我有什么其他选择来为每种类型的数据创建这些值类。
这是一个问题,因为我了解了要在运行时加载的数据的元数据以及数据流。所以,我没有选择,只能在运行时创建Value类,然后用它来写(Sequence,vale)到SequenceFile.Writer,最后将它保存在HDFS上。
如果有人有任何解决方案,我会真的应用 谢谢, JJ
答案 0 :(得分:0)
您可以尝试查找其他序列化框架,例如Protocol Buffers,Thrift或Avro。您可能希望首先查看Avro,因为它不需要静态代码生成,这可能更适合您。
或者如果你想要一些非常快速和脏的东西,SequenceFile中的每条记录都可以是一个HashMap,其中键/值是字段的名称和值。