【问题标题】:Which Document Oriented Database with better Reporting Performance than Sql Server [closed]哪个面向文档的数据库具有比 Sql Server 更好的报告性能 [关闭]
【发布时间】:2012-02-08 19:43:48
【问题描述】:

我正在寻找一个以文档为导向的数据库来存储超过数百万张具有快速报告速度的发票。

我找到了一些选项,例如 MongoDB、Ravendb、Couchdb,但我不知道与 Sql Server Xml 类型列相比性能失败的风险。

这个问题的来源是here。

【问题讨论】:

    标签: sql-server database nosql reporting ravendb


    【解决方案1】:

    快速报告是您想要在 sql server 中执行的操作。对于这种情况,我不知道有一个好的 NoSQL 解决方案。

    RavenDB 具有索引复制包,可让您将索引复制到 sql 表,以便您可以对它们进行一些高级报告。

    【讨论】:

    • 你觉得this怎么样? 不过,我们不建议使用 RavenDB 的一种情况是报告。
    • Daniel,我不会说 RavenDB 无法轻松处理他的报告场景。在 RavenDB 中比较困难的一个场景是动态分组,实际上很少见。
    【解决方案2】:

    礼萨, RavenDB 在这里看起来很合适。这一切都取决于您实际上所说的“报告”。 在 RavenDB 中执行诸如“上个月有多少张发票”之类的事情很容易。 就像“Northwind 欠我们多少​​钱?”之类的事情一样

    对于您有动态报告需求(例如需要进行动态聚合)的特定情况,我们不建议使用 RavenDB 进行报告。

    关于报告,您实际上试图做什么?

    除此之外,发票是 RavenDB 真正大放异彩的好地方,尤其是考虑到该问题的其他参数以及发票的动态性质。

    【讨论】:

    • Ayende,发票报告是关于组织获得收入的数量和方式。它可能会处理一些字段的查询,例如今年一个特殊客户或客户类别支付了多少钱。这是各种付款的总结。一个特定的产品类别有多少好处。谁还有哪些付款方式?另一个问题是验证。
    【解决方案3】:

    但我不知道与 Sql Server Xml 类型列相比性能失败的风险。

    史诗般的失败已经在这里。发票在大多数情况下(在所有您需要的情况下)都是关系数据,因此地址链接、行项目、数字和价格都在表格中,而不是 XML 数据类型。这是“好吧,所以 - 你计划在麦当劳工作,而不是在我们的团队?”关卡设计决策。

    行项目和发票可能包含 XML 中的附加数据(如时间表等),但如果您运行会计,则不会将其作为文档运行。

    【讨论】:

    • 好吧,知道我为什么要考虑面向文档的数据库也许很重要。请看reason。
    • “数据模型资源手册”,第 1 卷。具有用于开票和会计的完整数据模型。在会计等受监管且未被充分理解的领域中不存在“不稳定的组织”。只有一个开发者不知道标准模型。
    • 这点很好。但在许多情况下,每件事都不会按照您或法规的预期进行。
    • ;) 我仍然必须找到一个“不按照法律规定”进行会计的组织,以及一个书中给出的模型无效的案例。 20 年来,大多数“我需要变得更聪明”的 IT 结果证明是“我真的不知道外面有什么以及如何正确设计”。发票管理/会计是这些领域之一。
    • TomTom,发票是关系数据吗?绝对不! Inovices 是关系数据的非规范化快照,在文档数据库中可以完美运行。你不希望地址改变,你不希望价格甚至产品名称改变。发票完全不相关。
    猜你喜欢
    • 1970-01-01
    • 2011-02-21
    • 1970-01-01
    • 2010-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-07
    • 2012-02-12
    相关资源
    最近更新 更多