2011-03-04 32 views
0

我正在構建一個商業智能web應用程序在php 5中顯示從高度規範化的數據庫(在MySQL中超過60個表)檢索到的信息。商業智能網絡應用程序的存儲過程和/或ORM

我們使用MODx作爲我們的CMF來組織代碼。到目前爲止,代碼主要是過程式的,每個頁面基本上由一堆直接在php代碼中的sql查詢組成(代碼片段和MODx術語一樣),代碼以圖形方式顯示信息。

我們正在爲我們的主要組件創建對象,並將sql查詢放在那裏並使用PDO。當查詢映射到域的真實對象時,很容易做到。

對於更多BI(使用子查詢進行聚合,加入5個表)或面向搜索的查詢,我發現更難以看到如何替換動態創建的SQL。例如,我們在Web應用程序中具有許多標準的搜索功能。根據選擇的標準,php代碼添加或刪除表以加入,子查詢並更改'where'子句。

您是否認爲ORM或存儲過程可以提高上下文中代碼的性能/質量? 我們的模型(60+表高度規範化)太複雜了,無法直接從網絡應用程序訪問,並且一種數據集市(基本上是非規範化的數據視圖)會比ORM帶來更多好處?

這個問題是涉及到:stored-procedures-or-or-mappers

回答

0

瓶頸肯定是正規化的水平 - 如果選項是提供給您,採取更星型模式風格DWH將大大提高性能,因爲它預先準備供BI應用程序使用的數據。

相關問題