怎樣報表資料庫
怎樣報表資料庫
進一步討論請參考 Er Evans 總結。
如果我採用了 領域模型( Domain Model 如何支援特定的 SQL 查詢呢?
領域模型可提供大力支援。但是現存的許多報表工具不支援領域模型,領域模型的要點之一就是應用資料身上新增重要的操作方法。如果你想為資料生成報表。都是直接用 SQL 與資料庫互動的該怎樣處置呢?
需要一份特別的報表常意味著恰當合理的需求沒被挖掘出來,首先要對這種特定報表的需求提出質疑。很多情況下。一旦用心深入分析,就會發現用報表其實很彆扭,不像你之前想得那麼合適,另外,基於領域模型寫程式碼也能輕鬆生成報表。很多情況下,真正的需求是快速生成報表,客戶並不關心報表到底是怎麼生成的總之不會想自己敲 SQL
有一些厲害的使用者偏偏喜歡直接用基於 SQL 報表工具。這種情況的一個好對策就是生成一個 “ 報表資料庫 ” 所謂報表資料庫,話也不能說得太絕對。儲存實際運算元據的資料庫外的另一個資料庫,基於領域模型編寫程式碼給它填充資料,因此從領域模型衍生出的資料也能填進去。這能帶來以下好處:
可以把領域模型衍生資料加到報表資料庫。
- 因為報表資料庫是隻讀的也就無需追求資料庫設計符合正規化。
- 資料庫的結構可以專門設計得便於生成報表。
- 開發團隊可以重構原運算元據庫,
- 通過領域模型填充資料。而不影響報表資料庫。
- 查詢報表資料庫不會影響原運算元據庫的效能。
檢視層面也無需追求正規化化,另一種變通方案是利用檢視。檢視封裝了實際運算元據。但它不能分開實際操作負載和報表查詢負載(還是一個庫)更嚴重的問題是被限制在可獲得的那些檢視上,無法再利用領域模型靈活的操作了
許多人認為這類情況是面向服務構架( SOA 目的之一。 雖然我通過一個領域模型的例子引出報表資料庫的但這種方法適用於任何需要封裝資料庫的情況。
相關文章
- 報表從資料庫中採集相關資料生成報表,資料太少怎麼辦?資料庫
- 怎樣開啟mongodb資料庫MongoDB資料庫
- 資料庫怎麼分庫分表資料庫
- 報表資料分庫儲存
- MySQL資料庫表索引取樣統計MySql資料庫索引
- [轉] Oracle資料庫中建立表時怎樣考慮列順序Oracle資料庫
- 資料分析報表怎麼做
- 給Agent加上資料庫功能會怎樣?資料庫
- 資料庫以後可能換,現在報表怎麼做好一點?資料庫
- 實現報表資料分庫儲存
- 資料庫的基本分類是怎樣的?資料庫
- 怎樣在資料庫中儲存貨幣資料庫
- 怎樣設計一個好的資料庫資料庫
- 當資料庫表無主鍵ID時,ORM這樣更新資料資料庫ORM
- zblog的資料庫配置檔案是哪個?怎樣修改資料庫配置資訊?資料庫
- 怎樣在報表中新增文字水印
- 資料庫中的圖片欄位怎麼在報表中呈現資料庫
- 分散式資料庫怎樣才能叫好又賣座分散式資料庫
- 怎樣從外網網訪問本地資料庫?資料庫
- 怎麼設定資料庫的報警資料庫
- 建立資料庫表資料庫
- 怎麼控制報表的資料許可權
- 怎樣實現填報表定時提交
- 萬里資料庫是一家怎樣的公司?資料庫
- 怎樣從公網訪問內網Redis資料庫內網Redis資料庫
- mysql建立資料庫報錯了怎麼辦MySql資料庫
- 怎樣保護資料
- PostgreSQL:表空間-->資料庫-->表SQL資料庫
- phpMyAdmin管理資料庫和資料表PHP資料庫
- 報表怎麼動態選擇資料來源
- 怎樣開發 T+0 實時報表
- 資料庫 建立 3表資料庫
- 大模型時代究竟需要怎樣的 AI 資料庫?大模型AI資料庫
- ETLCloud怎麼樣?深度解析其在資料管理中的表現Cloud
- 怎樣實現動態列報表,也就是列數不固定的報表?
- ABAP資料庫表的後設資料資料庫
- MySQL資料庫之分庫分表方案MySql資料庫
- 怎麼更新BI報表資料?問我就對了
- 報表中怎樣實現滾動的公告效果