出于学习目的,我正在尝试为大型收藏编写一个搜索引擎。我从自己的直觉开始。然后我进行了研究,最终得出了一个工作模型。
我正在构建一个巨大的哈希表来保存我集合中的所有术语。从集合中构造它非常昂贵。一旦我计算出该表,我想将它保存到磁盘,这样每当我想在我的程序中访问这个哈希表时,我都可以从磁盘再次加载它。
有什么标准的方法可以做到这一点,还是我必须发明自己的文件格式和技巧才能做到这一点?
注意:has-table只是用来存储所有term出现的,我打算将主要的排名数据存储在一个postings文件中,并将其指针设置在hash-table对应的term中。
我在 C 语言中工作。
最佳答案
BDB是一个用于高效管理平面文件数据库的库。特别是支持哈希表格式。如果需要有序访问,也可以使用 B 树。
关于c - 如何从磁盘来回保存和加载一个巨大的哈希表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15401854/