簡體   English   中英

需要為我的應用程序保存大量記錄……我應該使用本地數據庫嗎?

[英]Need to save a lot of records for my application… should I use a local database instad?

我即將開始為 windows 開發“時間機器”。 我需要在一個表中存儲很多記錄。 每次我執行備份時,我都會寫大約 50,000 條記錄,因為這就是我的計算機中有多少文件(每條記錄與存儲文件無關。記錄將包含每個文件所在的路徑)無論如何我沒有'不知道我是否可以使用 XML 來存儲我的記錄,因為我的查詢不會很復雜,而且它更容易部署而不是創建一個我不知道它是否會更有效的本地數據庫,因為即使查詢會很簡單,我將處理大量數據。 此外,我不知道本地數據庫是否可以大於 2GB,我估計如果經常使用一年,該數據庫將達到 3GB 左右。

我更喜歡使用 XML 並使用 Xpath 進行查詢,以便更輕松地部署我的應用程序。 但是,如果創建本地數據庫效率更高,並且 XML 會因為我有太多記錄而減慢我的應用程序,那么我將創建一個本地數據庫。 任何其他建議都會有所幫助,也許我需要做其他事情。

看看SQLite

這是嵌入式但功能強大的數據庫。 您不需要安裝 SQL 服務器實例。
您可以將此數據庫視為具有某些 API 的文件。 API 允許您對此文件運行 SQL 查詢。

SQL Server 2008 R2 Express允許數據庫大小高達 10GB - 因此考慮到您估計的空間需求,這可能值得考慮。

最好將數據存儲在某種形式的數據庫中,而不是存儲在 XML 中——因為后者會迅速增長到這樣的大小,以至於查詢將變得非常緩慢並且 memory 密集。

當您嘗試訪問數據時,使用 XML 存儲大量數據將需要大量 memory 使用。 在存儲空間使用方面,它也不是很有效。 我建議使用 SQL 版本。 您可以使用 Microsoft SQL 的 Express 版本之一,也可以使用開源 SQL 風格,例如 MySQL。

當您考慮存儲大量信息時,您需要查看關系數據庫。 如果您真的不想 go 這條路線,您可以查看將每個備份存儲在其自己的 XML 文件中。 這將允許更多的可移植性,並且在訪問存檔數據時會減少您的 memory 占用空間。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM