我正在用c ++做一个信息检索项目。使用数据库存储术语有什么好处,而不是将其存储在诸如向量之类的数据结构中?更一般地说,何时使用数据库而不是数据结构是个好主意?
答案 0 :(得分:2)
每当您想要保持数据超出程序实例的长度时?
答案 1 :(得分:2)
除了Shawn指出持久性:每当你想要多个程序实例能够轻松共享数据时?
内存中的数据结构很棒,但它们不能代替持久性。
答案 2 :(得分:2)
(Shawn):每当您想要保持数据超出程序实例的长度时。 (持续时间)
(MichaelKjörling):无论何时你想要你的程序的许多实例,无论是在同一台计算机上还是在许多计算机上,如在网络或网络中,都可以访问和操作(共享)相同的数据。 (跨网络空间的持久性)
每当你有大量不适合内存的数据时。
每当你有非常复杂的数据结构并且你不想重写代码来操作它们时,例如搜索,更新它们,当db程序员已经编写了这样的代码并且可能比你的代码(或者我的代码)快得多)'我会写。
答案 3 :(得分:1)
这实际上取决于范围。例如,如果您要让多个应用程序访问数据,那么数据库更好,因为您不必担心文件锁等。此外,当您需要执行诸如加入其他内容之类的操作时,您将使用数据库数据,排序等...除非你想实现Quicksort。