[英]How to design a database that can handle unknown reports?
我正在做一個項目,該項目存儲了多個行業的大量數據。
我的任務是設計數據庫架構。
我需要使數據庫架構靈活,以便它可以處理有關數據的復雜報告。
例如,
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,他們的工作是做這種事情,而不是讓程序員去做。
謝謝。
我認為,從關系/運營數據庫中獲取此類答案非常困難,而查詢則非常緩慢。 我認為最好的方法是在多維數據結構(換句話說,數據倉庫)中創建扁平化的數據,這比關系數據庫更易於查詢。 它還將具有用於趨勢分析的歷史數據。
如果需要進行復雜的統計或預測分析,則數據科學家可以使用數據倉庫作為其來源。
除了上面提到的阿米特(Amit)的答案外,問題在於,出於業務目的,您從事務數據庫中需要的是事實的高度規范化關聯。 對於分析方面,您需要有效地標記事實。
換句話說,您想要的是一系列星型模式,您可以在其中添加所需的任何關聯。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.