【发布时间】:2015-07-01 20:29:37
【问题描述】:
第一个断言是,MarkLogic 和 Mongo 等文档样式的 nosql 数据库应该将每条信息存储在一个嵌套/复杂的对象中。
考虑以下模型
<patient>
<patientid>1000</patientid>
<firstname>Johnny</firstname>
<claim>
<claimid>1</claimid>
<claimdate>2015-01-02</claimdate>
<charge><amount>100</amount><code>374.3</code></charge>
<charge><amount>200</amount><code>784.3</code></charge>
</claim>
<claim>
<claimid>2</claimid>
<claimdate>2015-02-02</claimdate>
<charge><amount>300</amount><code>372.2</code></charge>
<charge><amount>400</amount><code>783.1</code></charge>
</claim>
</patient>
在关系世界中,这将被建模为患者表、索赔表和索赔费用表。
我们的主要愿望是同时向下游应用程序提供这些数据,同时对其进行分析。由于我们不想为每个度量编写一个复杂的程序,我们应该能够在此之上放置一个工具。例如,Tableau 声称通过 ODBC 与 MarkLogic 建立了本机连接。
当我们在文档模型上使用范围索引创建视图时,MarkLogic 中针对它的 SQL 返回过多的重复结果。电荷数也用求和函数重复计算。它不起作用。
我们的想法是,通过 MarkLogic 的这些索引、视图和可能的片段技术,我们可以定义一个类似于关系结构的语义层。
文档提示您应该为每个表创建 1 个对象,但这似乎违反了首选的文档数据库结构。
存储大量文档数据并在其之上提供交钥匙分析工具的数据建模和应用模式是什么?
如果 ODBC 连接总是返回错误的数据并且不知道关系,那么所有声称支持 NoSQL 的 ODBC 的工具都是不正确的。
参考文献
https://docs.marklogic.com/guide/sql/setup
https://docs.marklogic.com/guide/sql/tableau
http://www.marklogic.com/press-releases/marklogic-and-tableau-build-connection/
【问题讨论】:
标签: odbc data-modeling marklogic business-intelligence nosql