假设以下文件格式:
Integer1 Integer2 Integer3 Integer4 ...
这些是使用 DataInputStream 编写的二进制整数。有 220 亿个它们写入一个大小约为 90G 的文件。
可用 RAM > 2 * 文件大小。
因此,它可以轻松放入内存中。读取和解码此类整数的最快方法是什么。目前,
MappedByteBuffer reads 500M numbers in time: 212.986 seconds
DataInputStream wrapped around a BufferedInputStream reads 500M numbers in time 306.755 seconds.