性能问题,平面文件与数据库存储

时间:2015-07-20 02:07:07

标签: sql-server json performance database-performance

我正在开发一个项目,要求我开发一个提供JSON输出的系统,以下是流程:

1a)有些表格将通过管理面板(我公司方面)进行更新

1b)一些相关的表格将通过管理面板(合作伙伴方)进行更新

  

- 请说 SuperHeroes & 男性更新于1a),工作室& 在1b)中更新

2)客户浏览我们的网站并请求一个信息集:

  • SuperHeroes (Ant-man)中已启用且未删除的行
  • 男性中已启用且未删除的行已链接至 SuperHeroes (Scott Lang)
  • 加入上述记录,然后查看它们是否已链接并存在于工作室(漫威)
  • (2015)
  • 中的现有行相关联

3)一个非常小的数据将输出到JSON字符串,如下所示:{id:1,type:marvel},{id:1,type:dc}

  

上述4个表格中的所有行将随时更新/删除,恕不另行通知,[无外键]

我想在每次执行 1a 时更新平面文件中的信息(因为我们可以更新公司方面的系统但不更新合作伙伴方,并且拒绝将一些额外的信息保存到一个平面文件中所以情况是我们没有简单的方法来知道 Studios Years 表是否被修改

然后,当JSON请求首先从平面文件加载信息时(所有输出数据都将存储在此文件中),然后使用简单的SQL语句来过滤工作室中是否存在链接记录&的

我做了我的研究并且感到困惑,我总结当数据量很小然后平面文件会很好但要注意文件变得越来越大(我们正在谈论的平面文件现在将超过50行在1次,不应经常修改

有些回答称数据库擅长查询数据(我认为是这样,而且要求也会执行SQL检查

所以当我的数据量很小但仍然需要与数据库进行一些通信时,我不知道它是否有用..

我感谢你的时间和你的帮助,所有的想法&欢迎提示,谢谢!

1 个答案:

答案 0 :(得分:1)

关于数据量的结论是绝对正确的,文件应该处理那50行,但是.. 使用数据库作为存储应该会在将来为您提供更多选择,例如:

  • 由于数据分离,您将能够生成任何输出 表示(今天它是JSON,但如果你必须生成XML,那该怎么办? 在某一点?你会添加存储XML旁边的文件JSON 文件?然后是CSV或任何其他?)
  • 交易将保证ACID
  • 可扩展性和性能 - 如果您的数据集变得更大(您永远不会知道:)),很多 DB为您提供了许多可能性,例如表分区,基于分区的集群 或复制

项目开始时对架构和技术的错误选择总是会适得其反。