我有一個應用程序,我每0.1秒存儲大約1k字節的數據。這是36MByte /小時,或大約600MByte /天。我可以使用什麼技術來存儲數據
數據是高度可壓縮的,所以它應該壓縮在10:1和100:1之間。所有數據都由時間戳記引用。
我的問題是:我可以用什麼技術來存儲這些數據?
約束:
- 將數據插入到數據庫不能隨着數據庫大小變大的時間。這個限制排除了Microsoft SQL Server(我們嘗試了它,並且在5天后它停止了,因爲每個「插入」都花了一分鐘)。
- 我們可以有效地暫停每天4小時的數據記錄,這會讓我們有時間做壓縮等。
- 我們希望與LINQ for .NET兼容,這意味着我們可能需要一個數據庫一個LINQ適配器(一個MySQL風格的界面可以)。
您的SQL服務器配置不正確。可以將其設置爲無限期地插入一段時間。 – 2010-12-19 22:20:06
插入時間超過一分鐘? 99%的時間,這是查詢問題,而不是數據庫。嘗試使用NOLOCK指定Insert,並確保如果插入的行中有索引,則插入的行將在索引的「結尾」處或附近的某處,而不是隨機在中間。 – Juliet 2010-12-19 22:22:29
我會重新評估是否需要使用Linq ...雖然我認爲Linq很棒,而且我自己也使用它,但對於這樣的事情,我會謹慎的鼓勵客戶端處理的編程方法(而不是服務器端處理)。 – Arafangion 2010-12-19 22:41:07