gpt4 book ai didi

c++ - 比较数据库搜索方法

转载 作者:太空宇宙 更新时间:2023-11-04 12:50:09 24 4
gpt4 key购买 nike

我正在编写一个 C++ 类,一个搜索数据库的程序。我编写了从作为数据库的 .txt 文件中读取一条记录(行)的代码。我将记录的值存储在一个 vector 中,并将相应列( vector 中的元素)的内容与搜索查询进行比较。当我上课时,老师说要为将要搜索的列制作索引文件,并将查询与其中一个子文件进行比较。我当然要修改我的代码以适应教师参数。我仍然想知道两者之间有什么区别,是否一个比另一个快。

最佳答案

我不太相信,老师的方法更好。每个文件访问都需要成本,而且成本很高。真正的改进是最小化文件访问次数。当你逐行阅读文件时,你浪费了很多时间。您应该创建一些缓冲区,例如64kB。这将显着提高性能。

具体来说:当我很久以前处理文件时,我使用天真的方法从标准输入中读取数据:

std::cin >> someData;
// Similarly
file >> someData;

没有
如果您尊重自己的时间,请不要这样做。从角度来看:使用天真的方法加载 5 MB 文件需要大约 1-2 分钟才能加载。然后我大大减少了访问次数,加载时间为 5 秒。这只是一个例子,但你可以意识到这是多么大的一步。

关于c++ - 比较数据库搜索方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49438014/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com