【发布时间】:2010-11-06 17:09:25
【问题描述】:
我们的系统会根据电话/网络请求/短信/电子邮件等生成许多事件,这些事件中的每一个都需要能够存储并可供报告(用于 MI/BI 等)开,这些事件中的每一个都有许多变量,不适合任何一个特定的方案。
事件文档的结构是一个键值对列表(cdr=1&name=Paul&duration=123&postcode=l21)。目前我们有一个 SQL Server 系统,它使用动态生成的稀疏列来存储我们的(平面)文档,其中我们有针对数据运行的报告,出于许多不同的原因,我正在寻找其他解决方案。
我正在寻找一个系统(开放式或封闭式)的建议,该系统允许我们将这些事件推送到(无论架构如何)并在其之上提供报告和分析。
我见过 Pentaho 和 Jasper,但大多数似乎都连接到系统以从中获取数据然后报告它。我真的只是希望能够将文档推入并使其可供报告。
尽管我很喜欢 CouchDB,但我正在寻找一个允许无模式提交数据并在其之上进行报告的系统(很像 Pentaho、Jasper、SQL Reporting/Analytics Server 等)
【问题讨论】:
-
这些系统是无模式的,还是只是模式尚未确定?架构是否经常更改?
-
模式完全由客户端、应用程序和我们使用的调用脚本定义。也就是说,我们进行的调用很有可能包含非常不同的列。很容易看出,我们将在通话结束时进行 1000 多种不同的测量。
-
我想我以前没有处理过这类问题。你实际上有多个模式。即使,为了快速存储数据,您有一个简单的键/值数据库,但要进行任何报告,每个客户端都必须有一个架构——我想每个客户端都有不同的架构!
-
取决于客户可能正在运行的活动以及他们可能在任何时候运行的“应用程序”有一个架构,但这个架构可能只存在 20 分钟,然后客户更改它基于根据他们的要求。
-
我不会说得这么粗暴(我已经超过了当天的配额)。然而,这听起来很准确:不充分的分析满足了过多的要求。向他们发送电子表格。
标签: reporting business-intelligence schemaless