gpt4 book ai didi

database - 将静态数据存储在数组中,还是数据库中?

转载 作者:太空狗 更新时间:2023-10-30 01:47:02 25 4
gpt4 key购买 nike

在我们基于 Web 的项目中,我们总是有一些静态数据可以作为数组存储在文件中或存储在数据库表中。那么应该首选哪一个?

在我看来,数组有一些优点:

  1. 更灵活(它可以是任何结构,它指定了一个非常复杂的关系)
  2. 更好的性能(它会加载到内存中,与数据库的I/O操作相比具有更好的读写性能)

但我的同事认为他更喜欢DB方式,因为它可以保持统一的数据持久化接口(interface),并且更加灵活。

那么应该首选哪个?或者我们该如何选择?或者我们应该在某些情况下更喜欢一种而在其他情况下更喜欢另一种?有哪些场景?

编辑:

让我澄清一些事情。正如本杰明对标题所做的更改一样,我们要存储在数组(文件)中的数据不会如此频繁地更改,这意味着代码不会在运行时更改数组的值。如果数据变化非常频繁,我无疑会使用DB。这就是我发这样一个帖子的原因。

有时很难存储一些非常复杂的关系,例如:

Task = {
"1" : {
"name" : "xx",
"requirement" : {
"level" : 5,
"money" : 100,
}
...
}

就像上面的代码示例(一个python dict或者你可以认为它是一个数组),需求字段很难存储在数据库中(将像pickled对象这样的结构直接存储在数据库中?我认为不太好)。所以在这种情况下,我会更喜欢数组。

那么你的想法是什么?在这种情况下,我们应该更喜欢数组而不是数据库,对吧?

问候。

最佳答案

让我们务实/客观:

  • 您是否在运行时写入数据?是:数据库,否:文件
  • 您是否每周更新一次以上的数据?是:数据库,否:文件
  • 发布更新的数据文件很痛苦?是:数据库,否:文件,
  • 您经常阅读这些数据吗?是:文件/缓存,否:Db
  • 更新数据文件很麻烦,您需要额外的工具吗?是:数据库,否:文件

当然我忘记了其他要点,但我想基本知识都在那里。

关于database - 将静态数据存储在数组中,还是数据库中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1680297/

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