2011-12-22 52 views
1

我有一個現有的HTML5 Web應用程序,我將移植到本機iOS應用程序。當前的應用程序使用MongoDB(即JSON)來存儲所有基於服務器的數據。 MongoDB服務器仍將向iOS應用程序提供中央數據服務,但iOS客戶端上也會保存大量數據(例如100,000個名稱和地址記錄)。iOS數據 - SQL v。JSON - 哪種數據存儲架構最具性能

看來我的選擇是使用SQLite或某種類型的JSON框架。名稱和地址記錄需要使用高性能預測搜索(即在用戶類型時顯示搜索結果)進行本地搜索。

任何人都可以建議哪種數據架構/策略在iPad上最具功能/性能嗎?

btw - 我可能會使用MonoTouch來構建iOS應用程序。

非常感謝。

回答

1

進入SQlite,並調查Apple的CoreData作爲一個選項,因爲它支持sqlite和一個非常完整的數據庫存儲在iOS應用程序中。

如果你想直接與sqlite數據庫進行交互,簽出FMDB作爲一個很好的客觀c抽象層。

一個COMERCIAL選項可能是我見過所謂Locayta Search Mobile包 - 他們有一些很好的演示代碼

0

毫無疑問,使用SQLite。它的性能將始終超越簡單的JSON閱讀。

+0

感謝湯姆。你認爲使用SQLite進行預測性搜索對於100k聯繫人會有好處嗎?還是應該將整個數據庫加載到一個集合中,然後我可以從代碼中枚舉/搜索? – Journeyman 2011-12-22 11:24:30

+0

@joyrneyman我已經在一個應用程序的SQLite數據庫400-600K條目,它很不錯(不是很好,但很好)。 CoreData(正如我所提到的)也可以爲你處理內存/磁盤分頁。 – Jessedc 2011-12-22 11:26:15

+0

@Journeyman除非你想編寫大量的算法來搜索你,否則我會把它留給SQLite去做。 – 2011-12-22 11:36:09

相關問題