2014-02-12 30 views
4

看起來RADOS最適合用作Ceph塊存儲和文件系統的存儲後端。但是,如果我想使用對象存儲本身:Ceph對象存儲(RADOS)中對象的最佳大小

  • 是否有最佳的對象大小,可以提供最佳性能?
  • 大量小物體有問題嗎?
  • 有多大的物體可以不麻煩?

如果你能分享你的經驗,那將是非常棒的。

回答

6

對象存儲中沒有對象的最佳大小,實際上,這種靈活性對於固定大小的塊存儲來說是最大的好處之一。通常,應用程序將使用這種靈活性將其數據模型沿着方便的邊界分解。也就是說,如果您要存儲非常小或非常大的對象,則應考慮一些注意事項。

大量小物體有問題嗎?

從來沒有一個小對象的功能問題,儘管過去由於存儲對象的方式而效率低下。然而,在Ceph(Firefly)的下一個版本中,有一種使用LevelDB作爲後端的方法,使得小對象的效率更高。

有多大的物體可以不會造成麻煩?

假設您在RADOS中使用複製(與建議的對象分條功能和擦除編碼後端相比),則會將對象完全複製到一組物理存儲節點。因此,基於對象被複制到的物理節點的存儲容量,對象的大小具有固有的大小限制。

這種操作模式也暗示着每個對象的I/O性能將對應於物理設備(數據和日誌驅動器)的性能的實際限制。這意味着將對象看作I/O並行的單元通常是有用的,儘管在實踐中許多對象將映射到同一組設備。

這個問題對於擦除編碼的後端可能會有不同的答案,應用程序總是可以跨越較小的對象分割大型數據集。