2013-03-21 66 views
3

我必須在我的應用程序中使用php實現報告/統計工具。數據量非常巨大,大約有1.2億條記錄。這些報告應該是實時生成的,因爲用戶可以在生成報告之前選擇多個過濾器,所以無法預先生成報告,比如說在夜間基礎上。如何保存統計數據?

我使用的MySql數據庫由於數據聚合和連接(用於過濾)而無法處理這一數量的數據。即使嘗試對錶格進行非規範化處理,實際上也很慢。 我的問題是有任何專用的開源報告統計工具,我可以從PHP使用它?即使它不是用PHP編寫的,但可以與庫鏈接。

我也讀過關於非sql數據庫,但因爲它們不是關係型的,所以很難做到它們之間的聯接,當它們聚集時它們並不是很好(就我在mongoDB中看到的那樣)。

謝謝您的建議。

最好的問候, FERI

+0

Mongo上的MapReduce表現不佳。你看過Hadoop嗎? – PaulProgrammer 2013-03-21 18:11:56

回答

0

如果你找一個開源的報告引擎,Jasper報表和Pentaho的是要走的路,但是,關於Java對運行和更好地使用鬆散耦合(簡稱爲報表服務器)。在PHP中有一個(部分)Jasper Reports實現,名爲PHPJasperXML,這取決於你想要什麼,可能值得看看這個項目並使用它。

+0

當然,如果你不介意使用封閉源代碼,可能會有更好的選擇。 – 2013-03-22 15:54:53