2012-12-09 13 views
-1

我剛開始我的應用程序在android.And我希望我的應用程序不應該消耗太多的CPU設備。 我有3個數據訪問選擇。 1。遠程服務器上的MySQL數據庫。 2。在遠程服務器上以xml格式存儲的數據 3。數據以遠程服務器上json的形式存儲。哪一個更好的性能方面:遠程MySQL數據庫,以xml形式存儲數據,json使用android

數據在數據庫中大約爲2000-3000行。 我應該使用哪種方法來提高我的應用的性能。

任何幫助將是可觀的。

+0

我在等待有用的建議。 – ved

回答

1

您的數據在遠程服務器上的存儲方式對於Android應用程序來說並不重要。真正的問題是它如何轉移,以及如何在本地處理和存儲它。

有了這麼多的數據,你最好的選擇是使用流數據和解析流。對於XML,這意味着使用SAX解析器,對於JSON可能流式傳輸Jackson。 JSON使用更少的帶寬,傑克遜是通過格式化數據流失的最快方式。

流式傳輸有一個明顯的優勢,就是您不需要將所有這些數據都保存在內存中以作爲DOM解析,但它需要花費更多的開發工作。

在本地,存儲這些數據量的最佳方式是一個sqlite數據庫,您可以輕鬆查詢。

+0

如果我使用json,那麼當數據到達用戶設備時,我不得不將這些數據轉換爲表格形式,以便它可以存儲到本地SQLLite數據庫中?我在想,將數據作爲緩存管理會更好。 – ved

+0

你可以做任何適合數據最好的。你說數據有2K-3K行,所以我認爲它已經是表格形式了 - 你需要做的就是編寫它。如果您將其作爲JSON本地存儲,那麼您在每次訪問時都需要進行解析,或者每次運行程序時都要構建一個DOM。重複的解析速度會很慢,並且爲3K行構建DOM將使用一點內存。因此,將其存儲在sqlite中爲您解決了這兩個問題。 – 323go

相關問題