在C中优化大文件的I / O.

时间:2012-09-04 20:44:44

标签: c optimization io

我编写了一个从大文件(> 3 GB)读取数据的C程序。文件中的每个记录都是键值对。每当查询到来时,程序都会搜索密钥并检索相应的值,类似于更新值 查询速度很快,因此这种技术最终会失败。 最糟糕的情况是访问时间太长。由于尺寸的原因,创建内存中的对象将再次成为一个坏主意 有什么方法可以解决这个问题吗?

2 个答案:

答案 0 :(得分:5)

在我看来,包含一系列名称 - 值对的那个大小的文件乞求迁移到实际的数据库;如果不这样做,我可能至少会探索一个内存映射文件的想法,只有部分驻留在任何给定的时间......

答案 1 :(得分:3)

与相应的值相比,键的大小有多大?如果它们明显更小,您可以尝试在键和文件中相应位置之间的内存中创建一个表。