我正在使用可扩展存储引擎来缓存大量记录 - 这些记录大小约为2MB(每个)
它们通常会在几个小时内被删除,但它们的存活时间超过这段时间很少
我正处于JetBeginTransaction / JetPrepareUpdate / JetSetColums / Update / JetCommitTransaction的紧密循环中 - 此循环的每次迭代都会写入2MB记录。正在写入的数据已经预先分配并且在RAM中 - 我的生产者不应该占用任何CPU或磁盘时间
我测量的性能非常慢,大约每秒2兆字节。
使用procmon我看到很多很小的读写操作(512字节,4096字节,大量写入~30K)。我看到的最大写入是393,216bytes,我认为这是JET_paramMaxCoalesceWriteSize的默认值。
这感觉就像一个调整的东西,我该怎么做才能提高大写的性能?我的硬件能够提供的功能差不多两个数量级。