我试图找到一种用Java中的目录结构序列化数据的方法。我要保存的数据是股票交易记录,每个记录包括股票名称,价格,时间和交易量。我知道如何序列化这些记录(“交易”类的实例)而没有任何层次结构,但是我必须通过所有数据,比如数十亿条记录来收集单个特定股票的数据。所以,我希望数据按照股票名称进行分区,因此当需要少数股票的数据时,我的阅读性能要快得多。
我知道你可以在HDF5中创建这样的层次结构(目录),但我正在寻找一个不使用JNI并且更加支持HDFS的Java序列化库。经过一些在线搜索,我发现Kryo是最新且最容易使用的Java序列化库之一。所以我希望有一些方法可以在Kryo文件中创建目录结构,但其他现代序列化库如Avro,Thrift也可以。
感谢您的帮助。
答案 0 :(得分:0)
可能为时已晚,但如果您仍然需要它,您可以查看由Nathan Marz开发的dfs-datastores
库。
您可以根据文件夹结构定义自己的数据存储,这里是链接https://github.com/nathanmarz/dfs-datastores/tree/develop/dfs-datastores/src