
SNKF-01
元數據
元數據系統的好壞關(guān)系到整個(gè)對象存儲系統的可靠性、可用性和一致性,并且會(huì )影響到性能。因此,元數據部分是對象存儲系統的核心,也是架構和保障的重中之重。
元數據最基本的作用在于數據對象的定位。對象存儲的任務(wù)是保存用戶(hù)提交的數據對象,并以用戶(hù)指定的名稱(chēng)(Key)對其標識。用戶(hù)如需獲取一個(gè)數據對象,要向對象存儲系統提交Key,存儲系統便會(huì )根據Key找到相應的數據對象,然后反饋給用戶(hù)。存儲系統根據Key找到數據對象存放位置的過(guò)程,便是依托元數據完成的。
元數據的特性
根據統計,元數據和數據對象的大小之比大體在1:100到1:10000之間,具體的比率,取決于數據對象的平均大小。因此,元數據相比數據對象本身更加容易操作和處理。
元數據的重要性在于它是整個(gè)數據存儲的基準:整個(gè)系統擁有哪些數據對象,歸屬哪些容器、哪些用戶(hù)。一個(gè)數據對象,元數據說(shuō)有,就有了;元數據說(shuō)沒(méi)有,就沒(méi)有了。所以,元數據的可靠性代表著(zhù)存儲系統的可靠性。數據校驗、空間回收等操作都依賴(lài)于元數據。元數據一旦有所差錯,必然造成整個(gè)數據存儲的錯失和混亂。在性能方面,幾乎所有的操作都涉及到元數據,整個(gè)元數據系統的訪(fǎng)問(wèn)壓力遠遠超過(guò)存儲系統。因而,元數據的性能決定了存儲系統的整體響應。
元數據存儲保真問(wèn)題及解決方案
可靠性與可用性問(wèn)題
首先我們必須解決可靠性和可用性問(wèn)題,盡可能保證保存下來(lái)的元數據不丟失,也盡可能讓服務(wù)始終在線(xiàn)。解決這一問(wèn)題的方法也不是很難:增加從服務(wù)器的數量,并且允許主從復制失敗。如此,當一臺從服務(wù)器下線(xiàn)后,其他從服務(wù)器依然可以接收數據,確保任何時(shí)刻一份數據都至少擁有兩個(gè)以上的副本,以維持可靠性。不過(guò),具體操作上并沒(méi)有那么簡(jiǎn)單,主從之間復制成功的數量必須滿(mǎn)足一個(gè)閾值。這個(gè)閾值也必須滿(mǎn)足一個(gè)條件才能保證數據一致性,關(guān)于這個(gè)要點(diǎn)后面會(huì )具體闡述。
數據丟失問(wèn)題
解決數據丟失問(wèn)題可以采取多副本模型。多副本模型基于這樣一個(gè)簡(jiǎn)單而直觀(guān)的思路:?jiǎn)吸c(diǎn)會(huì )造成數據丟失,并引發(fā)可用性問(wèn)題,那么就將數據同時(shí)寫(xiě)入多個(gè)服務(wù)器,以防單點(diǎn)的出現。不同于主從模型中,讀寫(xiě)都針對一臺主服務(wù)器,從服務(wù)器只是間接地參與可靠性和可用性的保障,多副本模型的每臺服務(wù)器任何時(shí)刻都在直接發(fā)揮著(zhù)保障作用。由于每次讀寫(xiě)都施加在所有的副本服務(wù)器上,任何時(shí)刻都有不止一份數據被保存下來(lái),所以數據丟失自然就解決了。
小結:?jiǎn)?wèn)題往往比答案重要,本篇文章旨在揭露云存儲下元數據存儲的可靠性與可用性問(wèn)題以及數據丟失等問(wèn)題,為人們使用云存儲敲一個(gè)警鐘。
相關(guān)熱詞搜索:云計算服務(wù)云存儲元數據大數據云計算是什么