我知道使用Coredata和Direct Sql命令在進行本地存儲時用於iOS的區別。但是仍然可以有人提出哪一個更好,更高效,最優化,並且可以使用大數據?電話如何與他們一起工作? Coredata還有上下文互動,所以有沒有增加打電話的速度?非常感謝你的幫助。CoreData和Sqllite用於大數據的工作?
1
A
回答
7
核心數據。蘋果已經投入了大量的精力來使其在iOS上運行良好。考慮到你在有限的CPU和有限的內存環境下工作,你真的想用一個考慮到這些因素的框架。
如果你直接使用SQLite,你需要自己處理所有這些。 ARC不會幫你,因爲它是一個C庫。
核心數據的目標是保持你的記憶。你當然可以打破它,但你會更進一步使用蘋果的圖書館,而不是避免它們。
1
除非你正在做一些非常專業的事情,否則Core Data可能是最合適的。請記住,Core Data不是關係數據庫。
這裏有一些其他的鏈接,以幫助您決定:
- SQLite or Core Data for large database with only queries
- http://www.cocoawithlove.com/2010/02/differences-between-core-data-and.html
- Core Data vs SQLite 3
- Use CoreData or SQLite on iPhone?
此外,如果你決定去SQLite的路線, FMDB是一個很好的目標-C wr衝擊片雷管。
0
"Big data"通常是指數據集的大小超出了常用軟件工具在可容忍的時間內捕獲,管理,管理和處理數據的能力。移動設備絕不會直接處理大數據 - 它們將與數據的子集一起工作,通常通過某種Web服務。儘管如此,整個數據集永遠不會存儲在本地。你通常在談論TB級的信息。
但是,在處理數據的子集時,您使用的方法取決於您正在嘗試執行的操作。核心數據是一個對象圖和持久性框架,而不是關係數據庫。如果您需要管理對象圖並更改爲該圖,Core Data通常非常適合。但是,如果您想要進行復雜的數據挖掘,則最好使用SQLite。
請記住,核心數據經過大量優化,可在有限的處理能力下處理有限的內存;如果你使用的是SQLite,你需要自己做很多的管理。
從設計的角度來看,使用服務器完成繁重的工作 - 查詢和數據挖掘 - 並且只返回所需的子集以便在移動設備上進行如此處理的工作量降到最低。
相關問題
- 1. java bpm適用於大數據和多工作流的子工作流程
- 2. CoreData加載大數據
- 3. 數據庫sqllite
- 4. CoreData和大表
- 5. 用RubyMotion將大數據集導入CoreData
- 6. Java sqllite get_generated_keys不工作
- 7. CoreData:排序操作的最大行數?
- 8. C#sqllite datatable到數據庫更新不會工作
- 9. 從coredata不工作
- 10. 404未找到。使用sqllite輸入數據使用sqllite
- 11. 遠程數據(RestKit和CoreData)
- 12. ios coredata搜索大型數據集
- 13. 蟒蛇數學代碼大於和小於不工作
- 14. 的byte [],使用PreparedStatement和sqllite
- 15. 用於大數據的RDBMS
- 16. 反向工程SQLite3數據庫到coredata
- 17. 在SQLLite中搜索android java不工作
- 18. DatePicker停止CoreData工作
- 19. 搜索工作不好(使用storyBoard,coreData)
- 20. 使用Phonegap從Android的SQLLite數據庫填充數據
- 21. 關於大數據和hadoop的信息
- 22. 當數據庫的大小大於RAM時,MongoDB可以工作嗎?
- 23. tMatchGroup位於大數據Talend開放工作室
- 24. CoreData測試數據?
- 25. CoreData - 數據模型
- 26. 還原CoreData數據
- 27. 雲數據流的工作超出比例最大工作值
- 28. Android中的數據庫Sqllite問題?
- 29. 讀取sqllite數據庫中的問題
- 30. foreach和preg_match上的大量數據無法正常工作
可能的重複http://stackoverflow.com/questions/1318467/use-coredata-or-sqlite-on-iphone –