【问题标题】:Storing simple data on the server, db or json?在服务器、db 或 json 上存储简单数据?
【发布时间】:2012-03-20 08:39:18
【问题描述】:

我有一个应用程序,它需要存储一些更改的简单对象,并且需要能够持久化它们。我应该将数据保存到像 mongo 这样的数据库并在启动时读取它还是应该保存到 json 文件?

感谢任何提示。

【问题讨论】:

    标签: json node.js mongodb database


    【解决方案1】:

    任何一种方式都可以。 “这取决于”哪种情况最适合您。

    需要考虑的事项:

    • 平面文件不可(或不容易)查询。
    • 您必须管理平面文件(例如文件夹、文件名等)
    • 有可能发生碰撞吗?你会经常阅读和写作吗?
    • 如果您只保留几个对象,那么像 mongo 这样的数据库是否矫枉过正?
    • redis 之类的解决方案是否更好?

    我目前正在处理一个涉及多个数据存储的项目。 MySQL、平面文件、mongo 等。

    平面文件非常适合存储稍后要提取的数据。它适用于不经常读取或写入的数据。

    Mongo 有像 Mongoose 这样的模块,可以消除很多复杂性。但是 Mongoose 和 Mongo 的文档可能有点枯燥和混乱。

    想想数据将如何被使用,它会如何演变,以及是否需要查询它。如果只需要在应用程序启动时将其拉起,则可以使用平面文件。如果它要变成更大的对象,那么平面文件仍然是解决方案。但是如果将来有机会添加其他对象,那么平面文件将变得更难管理,并且将它们添加到工作系统中会很痛苦。

    总的来说,如果您想要任何类型的查询(除了手动打开文件并检查它们),请使用 Mongoose 或类似的数据库。

    【讨论】:

    • 我不喜欢 Mongoose 之类的 ORM,但我想我会实现 mongo 或 redis(虽然 redis 看起来要持久化有点复杂,而且不需要速度)。感谢您的提示。
    【解决方案2】:

    如果您想更改数据,这取决于 mongo 会更容易。它基本上是一个 json lol 的存储引擎。取决于您的用例。如果你认为这会增长,你不妨使用 mongo。如果您的存储需求永远不会改变,请使用 json 文件。

    【讨论】:

      猜你喜欢
      • 2017-10-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-13
      • 1970-01-01
      • 1970-01-01
      • 2013-01-21
      相关资源
      最近更新 更多