我目前正在开发一种软件系统,可以以各种格式(XML,JSON,CSV)导入和规范化历史数据。截至目前,我们正在使用SQL服务器,并且正在寻找这个工具(Postgres或NoSQL)的最佳替代品。 90%的时间,(存档/历史/静态)数据通过Web客户端访问,并以只读格式使用,用户选择和选择预设报告。仅更新数据才会更新错误信息。
替换数据库必须能够非常快速地存储和报告数百万行,并且可以轻松地跨多个服务器进行扩展(数据复制,群集等)。还必须有数据完整性,因此如果我更新一个KPI(比如每小时成本),那么依赖于KPI的所有报告都将相应更新。
没有NoSQL数据库的经验,我想知道它是否是在报告软件中使用的正确选择。我们喜欢允许用户创建自己的自定义报告,这意味着能够查询任何数据而不是我们的预设报告,但我不知道这是否会引发SQL与NoSQL之间的比较。
答案 0 :(得分:1)
问题中有一些变量太多,不能完全回答它,但这是一次尝试。
SQL
vs NoSQL
中的选择应基于数据结构。可伸缩性通常是第二层关注的问题,在某些NoSQL平台上只是稍微容易一些,但一如既往,并不总是免费的。JSON
等),显然值得一试(没有简单的可扩展性)。话虽如此,你应该真的调查Postgres'否则被遗忘的资产,外籍家政工人。您可以清楚地考虑使用NoSQL设置来摄取大型非结构化数据,然后使用postgres'强大的语义来使用它,并为您的应用程序创建一个异步但结构化的后端。如果做得好,那可能意味着两全其美。