認識分布式存儲
分布式存儲系統(tǒng)懂盐,是通過網(wǎng)絡(luò)將數(shù)據(jù)分散存儲在多臺獨立的設(shè)備上牙躺。
分布式存儲系統(tǒng)的特性
可擴展
分布式存儲系統(tǒng)可以擴展到甚至幾千臺的集群規(guī)模佩迟,而且隨著集群規(guī)模的增長酬诀,系統(tǒng)整體性能表現(xiàn)為線性增長磺芭。分布式存儲的水平擴展有以下幾個特性:
??
?? 1)節(jié)點擴展后有梆,舊數(shù)據(jù)會自動遷移到新節(jié)點是尖,實現(xiàn)負載均衡,避免單點過熱的情況出現(xiàn)泥耀;
??
?? 2)水平擴展只需要將新節(jié)點和原有集群連接到同一網(wǎng)絡(luò)饺汹,整個過程不會對業(yè)務(wù)造成影響;
??
?? 3)當(dāng)節(jié)點被添加到集群痰催,集群系統(tǒng)的整體容量和性能也隨之線性擴展兜辞,伺候新節(jié)點的資源就會被管理平臺接管,被用于分配或者回收
??
低成本
分布式存儲系統(tǒng)的自動容錯夸溶、自動負載均衡機制使其可以構(gòu)建在普通的PC機之上弦疮。另外,線性擴展能力也使得增加蜘醋、減少機器非常方便胁塞,可以實現(xiàn)自動運維。
??
??
高性能
無論是針對整個集群還是單臺服務(wù)器,都要求分布式存儲系統(tǒng)具備高性能啸罢。
??
??
易用
分布式存儲系統(tǒng)需要能夠提供易用的對外接口编检,另外,也要求具備完善的監(jiān)控扰才、運維工具允懂,并能夠與其他系統(tǒng)集成。
??
易管理
可通過一個簡單的WEB界面就可以對整個系統(tǒng)進行配置管理衩匣,運維簡便蕾总,極低的管理成本。
??
??
分布式存儲系統(tǒng)的挑戰(zhàn)主要在于數(shù)據(jù)琅捏、狀態(tài)信息的持久化生百,要求在自動遷移、自動容錯柄延、并發(fā)讀寫的過程中保證數(shù)據(jù)的一致性蚀浆,分布式存儲涉及的技術(shù)主要來自兩個領(lǐng)域,分布式系統(tǒng)以及數(shù)據(jù)庫搜吧。
存儲分類
??
本地存儲本地的文件系統(tǒng),不能放在網(wǎng)絡(luò)上用.
??ext3??ext4??xfs??ntfs
??
網(wǎng)絡(luò)存儲---網(wǎng)絡(luò)文件系統(tǒng)市俊、共享的都是文件系統(tǒng)
????nfs??????網(wǎng)絡(luò)文件系統(tǒng)
????hdfs??????分布式網(wǎng)絡(luò)文件系統(tǒng)
????glusterfs????分布式網(wǎng)絡(luò)文件系統(tǒng)
??
共享的是裸設(shè)備
??塊存儲 cinder ??ceph(塊存儲??對象存儲??網(wǎng)絡(luò)文件系統(tǒng)-分布式)
??SAN(存儲區(qū)域網(wǎng))
??
分布式
??集群
??
分布式存儲分類介紹
Hadoop HDFS(大數(shù)據(jù)分布式文件系統(tǒng))
HDFS(Hadoop Distributed File System)是一個分布式文件系統(tǒng),是hadoop生態(tài)系統(tǒng)的一個重要組成部分滤奈,是hadoop中的存儲組件摆昧、HDFS是一個高度容錯性的系統(tǒng)、HDFS能提供高吞吐量的數(shù)據(jù)訪問蜒程,非常適合大規(guī)模數(shù)據(jù)集上的應(yīng)用据忘。
??
??
HDFS的優(yōu)點:
??1.高容錯性
??????數(shù)據(jù)自動保存多個副本
??????副本丟失后,自動恢復(fù)
??2.良好的數(shù)據(jù)訪問機制
??????一次寫入,多次讀取,保證數(shù)據(jù)一致性
??3.適合大數(shù)據(jù)文件的存儲
??????TB甚至PB級數(shù)據(jù)
??????擴展能力很強
?
HDFS的缺點:
??1.低延遲數(shù)據(jù)訪問
??????難以應(yīng)付毫秒級以下的應(yīng)用
??2.海量小文件存取
??????占用NameNode大量內(nèi)存
??3.一個文件只能有一個寫入者
??????僅支持append(追加)
?
OpenStack的對象存儲Swift
OpenStack object Storage(swift)是openStack開源云計算項目的子項目之一。Swift的目的是使用普通硬件來構(gòu)建冗余的搞糕、可擴展的分布式對象存儲集群勇吊,存儲容量可達PB級。Swift的是用Python開發(fā)
??
其主要特點為:
1窍仰、各個存儲的節(jié)點完全對等汉规,是對稱的系統(tǒng)架構(gòu)。
2驹吮、開發(fā)者通過一個RESTful HTTP API與對象存儲系統(tǒng)相互作用针史。
3、無單點故障:Swift的元數(shù)據(jù)存儲是完全均勻隨機分布的碟狞,并且與對象文件存儲一樣啄枕,元數(shù)據(jù)也會存儲多份。整個Swift集群中族沃,也沒有一個角色是單點的频祝。
4泌参、在不影響性能的情況下,集群通過增加外部節(jié)點進行擴展常空。
5沽一、無限的可擴展性:這里的擴展性分兩方便,一是數(shù)據(jù)存儲容量無線可擴展漓糙;二是Swift性能(如QPS铣缠、吞吐量等)可線性提升,擴容只需要簡單地新增機制昆禽,系統(tǒng)會自動完成數(shù)據(jù)遷移等工作蝗蛙,使各存儲節(jié)點重新達到平衡狀態(tài)。
6醉鳖、極高的數(shù)據(jù)持久性
??
??
??
Swift可以用一下用途捡硅;
圖片、文檔存儲
長期保存的日志文件
存儲媒體庫(照片辐棒、音樂、視頻等)
視頻監(jiān)控文件的存檔
總結(jié):Swift適合用來存儲大量的牍蜂、長期的漾根、需要備份的對象。
公有云對象存儲
公有云大都只有對象存儲鲫竞。例如辐怕,谷歌云存儲是一個極速,具有可擴展性和高可用性的對象存儲从绘。
Amazon類似產(chǎn)品就是S3寄疏; http://aws.amazon.com/s3;
??
微軟類似產(chǎn)品Azure Bolb: http://azure.microsoft.com/en-us/documentation/articles/storage-dotnet-how-to-use-blobs/;
??
阿里類似的oss: https://ww.aliyun.com/product/oss/;
??
阿里云對象存儲oss
阿里云對象存儲服務(wù)(object Storage Service,簡稱OSS)僵井,是阿里云提供的海量陕截、安全、低成本批什、高可靠的云存儲服務(wù)
?
?
存儲類型(storage class)
OSS提供標(biāo)準(zhǔn)农曲、低頻訪問、歸檔三種存儲類型驻债,其中標(biāo)準(zhǔn)存儲類型提供高可靠乳规、高可用、高性能的對象存儲服務(wù)合呐,能夠支持頻繁的數(shù)據(jù)訪問暮的;低頻訪問存儲類型適合長期保存不經(jīng)常訪問的數(shù)據(jù)(平均每月訪問頻率1到2次),存儲單價低于標(biāo)準(zhǔn)類型淌实;歸檔存儲類型適合需要長期保存(建議半年以上)的歸檔數(shù)據(jù)冻辩,在三種存儲類型中單價最低猖腕。
??
??
應(yīng)用場景
1、圖片和音視頻等應(yīng)用的海量存儲
??OSS可用于圖片微猖、音視頻谈息、日志等海量文件的存儲
2、云端數(shù)據(jù)處理
??上傳到OSS后凛剥,可以配合媒體處理服務(wù)和圖片處理服務(wù)進行云端的數(shù)據(jù)處理侠仇。
3、網(wǎng)頁或者移動應(yīng)用的靜態(tài)和動態(tài)資源分離
??利用海量互聯(lián)網(wǎng)帶寬犁珠,OSS可以實現(xiàn)海量數(shù)據(jù)的互聯(lián)網(wǎng)并發(fā)下載逻炊。
GlusterFS分布式文件系統(tǒng)
GlusterFS (GNU ClusterFile System)是一種全對稱的開源分布式文件系統(tǒng),所謂全對稱是指GlusterFS采用彈性哈希算法犁享,沒有中心節(jié)點余素,所謂節(jié)點全部平等。GlusterFS配置方便炊昆,穩(wěn)定性好桨吊,可輕松達到PB級容量,數(shù)千個節(jié)點凤巨,2011年被紅帽收購视乐。
??
PB級容量 ??高可用性??基于文件系統(tǒng)級別共享??分布式??去中心化
??
GlusterFS存儲卷的類型
??
基本類型:條帶,復(fù)制敢茁,哈希
復(fù)合卷
復(fù)合卷就是分布式復(fù)制佑淀,分布式條帶,分布式條帶復(fù)制卷彰檬,像分布式復(fù)制伸刃,分布式條帶這兩個是比較常用的,像分布式條帶復(fù)制三種揉一塊兒的比較少逢倍。
??
各種卷的整理
分布卷:存儲數(shù)據(jù)時捧颅,將文件隨機存儲到各個GlusterFS機器上
????優(yōu)點:存儲數(shù)據(jù)時,讀取速度快
????缺點:一個birck壞掉较雕,文件就會丟失
復(fù)制卷:存儲數(shù)據(jù)時隘道,所有文件分別存儲到每臺glusterfs機器上
????優(yōu)點:對文件進行的多次備份,一個brick壞掉郎笆,文件不會丟失谭梗,其他機器上的brick上面有備份
????缺點:占用資源
條帶卷:存數(shù)據(jù)時,一個文件分開存到每臺glusterfs機器上
????優(yōu)點:對大文件宛蚓,讀寫速度快
????缺點:一個birck壞掉激捏,文件就會壞掉
最常見的GPFS和HDFS有什么區(qū)別?
GPFS和Hadoop的HDFS系統(tǒng)對比凄吏,它涉及用于在商用硬件上存儲類似或更大的數(shù)據(jù)
???&emsp
HDFS還將文件分割成塊远舅,并將它們存儲在不同的文件系統(tǒng)節(jié)點內(nèi)闰蛔。
???&emsp
HDFS對磁盤可靠性依賴并不高,它可以在不通的節(jié)點內(nèi)存儲塊的副本图柏。保存單一副本塊的一個節(jié)點出現(xiàn)故障可以再復(fù)制該組其他的有效塊內(nèi)的副本序六。相較而言,雖然GPFS支持故障節(jié)點恢復(fù)蚤吹,但它是一個更嚴重的時間例诀,它可能包括數(shù)據(jù)(暫時性)丟失的高風(fēng)險
???&emsp
GPFS支持完整的Posix文件系統(tǒng)語義。HDFS和GFS(谷歌文件系統(tǒng))并不支持完整的Posix語義裁着。
???&emsp
GPFS跨文件系統(tǒng)分布它的目錄索引和其他元數(shù)據(jù)繁涂。相反,Hadoop將它們保留在主要和次要Namenode中二驰,大型服務(wù)器必須在RAM內(nèi)存儲所有的索引信息扔罪。
???&emsp
GPFS將文件分割成小塊,Hadoop HDFS喜歡64MB甚至更多的塊桶雀,因為這降低了Namenode的儲存需求矿酵。小塊或很多小的文件會快速填充文件系統(tǒng)的索引,因此限制了文件系統(tǒng)的大小矗积。