我需要開發一個用於存儲大數目(10到100的數千個)對象的系統。每個對象都像電子郵件一樣 - 有一個主體文本體,以及幾個尺寸有限的輔助文本字段。一個主體將從幾個字節到幾KB的大小。在磁盤上存儲大量不同大小的對象
每個項目都有一個唯一的ID(可能是一個GUID)來標識它。
只有當對象添加到商店時纔會寫入商店。它會經常閱讀。刪除將很少。這些數據幾乎都是人類可讀的文本,因此它可以很容易被壓縮。
的系統,讓我發出I/O和系統的存儲和緩存將是理想的。
我要保存在內存中的索引,用它來映射指數爲對象的單一(和初級)鍵。一旦我有了密鑰,我就會從磁盤或緩存中加載它。
數據管理系統需要我的應用程序的一部分 - 我不希望依賴於OS的服務。或單獨安裝的軟件包。本機(C++)將是最好的,但一個管理(C#)的事情會好的。
我相信,一個數據庫是一個顯而易見的選擇,但是這必須是超快速的查找和加載到一個對象的內存。我對數據庫技術沒有經驗,我擔心一般的關係系統不會有效地處理所有這些可變大小的數據。
(注意,這無關我的工作 - 它的一個個人項目。)
在你的經驗,有什麼可行的替代傳統的關係型數據庫?或者數據庫會爲此工作好嗎?
嗨Tvanfosson,我會保存在內存中的索引,用它來索引映射爲對象的單一(和初級)鍵。一旦我有了密鑰,我就會從磁盤或緩存中加載它。 感謝您的意見:) – Foredecker 2008-11-04 04:57:42