0

我在内存中有大量索引,可以在庞大的数据集中快速搜索。构建索引需要很长时间,而且将它们的快照从磁盘反序列化到内存也需要很长时间。他们用掉了很多珍贵/昂贵的内存。我确实尝试使用一种自定义搜索阅读器直接从磁盘使用索引,该搜索阅读器只是即时反序列化所需的位。这工作得非常好,但在多线程环境中确实存在一些关于锁、并发、版本控制等严重缺陷。当然,它并不是超快的。

无论如何,我想知道“持久性 RAM”(NVMe、Optane..?)是否可以帮助我。我不确定我是否完全理解它们应该如何使用,但它们似乎填补了 HDD/SSD 和 DDR-RAM 之间的空白?它们的成本低于 RAM,但比 SSD 快,并且持久。

所以我希望以某种方式直接在持久 RAM 上运行 .NET 程序,使用我的索引,而不必在重新启动之间来回将其序列化到 SSD。那将是梦想成真!

如果不将整个 .NET 程序放在持久性 RAM 中,也许还有其他方法可以从 .NET 与其交互?即使它只是写入和读取字节?

4

0 回答 0