想象一下,您正在處理用戶輸入的長度大約爲10,000個字符的許多字符串。將它們自動寫入頁面或將它們輸入到數據庫中的表格上會更有效率嗎?我希望這個問題很清楚......將文本保存爲文件或數據庫效率更高?
回答
這取決於你想要達到什麼樣的「效率」。
這裏就是我的意思是:
- 你會成爲改變你的文本字符串的內容?
- 你會做什麼樣的搜索?
- 當你提取文本時,你會用它做什麼?
我的意見是,如果你不會更改內容,也不會執行太多分析,那麼最好使用數據庫。
取決於你如何訪問它們,但通常使用FS會帶來更好的性能。這是顯而易見的原因,數據庫是建立在FS之上的另一層,並直接使用FS,假設沒有額外的繁重處理(例如,有100個命名文件,而不是按特殊順序排列的一個大型文件)解析),將爲您節省DBMS操作。
同意了,儘管它_really_取決於。特別是關於他們是否會被更改,以及是否需要重新設計靜態頁面 – rmeador 2009-12-03 18:59:54
rmeador是對的,我假設這個問題只是關於查找和讀取數據。 TrippyD也有一點--10K記錄的數據量不夠大,實際上感覺不到任何差異。 – synhershko 2009-12-03 19:03:15
10k不是特別大,所以要麼很好。我會親自使用數據庫,因爲它可以讓你輕鬆搜索。
我在想,如果SQLite是兩全其美的,或者至少,這個大小的工作最好的數據庫。
真正的答案她是你要用這些字符串做什麼。
數據庫旨在能夠快速返回特定的記錄。如果你只是選擇SELECT * FROM Table,然後將它們連接在一起,那麼使用數據庫就毫無意義。
但是,如果您希望能夠搜索的數據之間有關係,那麼數據庫可能會更有效。
E.G.,您是否希望能夠在一組日期中提取一組用戶的所有文本記錄?查找匹配某些記錄的用戶的所有記錄?
這些類型的負載可能比天真的實現效率更高,即使它避免了某些訪問層,仍然可能比體面的更快。
有很多的考慮。正如其他人所說 - 任何一種方法對於少數10k行(數千)都可以正常工作。
但是你的應用的其餘部分是做什麼的?如果它完成了數據庫中的所有內容,那麼我也傾向於把它放在那裏;相反的情況也是如此。
你將如何選擇這些?你需要做複雜的文字搜索嗎?如果是這樣,數據庫可能不是最好的。或者,你會添加新的屬性,搜索這些屬性 - 還是將它們與其他表中的數據進行匹配?在這種常見的情況下,數據庫會更好。
如果您的數據非常龐大(數百萬行),並且您的性能要求不是非常高 - 您可能需要對它們進行壓縮並將它們存儲在文件系統中。
最後,數據質量有多重要?鑑於良好數據庫的功能,使用數據庫保證良好的數據質量要容易得多。
- 1. 將文本保存爲mysql數據庫中的前置文件
- 2. 保存XML文件或數據庫上的文本
- 3. 將memcache數據保存到文件或數據庫中
- 4. 如何將多行文本框中的值保存到數據庫或如何將文本文件上的非分隔文本保存到數據庫
- 5. 將SQLite數據庫保存到文件?
- 6. 將文件保存到數據庫中
- 7. MySQL將文件保存到數據庫
- 8. 將數據庫保存到文本文件
- 9. 將文本文件保存在數據庫中並檢索
- 10. 將數據庫的所有值保存到文本文件?
- 11. 將文本文件保存到mysql數據庫中c#
- 12. 更高效地將xml文件轉換爲數據框
- 13. 在數據庫或文件系統中保存PDF文件
- 14. 爲什麼將文本文件保存到數據庫會導致重複?
- 15. IPhone HTTP發佈文本數據並保存爲文本文件
- 16. 如何導入文本文件並將數據保存到數據庫中?
- 17. 將文本保存爲數據庫中的html
- 18. Ansible保管庫不保存更改與崇高文本
- 19. 將值存儲在web.config中 - appSettings或configSection - 哪種效率更高?
- 20. 保存文本數據庫yii2
- 21. 將數據框保存爲文本文件而不使用數據框API
- 22. 實時聊天:直接在數據庫或文本文件中保存?
- 23. 如何將git存儲保存爲文件或文件目錄?
- 24. 創建文本文件好還是保存到數據庫好?
- 25. PHP:上傳文本文件,並保存在數據庫
- 26. 數據沒有被保存在文本文件中(C++ Fstream庫)
- 27. 如何將保存在文本文件中的數據保存到mongo數據庫中?
- 28. mysql漏洞。將數據保存在php文件或mysql數據庫中
- 29. 將Blob數據從SQLite數據庫保存到文件
- 30. 存儲在數據庫或文件中的文本
+1,詢問OP想要處理數據到底是什麼。但我會認爲,如果你要改變內容或分析很多,文件系統會更好。 – 2009-12-03 19:13:00
我在計劃可以頻繁編輯內容並搜索字符串的各個位。我將一次提取整個文本塊。 – Robbie 2009-12-03 19:14:43
我同意,如果內容頻繁變化,OP會比文件系統更好 - 我想我已經明確了! – 2009-12-04 16:21:52