所以我有一个需要读取大量小数据的应用程序(例如处理大量客户记录的应用程序)。
通常,对于执行此类操作的服务器系统,您可以使用数据库来处理 a) 缓存最近使用的数据 b) 索引它们,以及 c) 存储它们以便从文件系统中高效检索。
现在,对于我的应用程序,我只有一个 std::map<> ,它将数据 id 映射到数据本身,这些数据本身非常小(比如每个 120 字节,或者接近那个)。数据 id 本身只是直接映射到文件系统中。
但是,这种系统不处理数据的卸载(如果内存开始用完)或数据的有效存储(当然,iOS 使用闪存,因此操作系统应该处理缓存),但是是的。
是否有图书馆或类似的东西可以处理这种东西?还是我必须从头开始构建自己的缓存系统?不太在意索引,只有 a) 缓存/卸载和 c) 存储以进行有效检索。我对将数千个(或可能数十万个)文件存储到文件系统上感到谨慎。