簡體   English   中英

事實表的影響維度

[英]Reaffecting dimension of fact table

我開始構建星型模式,我喜歡它^^

我在尺寸建模方面存在設計問題。

我為星型模式(最高粒度)中的每個事務都有一個事實表(Fact table),類似這樣的東西(簡化版)

transaction_facts
- id
- account_dim
- date_dim
- status_dim
- amount

status_dim
- id
- code
- description
- final

對於事務,在處理時狀態沒有明確定義。 大多數情況都屬於以下情況:

  • 交易還可以
  • 交易是ko
  • 交易尚可,但有待確認。

最后一種狀態是有問題的狀態,因為我可以在原始交易后的幾天(最多10天,有時甚至更多)收到交易確認。

我應該如何處理這種較晚的更改? 憑直覺,我很想將現有交易重新影響到新的維度,但這使我想到了兩件事:

  • 這是一個好習慣嗎? (請勿重寫歷史記錄等。)
  • 如何處理BigQuery或Redshift或僅附加系統中的此類更改? 在非常多的行上,這將是一個問題,因為這些系統不能很好地與更新配合使用

如果

  • 這不必是真正的“金融交易”表,並且
  • 您不需要保留值的歷史記錄(例如,截至上一日期的值是什么)

然后,您可以/應該更新該值。

如果使用Redshift,則可以通過將大量更新寫入登台表(從s3復制)然后一次全部應用這些更新來有效地做到這一點。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM