就性能而言,物化视图是访问计算数据的好选择吗?

问题描述 投票:0回答:1

我们的 Google BigQuery DB 中有以下模型,可以处理有关员工、人口统计等的大量数据:

  • SRC_ 表,可从 SAP、SSFF 等多个系统中自动提取。
  • PPL_ 表,我们在其中存储合并不同来源的已处理数据(例如:PPL_Employees)
  • CDM_表,包含指标和计算数据(例如:性别分布、薪资分布等)

我们对 CDM_ 表的方法进行了内部辩论,有两种意见:

  1. 将 CDM 创建为表,其中包含我们每周执行以计算所有数据的存储过程。 更好的性能,更难维护。
  2. 将CDM创建为物化视图,以更简单的机制实现“自动刷新”。 更简单的方法,对性能存疑。

就性能而言,物化视图是访问计算数据的好选择吗?

这似乎是复杂性级别上的最佳方法,但我们不知道性能将来是否会成为问题。

google-bigquery database-design materialized-views
1个回答
0
投票

如果问题只是关于性能,那么物化视图会比存储过程快得多。

物化视图:

  • 您将支付表存储+视图存储的费用。因此,如果您有大量数据,视图的输出成本可能会上升。但是,您的计算成本/查询成本会非常低。
  • 此外,刷新是自动的,或者可以配置。

存储过程
您只需支付表存储费用。但是,您的查询/计算成本将比物化视图高得多。

© www.soinside.com 2019 - 2024. All rights reserved.