0

我正在使用一个价值很大的程序。每个值由 id 数字组成(以逗号分隔的整数):

值1:1,207,688,4401,5432,40000,872111100

值2:65,876,992,10002,9843221

我将值存储为文本,但它为每个字符获取 1 个字节。如果 id 中的位数变大,它会占用很多空间。我将值存储为文本类型吗?哪种格式最适合存储它?谢谢。

4

1 回答 1

0

如果内存效率是一个真正的问题,并且您知道这些 ID 的长度永远不会超过Long.MAX_VALUE,我建议使用LongWritable.

相反,如果您知道它们往往足够长,以至于每个字符的字节值比以数字形式存储的内存效率更高,那么Text就非常合适。

在大多数情况下,考虑到它无论如何都会被写到文件中,不值得担心太多 - 通常只有long在使用它执行某种形式的计算时才值得转换为,否则你也可以坚持Text避免在初始解析之上的转换开销。

于 2013-04-13T21:39:22.730 回答