我的應用程序每秒接收大約2000條字符串消息,每條消息約300個字符長。在SQL Server中存儲大量字符串消息的最有效方法?
我需要將所有消息存儲在數據庫中。我正在使用SQL Express 2008和。 NET。
我在想內存中的所有數據,直到它達到一定的限制(例如10000條消息= 5秒),然後一次寫下來。
這樣數據將每5秒寫入硬盤,而不是每秒。
我的方法是否足夠好?我應該使用什麼方法來獲得以下結果?
- 消息不會在內存中堆積
- 硬盤驅動器將不會自殺:)
注:沒有必要解析字符串,唯一的事情是將它們存儲他們到達的順序。
這聽起來像一個大量的數據。快速計算告訴我,您需要每天存儲大約50 GB的數據,我認爲將其存儲在數據庫中並不可行。這些數據是無限期存儲還是被處理並逐漸刪除? – CyberDude
我們不要忘記每個數據庫的(IIRC)10GB的Express限制。您將在大約5個小時內達到此限制。 – SWeko
@CyberDude:感謝您的快速回復。我更喜歡儘可能地存儲。但由於數據量很大,一旦達到存儲限制,我將刪除一些舊數據,以便爲新數據騰出空間。 – MichaelS