您可以使用 Tableau 在 BigQuery 中创建预聚合 Dimensions/Measuresments 之类的 OLAP 吗?

Can you create preaggregated Dimensions/Measuresments like OLAP in BigQuery with Tableau?

在 On-Premise Microsoft SQL DB 的云迁移过程中,作为其中一部分的 OLAP Cube 也应该被替换(但不是直接迁移)。有业务要求在 Tableau 中保留功能,您可以 select 不同的度量和维度及其相应的聚合,就像现在连接到 Tableau 中的 OLAP 多维数据集时可能的那样。

底层数据源视图包括 ca。 10 个表(例如客户、销售额、付款方式、客户细分、时间)。因此,通过 OLAP 分析“给我每周每个客户细分的每种付款方式的平均销售额”只需点击几下,纯粹 SQL 这已经是一些努力了。

如何在用户不必自己编写连接和聚合的情况下为某些 BigQUery 表提供定义的聚合,主要是因为这比简单的拖放要花费更多的时间(SQL 技能和时间查询执行不是问题)?

答案很简单:

将所有源数据连接在一起,并将其写入 BigQuery 中的一个平面 table,其中包含与 OLAP Cube 中的数据源视图相同的信息。然后 Tableau 连接到此 table。多维数据集的“测量”逻辑在 Tableau 中实现为计算,table 列是维度。

复制测量时需要谨慎,因为数据源视图中的 1:n 关系会导致平面 table 中的数据相乘。这可以通过在测量定义中正确使用 Distinct Functions(例如“Distinct Count”)来解决。

table最终会非常大,但查询速度非常快,因此与 OLAP 多维数据集相比性能有所提高,具有与在 Tableau 中使用多维数据集相同的用户体验。