51得票2回答
红黑树 VS B 树

我有一个项目需要处理从几兆字节到几太字节的数据,需要实现快速的搜索、插入和删除操作。最近我一直在研究数据结构并对它们进行分析。具体来说,我想介绍3种情况,并就此提出问题: 数据量远远超过内存容量(样本范围在10-15TB之间)。在这种情况下,我会将数据结构存储在磁盘上。 相对于系统内存,数...

13得票5回答
循环文件映射会降低性能

我有一个循环缓冲区,它由文件映射内存支持(缓冲区的大小范围在8GB-512GB之间)。 我以顺序方式写入(8个实例的)内存,从开头到结尾,然后它会循环回到开头。 一切都很好,直到它到达末尾,需要执行两个文件映射并循环遍历内存,此时IO性能完全崩溃,并且无法恢复(即使经过几分钟)。我无法弄清...

10得票4回答
从映射文件进行IO与使用文件流进行IO的区别

我正在开发一个需要处理大量数据(以GB计)的应用程序。在任何时刻,我都不需要一次性获取所有数据。将数据分区并仅在给定实例中处理(因此将其加载到内存中)一部分数据是可以接受的。 我了解到,大多数需要操作大量数据的应用程序通常使用内存映射文件。进一步阅读有关内存映射文件的信息后,我发现从/到内存...