Iam编写数据表生成器工具并且存在一些性能问题 - 我需要关心RAM的使用和生成时间。这是我程序中的键。
1)我需要将最终数据存储在一个文件中(一个文件=一个表,以便稍后在生成所有文件时加载它),如:
111|aaaa|bbba
112|aaab|bbbb
113|aaac|bbbc
114|aaad|bbbd...
我可以有很多列甚至数百万行。所有数值都是正确的。
2)现在,我需要使用之前生成的表之一的值为下一个表生成单个值。我的程序还可以将单列保存到临时文件中(以后将其读取),如:
aaaa
aaab
aaac
aaad...
现在,主要问题是我需要随机阅读'新值甚至数百万次,与行计数器相同。
如何有效地做到这一点?使用哪些工具?我有两个选择:
感谢您的帮助
答案 0 :(得分:2)
如何有效地做到这一点?
要随机读取文件,您需要知道每条记录的偏移量。我会存储这是一个二进制文件,每行开头有一个4字节或8字节的偏移量。
您可以使用像Chronicle Map这样的库,它允许您通过密钥随机读取文件中的任何记录。