【发布时间】:2020-03-13 03:58:41
【问题描述】:
所以我们正在考虑在我们的组织中使用多维数据集。
现状:
- DWH (Azure MS SQL) 查询语言 - SQL
- Microsoft 列存储(不是真正的多维数据集)查询语言 DAX(有 MDX 支持,但看起来实现得很差 - 效率低下)
- Tableau(BI 系统、报表)可以使用 SQL 和 MDX
已知问题:
- 当我们使用 MDX 时,存在按日期聚合的问题(我们应该在查询中显示年、月、日期层次结构),而 DAX 则没有这样的问题。
- Microsoft Column Storage 运行总计计算效率低。
我们现在想如何解决问题:
- 使用 Microsoft Column Storage,具体化运行总计,但不会在所有报告中使用这种“多维数据集”,仅用于少数真正需要它的人
- 在 DWH 中实现运行总计。所有使用它的 Tableau 报表
- 在 DWH 中,我们有每日粒度的数据(例如:我们有一条记录在 11 月 1 日、11 月 5 日、11 月 15 日发生变化,之前我们在 DWH 中有 3 条记录,现在我们将有 15 条)。我们需要这样才能真正快速地获得最新的数据(基本上我们正在实现我们自己的立方体线)
优点:
- 没有人需要深入了解 DAX 和 MDX 语言
- 我们不应该重构任何东西
因:
- DWH 上传(更新)将变得比现在更长
- DWH 将变得更大(用于记录的日常数据)
- 我们需要手动维护运行总字段
已知的替代品:
- Microsoft Power BI - 可以非常高效地使用 DAX 和 MDX
- Microsoft 分析服务多维数据集(真实多维数据集) - 只要我们关注,MDX 在这方面的效率就很高,不像在 Microsoft 列存储中
问题:
- 首先:如果可能的话,我真的很想了解您在开发和维护解决方案时所使用的技术,以了解导致痛苦的原因和原因。
- 第二:如果您对我们当前的方法有任何批评,我们将不胜感激 - 为什么这样不好?
- 第三:方块死了吗?我的意思是 google 不展示自己的立方体,也许它本身的技术是一条死胡同?
- 最后:如果您对我们需要使用什么有任何建议,那就太好了。
【问题讨论】:
-
这对于 Stack Overflow 来说太宽泛了;提出了多个开放式问题。它似乎也没有提出编程问题,并且会产生更多固执己见的答案。如果您可以将您的问题更改为具体的和关于编程的问题,我们可以为您提供帮助;否则这不是正确的地方,您最好在基于讨论的社区中提问。
标签: sql-server database-design architecture data-warehouse cube