大量小文件(幾百KB)如何高速存儲?
比如說多個採集設備不斷採集的數據,如何快速的存儲到硬碟上?非分散式文件系統。
如果是億級的1k以下的文件呢?
商用控制器存儲
高iops 統一存儲san+nas 同時支持塊級與文件級數據
有錢就上傲騰905p,沒錢就內存配合primocache開緩寫,根據你內存大小和小文件下載速度設置緩寫時間間隔,具體官網有講
高速(I/O)體現在兩個方面,匯流排傳輸速度和存儲介質性能。問題沒有說明傳輸匯流排類型和存儲設備類型,這裡就忽略傳輸速度的影響,並假設存儲介質性能固定的情況下,比如磁碟。單從文件系統底層來講,操作系統已經做了寫優化,只要保持磁碟順序寫就行了。當然壓縮也是可以的,需要綜合考慮CPU計算性能。另外可以將文件系統的簇大小調整到128KB或256KB,甚至512KB,只要稍大於問題中「幾百KB"即可。代碼還需要需要考慮非同步I/O,並將讀寫分離。
在固態里打個壓縮包。有錢大容量傲騰,內存緩存相當不安全。沒固態建議關電腦 親,老電腦換了就快了。
存儲行業早就有成熟的解決方案了,對象存儲非常適合干這個活:
1、文件數量可以支持幾百億個,沒有任何NAS文件系統可以支持這個數量級的文件
2、軟體定義全分散式架構,把讀寫分散到所有存儲節點上,可以高速存儲大量IoT設備生成的並發數據流
喜歡折騰的可以用開源的Ceph,需要成熟商業產品的可以選國內廠商的方案,不差錢的用華為,追求性價比的可以選杉岩數據(華為系創業公司),就這樣。
推薦閱讀: