首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何设计一个可以处理未知报表的数据库?

如何设计一个可以处理未知报表的数据库?
EN

Stack Overflow用户
提问于 2016-03-22 19:49:20
回答 2查看 28关注 0票数 0

我正在从事一个项目,该项目存储了多个行业的大量数据。

我的任务是设计数据库模式。

我需要让数据库模式变得灵活,这样它才能处理复杂的数据报告。

例如,

代码语言:javascript
运行
复制
what products are trending in industry x
what other companies have a similar product to my company
how is my company website different to x company website

可能会有各种各样的报告。现在一切都很模糊。但我知道报告必须要快。

我认为我的最佳途径是尽可能多地创建关联表,这是正确的吗?例如,如果产品表链接到行业表,则可以相对容易地获取某个行业的所有产品,而不必通过其他表的连接来尝试与数据建立连接。

不过,这看起来很疯狂。模式将变得如此庞大和复杂。

请告诉我我所做的是否正确,或者是否有其他已知的解决此问题的方法。也许解决方案是雇佣一位数据科学家或DBA,他们的工作就是做这类事情,而不是让程序员来做。

谢谢。

EN

回答 2

Stack Overflow用户

发布于 2016-03-22 20:03:57

我认为从关系/操作数据库中获取这些类型的答案将非常困难,并且查询将非常缓慢。我认为最好的方法是创建多维数据结构(换句话说,数据仓库),其中您将拥有扁平化的数据,这将比关系数据库更容易查询。它还将拥有用于趋势分析的历史数据。

如果需要复杂的统计或预测分析,那么数据科学家可以使用数据仓库作为他们的源。

票数 1
EN

Stack Overflow用户

发布于 2016-03-22 20:34:15

除了上面Amit的回答之外,问题是,您需要从事务数据库中获得高度规范化的事实关联,以实现操作目的。对于分析方面,您需要的是有效标记的事实。

换句话说,您需要的是一系列星型模式,您可以在其中添加任何您想要的关联。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36153612

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档