你是會使用多個單錶查詢,還是使用乙個多表聯合查詢?

時間 2021-06-03 09:05:01

1樓:量化仔

做資料倉儲的都會寫乙個大的關聯,盡量一句把所有的資料都提取出來,只求結果不求過程。

這是結構化查詢語言和程式語言思路上的區別。

2樓:Richie

簡單說說

1. 從邏輯架構分層原則來看

關聯關係代表了業務規則/邏輯,毫無約束大量使用關聯查詢,就是把大量的業務規則和邏輯放在資料庫來執行了,資料庫消耗cpu、記憶體、io等資源進行關聯操作,實際上是在做應用該做的事情。

2. 從資源利用率方面看

大部分場景下,並不是所有關聯查詢的結果都被有效使用了。例如後台管理的列表介面,通常都會分頁顯示,關聯查詢的結果集,只有當前頁的資料被使用,其他都是無用的,但資料庫需要消耗額外資源得到全部結果集,再從中得到當前頁資料。

3. 從架構的伸縮性方面看

大量的關聯查詢會導致集中式的資料庫架構很難向分布式架構轉換,伸縮性方面的優化難度高。

關聯查詢方便快速,開發效率比較好,如果系統、資料庫經過一些垂直優化手段完全能夠滿足效能要求是可以使用的,例如中小企業的內部管理系統等。

不使用關聯查詢在架構層面有很多優點,但對系統分析和設計、開發能力要求高。一般在網際網路行業等使用者數較多的情況下最好重視這方面。

理論上不存在什麼複雜場景,如果不使用資料庫的關聯查詢就無法滿足需求的。巨無霸的ERP系統SAP,基本整個系統功能都是用單錶查詢實現的

是乙個產品多而全好還是多個產品線少而精好?

summer86 在資源不足情況下,產品少而精會比較好,集中資源創造核心產品 在資源充足的情況下,產品多且精會比較好。其實這個是企業戰略選擇的問題,產品少而精,是聚焦策略。而另外一種是多元化策略,降低風險而已。只是在中國,中國人都比較喜歡大而全的東西,都想 擁有 更多,所以導致很多企業都選擇多元化戰...

你使用了最長的網名是哪乙個?

王羅山 無聊道,我從有qq開始後一直用這個,無論遊戲或者論壇大多是這個,要麼是字母拼音,來來回回大概二十來年了快。玩傳奇別人知道我玩道士,其實我是看到當年無間道上映的時候,有在論壇評價無間道不好看稱之為無聊道,所以就借鑑了,哈哈! 渣渣狼 這是2011年我的qq截圖 十年過去了,我的名字還是這個 十...

你使用的第乙個自由開源軟體是哪個呢?

鐘xiao linux 在我剛上大學的時候,買的第乙個手機是Motorola的E2,周董代言的那個 裡面是linux2.4的古老核心,cpu還是當年Intel的Xscale系列 還沒賣給marvell 因為這個手機走上了Linux驅動開發的道路 魚與熊掌 Chrome 從版本6開始用,第乙個覺得不錯...