云存儲技術(shù)和應(yīng)用課件_第1頁
云存儲技術(shù)和應(yīng)用課件_第2頁
云存儲技術(shù)和應(yīng)用課件_第3頁
云存儲技術(shù)和應(yīng)用課件_第4頁
云存儲技術(shù)和應(yīng)用課件_第5頁
已閱讀5頁,還剩141頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

云存儲技術(shù)和應(yīng)用云存儲技術(shù)和應(yīng)用1提綱存儲發(fā)展歷史云存儲概念和技術(shù)云存儲應(yīng)用提綱存儲發(fā)展歷史2存儲的發(fā)展歷史直連存儲DAS存儲區(qū)域網(wǎng)絡(luò)SAN網(wǎng)絡(luò)附著存儲NAS對象存儲設(shè)備OSD存儲的發(fā)展歷史直連存儲DAS3存儲發(fā)展歷史-直連存儲DASDirect-AttachedStorage概念:存儲設(shè)備是通過電纜(通常是SCSI接口)直接到服務(wù)器的,I/O(輸入/輸入)請求直接發(fā)送到存儲設(shè)備。存儲發(fā)展歷史-直連存儲DASDirect-Attached4存儲發(fā)展歷史-直連存儲DASDirect-AttachedStorage備份和恢復(fù):占用服務(wù)器資源,數(shù)據(jù)量越大,備份和恢復(fù)的時間就越長CPU發(fā)展速度比存儲發(fā)展速度快,磁盤陣列容量增大,IO成為瓶頸服務(wù)器或磁盤陣列擴(kuò)展都需要停業(yè)務(wù),電信和銀行無法忍受服務(wù)器SCSI插槽數(shù)量有限,存儲資源和數(shù)據(jù)無法服務(wù)器之間共享存儲發(fā)展歷史-直連存儲DASDirect-Attached5存儲發(fā)展歷史-存儲區(qū)域網(wǎng)絡(luò)SANStorageAreaNetwork

概念:SAN的概念是允許存儲設(shè)備和CPU(服務(wù)器)之間建立直接的高速網(wǎng)絡(luò)(與LAN相比)連接,通過這種連接實(shí)現(xiàn)只受光纖線路長度限制的集中式存儲。光纖交換機(jī)存儲發(fā)展歷史-存儲區(qū)域網(wǎng)絡(luò)SANStorageAreaN6存儲發(fā)展歷史-存儲區(qū)域網(wǎng)絡(luò)SANStorageAreaNetwork

獨(dú)立于服務(wù)器網(wǎng)絡(luò)的高速光纖存儲網(wǎng),適合大數(shù)據(jù)高速處理存儲資源全局多主機(jī)動態(tài)共享備份與恢復(fù):不需要服務(wù)器參與IO帶寬:多個服務(wù)器可以并行訪問統(tǒng)一存儲設(shè)備在線升級:在線增加服務(wù)器或存儲設(shè)備擴(kuò)展性:光纖交換機(jī)提供很多接口,也可以連接其他交換機(jī)存儲發(fā)展歷史-存儲區(qū)域網(wǎng)絡(luò)SANStorageAreaN7存儲發(fā)展歷史-塊訪問存儲發(fā)展歷史-塊訪問8存儲發(fā)展歷史-塊訪問存儲發(fā)展歷史-塊訪問9存儲發(fā)展歷史-網(wǎng)絡(luò)附著存儲NASNetworkAttachedStorage概念NAS由SUN公司在上個世紀(jì)80年代中期推出NFS開始,是一種面向用戶提供文件級服務(wù)的專用數(shù)據(jù)存儲設(shè)備,存儲系統(tǒng)不再通過I/O總線附屬于某個特定的服務(wù)器或客戶機(jī),而是直接通過網(wǎng)絡(luò)接口與網(wǎng)絡(luò)直接相連,由用戶通過網(wǎng)絡(luò)訪問。存儲發(fā)展歷史-網(wǎng)絡(luò)附著存儲NASNetworkAttach10存儲發(fā)展歷史-網(wǎng)絡(luò)附著存儲NASNetworkAttachedStorage容易部署:不需要依賴任何其他設(shè)備,只要有一個網(wǎng)絡(luò)端口就可以在任何能上網(wǎng)的設(shè)備上使用易于使用:文件接相對塊接口更容易使用文件共享:方便多個主機(jī)共享數(shù)據(jù)長距離傳輸:基于IP網(wǎng)絡(luò)易于擴(kuò)展:簡單的增加NAS設(shè)備到網(wǎng)絡(luò)中即可低成本:相對SAN價格便宜存儲發(fā)展歷史-網(wǎng)絡(luò)附著存儲NASNetworkAttach11存儲發(fā)展歷史-文件訪問存儲發(fā)展歷史-文件訪問12存儲發(fā)展歷史-文件訪問文件的Inode包含多個塊,為了提高大文件操作效率還會將兩個或三個塊組合起來提供訪問。存儲發(fā)展歷史-文件訪問文件的Inode包含多個塊,為了提高大13存儲發(fā)展歷史-本地文件系統(tǒng)文件/目錄管理10%工作量塊管理90%工作量存儲發(fā)展歷史-本地文件系統(tǒng)文件/目錄管理10%工作量14存儲發(fā)展歷史-分布式文件系統(tǒng)通過NFS/CIFS接口訪問存儲發(fā)展歷史-分布式文件系統(tǒng)通過NFS/CIFS接口訪問15存儲發(fā)展歷史-對象存儲存儲發(fā)展歷史-對象存儲16存儲發(fā)展歷史-對象存儲設(shè)備OSDSCSIBlockInterfaceStorageDeviceBlockI/OManagerObjectInterfaceApplicationsFileSystemUserComponentFileSystemStorageComponentSystemCallInterfaceCPUApplicationsFileSystemUserComponentSystemCallInterfaceCPUStorageDeviceBlockI/OManagerFileSystemStorageComponent存儲發(fā)展歷史-對象存儲設(shè)備OSDSCSIBlockInte17存儲發(fā)展歷史-對象存儲設(shè)備OSDManagersObject-basedStorageDevicesMANAGEMENTEthswitchSANSECRETKEYSECRETKEYSECRETKEYAccessRequestDATAValidateCapabilityClient存儲發(fā)展歷史-對象存儲設(shè)備OSDManagersObjec18存儲發(fā)展歷史-對象存儲vs塊存儲存儲發(fā)展歷史-對象存儲vs塊存儲19存儲發(fā)展歷史-對象存儲vs文件存儲存儲自治:容量擴(kuò)展負(fù)載均衡備份QoS、SLA感知和數(shù)據(jù)分組預(yù)取壓縮/去冗余強(qiáng)安全/加密Compliance、Retention、securedelete可用性、副本自治愈存儲發(fā)展歷史-對象存儲vs文件存儲存儲自治:20存儲發(fā)展歷史-對象定義對象的定義Object

ID:對象唯一標(biāo)示User

Data:對象的數(shù)據(jù)Metadata:元數(shù)據(jù),空間管理信息Attributes:對象屬性存儲發(fā)展歷史-對象定義對象的定義21存儲發(fā)展歷史總結(jié)存儲發(fā)展歷史總結(jié)22提綱存儲發(fā)展歷史云存儲概念和技術(shù)云存儲應(yīng)用提綱存儲發(fā)展歷史23云存儲需求云存儲需求24云存儲需求2011年全球數(shù)據(jù)量將達(dá)1.8ZB,這人類將開始進(jìn)入ZB時代云存儲需求2011年全球數(shù)據(jù)量將達(dá)1.8ZB,這人類將開始進(jìn)25云存儲需求高容量:海量,且可擴(kuò)展高性能:快速的訪問、定位高可用:個別磁盤失效,甚至整個中心被毀低成本:傳統(tǒng)的NAS、SAN技術(shù)構(gòu)建大規(guī)模存儲系統(tǒng)成本很高云存儲需求高容量:海量,且可擴(kuò)展26云存儲概念和特點(diǎn)云存儲是在云計算(cloudcomputing)概念上延伸和發(fā)展出來的一個新的概念,是指通過集群應(yīng)用、網(wǎng)格技術(shù)或分布式文件系統(tǒng)等功能,將網(wǎng)絡(luò)中大量各種不同類型的存儲設(shè)備通過應(yīng)用軟件集合起來協(xié)同工作,共同對外提供數(shù)據(jù)存儲和業(yè)務(wù)訪問功能的一個系統(tǒng)。高可用、可擴(kuò)展、按需付費(fèi)云存儲概念和特點(diǎn)云存儲是在云計算(cloudcomputi27GoogleCloudGoogleFileSystemBigTableGoogleAppEngineMapReduceMicrosoftAzureLiveServicesSQLServices.NETServicesSharepointServicesDynamicCRMServicesIBMBlueCloudHadoopDB2Xen&PowerVMWebsphereTivoliSoftwareAmazonCloudS3SimpleDBEC2SimpleQueueEBS云存儲有哪些?GoogleGoogleFileSystemBigTab28云存儲的熱點(diǎn)分布式文件系統(tǒng)(Google

GFS、Hadoop

HDFS。。)NoSQL數(shù)據(jù)庫(Google

BigTable、Facebook

Cassandra。。)對象存儲(Amazon

S3)分布式塊存儲(Amazon

EBS)云存儲的熱點(diǎn)分布式文件系統(tǒng)(GoogleGFS、Hadoo29分布式文件系統(tǒng)應(yīng)用場景Google:搜索、AppEngine、Gmail、Youtube、Map。。Baidu:Hadoop

HDFS搜索、數(shù)據(jù)分析Taobao:TFS存儲圖片網(wǎng)頁Hadoop

HDFS數(shù)據(jù)分析分布式文件系統(tǒng)應(yīng)用場景Google:30GFS-需求分析組件失效是常態(tài)文件規(guī)模一般都在幾個G以上Writeoncereadmany負(fù)載模型文件寫入后,基本不需要重寫操作文件被大量地連續(xù)讀操作,隨機(jī)讀很少發(fā)生允許大量客戶端并行追加寫同一個文件,追加寫操作必須是原子操作對海量數(shù)據(jù)處理來說,帶寬是稀缺資源GFS-需求分析組件失效是常態(tài)31GFS-接口(API)提供文件系統(tǒng)接口非標(biāo)準(zhǔn)的POSIXAPI僅僅提供幾種最基本的操作–create,delete,open,close,read,write利用寫時拷貝(copy-on-write)技術(shù)實(shí)現(xiàn)快照功能GFS-接口(API)提供文件系統(tǒng)接口32GFS-體系結(jié)構(gòu)文件被切割成固定大小的塊(Chunk)一個主Master,多個ShadowMaster多個Chunkserver多clientGFS-體系結(jié)構(gòu)文件被切割成固定大小的塊(Chunk)33GFS-Master設(shè)計主master將所有元數(shù)據(jù)保存在內(nèi)存中,實(shí)現(xiàn)快速訪問同時提供chunk令牌管理、孤立塊垃圾回收、塊遷移、副本管理功能定期與chunkserver發(fā)送心跳消息,收集chunkserver狀態(tài)任何對元數(shù)據(jù)的寫操作都會保存到日志中元數(shù)據(jù)在一段時間內(nèi)會緩存在clients中ShadowmastersMaster的狀態(tài)(checkpoint和log)會定期復(fù)制到shadowmasters中,以保證系統(tǒng)的可靠性。當(dāng)master失效后,系統(tǒng)會嘗試從shadowmaster中讀取checkpoint和log進(jìn)行數(shù)據(jù)恢復(fù),恢復(fù)周期一般為秒級即使master失效,shadow也能提供文件的只讀訪問。GFS-Master設(shè)計主master34GFS-ChunkServer設(shè)計在linux系統(tǒng)中以實(shí)體文件存放chunk默認(rèn)放置3個chunk副本,2個在同一個機(jī)架的不同機(jī)器,1個在另外的機(jī)架平衡訪問負(fù)載平衡存儲空間提供可用性和可靠性

塊數(shù)據(jù)不緩存塊大小為64MB減少元數(shù)據(jù),每chunk對應(yīng)64Bytes元數(shù)據(jù),2P數(shù)據(jù)需要2G內(nèi)存減少網(wǎng)絡(luò)開銷,因?yàn)閏lient往往對一個chunk進(jìn)行多次操作,所以chunkserver可以在一段時間之類保持住一個client和chunkserver之間的TCP連接小文件容易形成訪問熱點(diǎn),解決方案:為小文件準(zhǔn)備更多的副本GFS-ChunkServer設(shè)計在linux系統(tǒng)中以實(shí)體35GFS-client設(shè)計client是一組供上層應(yīng)用調(diào)用文件系統(tǒng)的API,它向master請求元數(shù)據(jù),向client請求數(shù)據(jù)client在有限時間內(nèi)緩存元數(shù)據(jù)client不緩存數(shù)據(jù),因?yàn)橛脩粽埱蟮臄?shù)據(jù)往往很大或者是流式寫操作,緩存沒有意義GFS-client設(shè)計client是一組供上層應(yīng)用調(diào)用文36Amazon

S3概念數(shù)據(jù)模型接口AmazonS3概念37對象存儲(應(yīng)用場景)AmazonS3Facebook

hystack盛大云分布式key-value存儲各種媒體文件,如圖片,音樂,視頻等等;最終用戶數(shù)據(jù)的存儲,比如文檔,數(shù)據(jù)表格,數(shù)據(jù)文件等;數(shù)據(jù)備份和存檔,如交易數(shù)據(jù),log數(shù)據(jù),用戶訪問的數(shù)據(jù)等;阿里云基于OSS,用戶可以搭建出各種多媒體分享網(wǎng)站、網(wǎng)盤、個人企業(yè)數(shù)據(jù)備份等基于大規(guī)模數(shù)據(jù)的服務(wù)。開通贈送5GB空間,按使用付費(fèi)。提供類S3

REST

API接對象存儲(應(yīng)用場景)AmazonS338S3存儲的發(fā)展1020數(shù)據(jù)來源:S3存儲的發(fā)展1020數(shù)據(jù)來源:http://www.sni39S3簡介S3(SimpleStorageService)是Amazon推出的簡單存儲服務(wù),它提供簡單的Web服務(wù)接口,隨時隨地地在網(wǎng)絡(luò)上存取數(shù)據(jù),使得開發(fā)人員進(jìn)行網(wǎng)絡(luò)規(guī)模的計算更容易S3基于高擴(kuò)展性、可靠、快速、廉價的數(shù)據(jù)存儲基礎(chǔ)設(shè)施運(yùn)行它自己的全球站點(diǎn)網(wǎng)絡(luò)S3簡介S3(SimpleStorageService)40S3的價格S3的價格41對象Objects存儲數(shù)據(jù)的基本實(shí)體,包含

對象數(shù)據(jù)部分和元數(shù)據(jù)部分桶Buckets容器是對象的集合,容器可以包含子容器一個容器可以包含多個對象和子容器關(guān)鍵字Keys桶或?qū)ο蟮奈ㄒ粯?biāo)識示例:訪問容器photos下的對象family.jpg:/webdisk/photos/family.jpg容器容器對象存儲客戶端HTTPRESTfulRequest&Response云存儲容器容器容器對象存儲客戶端對象存儲客戶端數(shù)據(jù)對象S3數(shù)據(jù)模型對象Objects容器容器對象存儲HTTPRESTful42Objects對象是存儲在AmazonS3上的基本實(shí)體,這一實(shí)體包含對象數(shù)據(jù)部分和元數(shù)據(jù)部分元數(shù)據(jù)是一套描述對象名-值(name-value)對。元數(shù)據(jù)包括一些默認(rèn)的元數(shù)據(jù)和標(biāo)準(zhǔn)HTTP元數(shù)據(jù),如:最后一次修改時間和內(nèi)容類型等,開發(fā)人員可以在對象存儲時指定自定義的元數(shù)據(jù)Objects對象是存儲在AmazonS3上的基本實(shí)體,43Buckets一個桶就是一個存儲在AmazonS3上的對象的容器,每個對象都包含在一個桶內(nèi)。一個桶的所有權(quán)屬于創(chuàng)建它的AWS帳戶。每個AWS帳戶能一次擁有多達(dá)100個桶,桶的所有權(quán)不可轉(zhuǎn)移。但是,如果一個桶是空的,它可以被刪除并且名字可以重新使用。一個桶中存儲對象的數(shù)量沒有限制而且使用多少個桶性能并沒有變化。你可以把你所有的對象都存在一個桶中也可以把他們安排在多個桶中。桶不能嵌套,也就是說,不能在桶中創(chuàng)建桶。例如:如果名為photos/puppy.jpg的對象存儲在johnsmith桶中,那么可以用

/photos/puppy.jpg

來訪問它.Buckets一個桶就是一個存儲在AmazonS3上的對象44Keys一個關(guān)鍵字是一個對象在一個桶中的唯一標(biāo)識符。每一個AmazonS3中的對象都可以通過服務(wù)端點(diǎn)、桶名和關(guān)鍵字的組合唯一地找到例如:在http://doc./2006-03-01/AmazonS3.wsdl

中,“doc”是一個桶名,"2006-03-01/AmazonS3.wsdl"是一個關(guān)鍵字Keys一個關(guān)鍵字是一個對象在一個桶中的唯一標(biāo)識符。每一個A45S3接口:RESTfulAPIHTTP協(xié)議不僅僅可以用來進(jìn)行網(wǎng)絡(luò)傳輸,而且可以用以下幾種API來實(shí)現(xiàn)所有的Web操作PUT="here'ssomenewinfo"(Create)GET="givemesomeinfo"(Retrieve)POST="here'ssomeupdateinfo"(Update)DELETE="deletesomeinfo"(Delete)HTTPAPI符合CRUD(Create,Retrieve,Update,andDelete)原則S3接口:RESTfulAPIHTTP協(xié)議不僅僅可以用來進(jìn)46RESTGET示例GET/NelsonHTTP/1.1Host:quotes.Date:Wed,01Jun201012:00:00GMTAuthorization:AWS15B4D3461F177624206A:xQE0diMbLRepdf3YB+FIEXAMPLE=HTTP/1.1200OKx-amz-id-2:j5ULAWpFbJQJpukUsZ4tfXVOjVZExLtEyNTvY5fe+hHIegsN5p578JLTVpkFrpLx-amz-request-id:BE39A20848A0D52BDate:Wed,01Jun201012:00:00GMTx-amz-meta-family:MuntzLast-Modified:Sun,1Jan201012:00:00GMTETag:"828ef3fdfa96f00ad9f27c383fc9ac7f“Content-Type:text/plainContent-Length:5Connection:closeServer:AmazonS3ha-haRequestResponseRESTGET示例GET/NelsonHTTP/1.147NOSQL數(shù)據(jù)庫概念Key-valueColumnDocumentGraphyNOSQL數(shù)據(jù)庫概念48WhatisNoSQL?NoSQL=Nonrelational或者NotonlySQLNoSQL是相對于RDBMS的,具有以下特征非關(guān)系分布式開源

水平擴(kuò)展schema-freeeasyreplicationsupportsimpleAPI最終一致性支持海量數(shù)據(jù)(HugeData)不支持ACIDNoSQL于2009年發(fā)展迅速()WhatisNoSQL?NoSQL=Nonrelati49WhyNoSQL?web2.0時代,數(shù)據(jù)量激增,對數(shù)據(jù)庫技術(shù)提出了新的需求:Highperformance——對數(shù)據(jù)庫高并發(fā)讀寫的需求HugeStorage——對海量數(shù)據(jù)的高效率存儲和訪問的需求HighScalability&&HighAvailability——對數(shù)據(jù)庫的高可擴(kuò)展性和高可用性的需求Lowcost——對數(shù)據(jù)庫低成本的需求傳統(tǒng)RDBMS無法滿足,而一些關(guān)系特性無用武之地卻嚴(yán)重限制了性能:數(shù)據(jù)庫事務(wù)一致性數(shù)據(jù)庫的寫實(shí)時性和讀實(shí)時性復(fù)雜的SQL查詢,特別是多表關(guān)聯(lián)查詢NoSQL放棄關(guān)系模型,弱化RDBMS一些非必要功能,提高擴(kuò)展性、可用性,實(shí)現(xiàn)海量存儲WhyNoSQL?web2.0時代,數(shù)據(jù)量激增,對數(shù)據(jù)庫技50WhyNoSQL?RDBMS數(shù)據(jù)量激增,并發(fā)量大性能下降?ScalingupScalingout不可能無限制ScalingupSharding會喪失RDBMS的某些特性(ACID,實(shí)時性,表join困難)手工Sharding是件惡心的事,不靈活在很多場合,關(guān)系數(shù)據(jù)庫的某些特性無用武之地,反而限制性能:事務(wù)強(qiáng)一致性讀寫實(shí)時性復(fù)雜的SQL查詢,尤其是跨表join放棄關(guān)系型模型NoSQLWhyNoSQL?RDBMS數(shù)據(jù)量激增,并發(fā)量大?Sca51NoSQL應(yīng)用現(xiàn)狀公司應(yīng)用NoSQL自研/應(yīng)用應(yīng)用場景GoogleBigTable自研Webindexing,GoogleEarth,GoogleFinanceFacebookCassandra自研收件箱搜索AmazonDynamo自研購物車新浪Redis應(yīng)用微博淘寶OceanBase自研淘寶收藏夾,逐步在其他應(yīng)用上線Tair自研登錄/查看商品詳情/淘江湖等視覺中國MongoDB應(yīng)用視覺中國網(wǎng)站優(yōu)酷MongoDB應(yīng)用在線評論業(yè)務(wù)HBase應(yīng)用運(yùn)營數(shù)據(jù)分析及挖掘處理TokyoTyrant應(yīng)用搜索產(chǎn)品Redis應(yīng)用頻繁修改的在線業(yè)務(wù)中國移動HandlerSocket應(yīng)用飛信空間豆瓣網(wǎng)BeansDB自研豆瓣社區(qū)NoSQL應(yīng)用現(xiàn)狀公司應(yīng)用NoSQL自研/應(yīng)用應(yīng)用場景Goo52NoSQL四大家族Key-ValueDynamoRiakMemcachedRedisTokyoCabinet/TyrantVoldemort……ColumnBigTableHBaseCassandraHyperTable……DocumentMongoDBCouchDB……GraphNeo4jHyperGraphDB……NoSQL四大家族Key-ValueDynamoRiakMe531)Key-Value數(shù)據(jù)模型:簡單的鍵值對典型應(yīng)用:Cache高讀寫的簡單存儲優(yōu)勢:簡單、讀寫速度快劣勢:存儲數(shù)據(jù)缺少結(jié)構(gòu)化,只能存儲Key-Value對復(fù)雜的結(jié)構(gòu)需要上層應(yīng)用處理1)Key-Value數(shù)據(jù)模型:簡單的鍵值對54Dynamo購物車問題不開源,公布了paper技術(shù)特征:一致性哈希虛節(jié)點(diǎn)VectorClockHintedHandoffAnti-entropyMerkleTreeGossipDynamo購物車問題55云存儲技術(shù)和應(yīng)用課件56云存儲技術(shù)和應(yīng)用課件57云存儲技術(shù)和應(yīng)用課件58云存儲技術(shù)和應(yīng)用課件59云存儲技術(shù)和應(yīng)用課件60云存儲技術(shù)和應(yīng)用課件61Memcached用作大型網(wǎng)站緩存系統(tǒng)開源協(xié)議:BSD開發(fā)語言:C協(xié)議:memcached協(xié)議(自定義的基于TCP的文本協(xié)議)特性:協(xié)議簡單基于libevent事件處理內(nèi)存存儲不相互通信的分布式Memcached用作大型網(wǎng)站緩存系統(tǒng)62云存儲技術(shù)和應(yīng)用課件632)Column-Oriented數(shù)據(jù)模型:BigTable式表格,稀疏矩陣典型應(yīng)用:海量數(shù)據(jù)存儲與分析優(yōu)勢:查找列速度快,可擴(kuò)展性強(qiáng),更容易進(jìn)行分布式擴(kuò)展劣勢:功能相對局限,對于跨表的join性能不高2)Column-Oriented數(shù)據(jù)模型:BigTabl64云存儲技術(shù)和應(yīng)用課件65云存儲技術(shù)和應(yīng)用課件663)Document-Oriented數(shù)據(jù)模型:靈感來源于LotusNotes,JSON-like典型應(yīng)用:Web應(yīng)用優(yōu)勢:數(shù)據(jù)結(jié)構(gòu)要求不嚴(yán)格,靈活劣勢:查詢性能不高,而且缺乏統(tǒng)一的查詢語法3)Document-Oriented數(shù)據(jù)模型:靈感來源于674)Graph-Oriented數(shù)據(jù)模型:圖模型典型應(yīng)用:基于網(wǎng)絡(luò)的應(yīng)用,地理位置信息(用作GIS)、社交網(wǎng)絡(luò)(SNS)、網(wǎng)絡(luò)拓?fù)涞葍?yōu)勢:可以利用圖結(jié)構(gòu)相關(guān)算法劣勢:需要對整個圖做計算才能得出結(jié)果,不容易做分布式的集群方案4)Graph-Oriented數(shù)據(jù)模型:圖模型68提綱存儲發(fā)展歷史云存儲概念和技術(shù)云存儲應(yīng)用提綱存儲發(fā)展歷史69設(shè)計一個網(wǎng)盤系統(tǒng)需求:海量用戶,系統(tǒng)用戶數(shù)上千萬/上億,由少到多系統(tǒng)并發(fā)訪問用戶數(shù)上十萬用戶訪問可以通過PC、手機(jī)、Pad系統(tǒng)剛開始用戶數(shù)少,投資有限,隨著用戶增加追加投資高可靠,7*24小時不中斷設(shè)計:設(shè)計一個系統(tǒng),描述由哪些部分組成,每個部分的功能是什么,可以使用哪些技術(shù)實(shí)現(xiàn)分組進(jìn)行,每個小組出一個代表上來分享設(shè)計一個網(wǎng)盤系統(tǒng)需求:70設(shè)計一個網(wǎng)盤系統(tǒng)提示,從下面列表中選擇可能是用到的技術(shù)完成系統(tǒng)的設(shè)計:iOS開發(fā)技術(shù)、Android開發(fā)技術(shù)、UI交互設(shè)計技術(shù)、美工、HTTP服務(wù)端技術(shù)、xml/jason技術(shù)、負(fù)載均衡技術(shù)、分布式緩存技術(shù)、分布式文件系統(tǒng)、分布式對象存儲(類S3)、Oracle、mySQL、BerkerlyDB、DynamoDB、虛擬機(jī)技術(shù)、Java/C++/C/Objective

C、php、html、mongodb、redis、memcache、Nginx(web負(fù)載均衡)、設(shè)計一個網(wǎng)盤系統(tǒng)提示,從下面列表中選擇可能是用到的技術(shù)完成系71總結(jié)存儲概念:背景需求發(fā)展歷史文件、塊、對象存儲存儲技術(shù):分布式文件系統(tǒng)GFS對象存儲S3分布式數(shù)據(jù)庫NoSQL存儲應(yīng)用:Sina微博系統(tǒng)設(shè)計總結(jié)存儲概念:72云存儲技術(shù)和應(yīng)用課件73云存儲技術(shù)和應(yīng)用云存儲技術(shù)和應(yīng)用74提綱存儲發(fā)展歷史云存儲概念和技術(shù)云存儲應(yīng)用提綱存儲發(fā)展歷史75存儲的發(fā)展歷史直連存儲DAS存儲區(qū)域網(wǎng)絡(luò)SAN網(wǎng)絡(luò)附著存儲NAS對象存儲設(shè)備OSD存儲的發(fā)展歷史直連存儲DAS76存儲發(fā)展歷史-直連存儲DASDirect-AttachedStorage概念:存儲設(shè)備是通過電纜(通常是SCSI接口)直接到服務(wù)器的,I/O(輸入/輸入)請求直接發(fā)送到存儲設(shè)備。存儲發(fā)展歷史-直連存儲DASDirect-Attached77存儲發(fā)展歷史-直連存儲DASDirect-AttachedStorage備份和恢復(fù):占用服務(wù)器資源,數(shù)據(jù)量越大,備份和恢復(fù)的時間就越長CPU發(fā)展速度比存儲發(fā)展速度快,磁盤陣列容量增大,IO成為瓶頸服務(wù)器或磁盤陣列擴(kuò)展都需要停業(yè)務(wù),電信和銀行無法忍受服務(wù)器SCSI插槽數(shù)量有限,存儲資源和數(shù)據(jù)無法服務(wù)器之間共享存儲發(fā)展歷史-直連存儲DASDirect-Attached78存儲發(fā)展歷史-存儲區(qū)域網(wǎng)絡(luò)SANStorageAreaNetwork

概念:SAN的概念是允許存儲設(shè)備和CPU(服務(wù)器)之間建立直接的高速網(wǎng)絡(luò)(與LAN相比)連接,通過這種連接實(shí)現(xiàn)只受光纖線路長度限制的集中式存儲。光纖交換機(jī)存儲發(fā)展歷史-存儲區(qū)域網(wǎng)絡(luò)SANStorageAreaN79存儲發(fā)展歷史-存儲區(qū)域網(wǎng)絡(luò)SANStorageAreaNetwork

獨(dú)立于服務(wù)器網(wǎng)絡(luò)的高速光纖存儲網(wǎng),適合大數(shù)據(jù)高速處理存儲資源全局多主機(jī)動態(tài)共享備份與恢復(fù):不需要服務(wù)器參與IO帶寬:多個服務(wù)器可以并行訪問統(tǒng)一存儲設(shè)備在線升級:在線增加服務(wù)器或存儲設(shè)備擴(kuò)展性:光纖交換機(jī)提供很多接口,也可以連接其他交換機(jī)存儲發(fā)展歷史-存儲區(qū)域網(wǎng)絡(luò)SANStorageAreaN80存儲發(fā)展歷史-塊訪問存儲發(fā)展歷史-塊訪問81存儲發(fā)展歷史-塊訪問存儲發(fā)展歷史-塊訪問82存儲發(fā)展歷史-網(wǎng)絡(luò)附著存儲NASNetworkAttachedStorage概念NAS由SUN公司在上個世紀(jì)80年代中期推出NFS開始,是一種面向用戶提供文件級服務(wù)的專用數(shù)據(jù)存儲設(shè)備,存儲系統(tǒng)不再通過I/O總線附屬于某個特定的服務(wù)器或客戶機(jī),而是直接通過網(wǎng)絡(luò)接口與網(wǎng)絡(luò)直接相連,由用戶通過網(wǎng)絡(luò)訪問。存儲發(fā)展歷史-網(wǎng)絡(luò)附著存儲NASNetworkAttach83存儲發(fā)展歷史-網(wǎng)絡(luò)附著存儲NASNetworkAttachedStorage容易部署:不需要依賴任何其他設(shè)備,只要有一個網(wǎng)絡(luò)端口就可以在任何能上網(wǎng)的設(shè)備上使用易于使用:文件接相對塊接口更容易使用文件共享:方便多個主機(jī)共享數(shù)據(jù)長距離傳輸:基于IP網(wǎng)絡(luò)易于擴(kuò)展:簡單的增加NAS設(shè)備到網(wǎng)絡(luò)中即可低成本:相對SAN價格便宜存儲發(fā)展歷史-網(wǎng)絡(luò)附著存儲NASNetworkAttach84存儲發(fā)展歷史-文件訪問存儲發(fā)展歷史-文件訪問85存儲發(fā)展歷史-文件訪問文件的Inode包含多個塊,為了提高大文件操作效率還會將兩個或三個塊組合起來提供訪問。存儲發(fā)展歷史-文件訪問文件的Inode包含多個塊,為了提高大86存儲發(fā)展歷史-本地文件系統(tǒng)文件/目錄管理10%工作量塊管理90%工作量存儲發(fā)展歷史-本地文件系統(tǒng)文件/目錄管理10%工作量87存儲發(fā)展歷史-分布式文件系統(tǒng)通過NFS/CIFS接口訪問存儲發(fā)展歷史-分布式文件系統(tǒng)通過NFS/CIFS接口訪問88存儲發(fā)展歷史-對象存儲存儲發(fā)展歷史-對象存儲89存儲發(fā)展歷史-對象存儲設(shè)備OSDSCSIBlockInterfaceStorageDeviceBlockI/OManagerObjectInterfaceApplicationsFileSystemUserComponentFileSystemStorageComponentSystemCallInterfaceCPUApplicationsFileSystemUserComponentSystemCallInterfaceCPUStorageDeviceBlockI/OManagerFileSystemStorageComponent存儲發(fā)展歷史-對象存儲設(shè)備OSDSCSIBlockInte90存儲發(fā)展歷史-對象存儲設(shè)備OSDManagersObject-basedStorageDevicesMANAGEMENTEthswitchSANSECRETKEYSECRETKEYSECRETKEYAccessRequestDATAValidateCapabilityClient存儲發(fā)展歷史-對象存儲設(shè)備OSDManagersObjec91存儲發(fā)展歷史-對象存儲vs塊存儲存儲發(fā)展歷史-對象存儲vs塊存儲92存儲發(fā)展歷史-對象存儲vs文件存儲存儲自治:容量擴(kuò)展負(fù)載均衡備份QoS、SLA感知和數(shù)據(jù)分組預(yù)取壓縮/去冗余強(qiáng)安全/加密Compliance、Retention、securedelete可用性、副本自治愈存儲發(fā)展歷史-對象存儲vs文件存儲存儲自治:93存儲發(fā)展歷史-對象定義對象的定義Object

ID:對象唯一標(biāo)示User

Data:對象的數(shù)據(jù)Metadata:元數(shù)據(jù),空間管理信息Attributes:對象屬性存儲發(fā)展歷史-對象定義對象的定義94存儲發(fā)展歷史總結(jié)存儲發(fā)展歷史總結(jié)95提綱存儲發(fā)展歷史云存儲概念和技術(shù)云存儲應(yīng)用提綱存儲發(fā)展歷史96云存儲需求云存儲需求97云存儲需求2011年全球數(shù)據(jù)量將達(dá)1.8ZB,這人類將開始進(jìn)入ZB時代云存儲需求2011年全球數(shù)據(jù)量將達(dá)1.8ZB,這人類將開始進(jìn)98云存儲需求高容量:海量,且可擴(kuò)展高性能:快速的訪問、定位高可用:個別磁盤失效,甚至整個中心被毀低成本:傳統(tǒng)的NAS、SAN技術(shù)構(gòu)建大規(guī)模存儲系統(tǒng)成本很高云存儲需求高容量:海量,且可擴(kuò)展99云存儲概念和特點(diǎn)云存儲是在云計算(cloudcomputing)概念上延伸和發(fā)展出來的一個新的概念,是指通過集群應(yīng)用、網(wǎng)格技術(shù)或分布式文件系統(tǒng)等功能,將網(wǎng)絡(luò)中大量各種不同類型的存儲設(shè)備通過應(yīng)用軟件集合起來協(xié)同工作,共同對外提供數(shù)據(jù)存儲和業(yè)務(wù)訪問功能的一個系統(tǒng)。高可用、可擴(kuò)展、按需付費(fèi)云存儲概念和特點(diǎn)云存儲是在云計算(cloudcomputi100GoogleCloudGoogleFileSystemBigTableGoogleAppEngineMapReduceMicrosoftAzureLiveServicesSQLServices.NETServicesSharepointServicesDynamicCRMServicesIBMBlueCloudHadoopDB2Xen&PowerVMWebsphereTivoliSoftwareAmazonCloudS3SimpleDBEC2SimpleQueueEBS云存儲有哪些?GoogleGoogleFileSystemBigTab101云存儲的熱點(diǎn)分布式文件系統(tǒng)(Google

GFS、Hadoop

HDFS。。)NoSQL數(shù)據(jù)庫(Google

BigTable、Facebook

Cassandra。。)對象存儲(Amazon

S3)分布式塊存儲(Amazon

EBS)云存儲的熱點(diǎn)分布式文件系統(tǒng)(GoogleGFS、Hadoo102分布式文件系統(tǒng)應(yīng)用場景Google:搜索、AppEngine、Gmail、Youtube、Map。。Baidu:Hadoop

HDFS搜索、數(shù)據(jù)分析Taobao:TFS存儲圖片網(wǎng)頁Hadoop

HDFS數(shù)據(jù)分析分布式文件系統(tǒng)應(yīng)用場景Google:103GFS-需求分析組件失效是常態(tài)文件規(guī)模一般都在幾個G以上Writeoncereadmany負(fù)載模型文件寫入后,基本不需要重寫操作文件被大量地連續(xù)讀操作,隨機(jī)讀很少發(fā)生允許大量客戶端并行追加寫同一個文件,追加寫操作必須是原子操作對海量數(shù)據(jù)處理來說,帶寬是稀缺資源GFS-需求分析組件失效是常態(tài)104GFS-接口(API)提供文件系統(tǒng)接口非標(biāo)準(zhǔn)的POSIXAPI僅僅提供幾種最基本的操作–create,delete,open,close,read,write利用寫時拷貝(copy-on-write)技術(shù)實(shí)現(xiàn)快照功能GFS-接口(API)提供文件系統(tǒng)接口105GFS-體系結(jié)構(gòu)文件被切割成固定大小的塊(Chunk)一個主Master,多個ShadowMaster多個Chunkserver多clientGFS-體系結(jié)構(gòu)文件被切割成固定大小的塊(Chunk)106GFS-Master設(shè)計主master將所有元數(shù)據(jù)保存在內(nèi)存中,實(shí)現(xiàn)快速訪問同時提供chunk令牌管理、孤立塊垃圾回收、塊遷移、副本管理功能定期與chunkserver發(fā)送心跳消息,收集chunkserver狀態(tài)任何對元數(shù)據(jù)的寫操作都會保存到日志中元數(shù)據(jù)在一段時間內(nèi)會緩存在clients中ShadowmastersMaster的狀態(tài)(checkpoint和log)會定期復(fù)制到shadowmasters中,以保證系統(tǒng)的可靠性。當(dāng)master失效后,系統(tǒng)會嘗試從shadowmaster中讀取checkpoint和log進(jìn)行數(shù)據(jù)恢復(fù),恢復(fù)周期一般為秒級即使master失效,shadow也能提供文件的只讀訪問。GFS-Master設(shè)計主master107GFS-ChunkServer設(shè)計在linux系統(tǒng)中以實(shí)體文件存放chunk默認(rèn)放置3個chunk副本,2個在同一個機(jī)架的不同機(jī)器,1個在另外的機(jī)架平衡訪問負(fù)載平衡存儲空間提供可用性和可靠性

塊數(shù)據(jù)不緩存塊大小為64MB減少元數(shù)據(jù),每chunk對應(yīng)64Bytes元數(shù)據(jù),2P數(shù)據(jù)需要2G內(nèi)存減少網(wǎng)絡(luò)開銷,因?yàn)閏lient往往對一個chunk進(jìn)行多次操作,所以chunkserver可以在一段時間之類保持住一個client和chunkserver之間的TCP連接小文件容易形成訪問熱點(diǎn),解決方案:為小文件準(zhǔn)備更多的副本GFS-ChunkServer設(shè)計在linux系統(tǒng)中以實(shí)體108GFS-client設(shè)計client是一組供上層應(yīng)用調(diào)用文件系統(tǒng)的API,它向master請求元數(shù)據(jù),向client請求數(shù)據(jù)client在有限時間內(nèi)緩存元數(shù)據(jù)client不緩存數(shù)據(jù),因?yàn)橛脩粽埱蟮臄?shù)據(jù)往往很大或者是流式寫操作,緩存沒有意義GFS-client設(shè)計client是一組供上層應(yīng)用調(diào)用文109Amazon

S3概念數(shù)據(jù)模型接口AmazonS3概念110對象存儲(應(yīng)用場景)AmazonS3Facebook

hystack盛大云分布式key-value存儲各種媒體文件,如圖片,音樂,視頻等等;最終用戶數(shù)據(jù)的存儲,比如文檔,數(shù)據(jù)表格,數(shù)據(jù)文件等;數(shù)據(jù)備份和存檔,如交易數(shù)據(jù),log數(shù)據(jù),用戶訪問的數(shù)據(jù)等;阿里云基于OSS,用戶可以搭建出各種多媒體分享網(wǎng)站、網(wǎng)盤、個人企業(yè)數(shù)據(jù)備份等基于大規(guī)模數(shù)據(jù)的服務(wù)。開通贈送5GB空間,按使用付費(fèi)。提供類S3

REST

API接對象存儲(應(yīng)用場景)AmazonS3111S3存儲的發(fā)展1020數(shù)據(jù)來源:S3存儲的發(fā)展1020數(shù)據(jù)來源:http://www.sni112S3簡介S3(SimpleStorageService)是Amazon推出的簡單存儲服務(wù),它提供簡單的Web服務(wù)接口,隨時隨地地在網(wǎng)絡(luò)上存取數(shù)據(jù),使得開發(fā)人員進(jìn)行網(wǎng)絡(luò)規(guī)模的計算更容易S3基于高擴(kuò)展性、可靠、快速、廉價的數(shù)據(jù)存儲基礎(chǔ)設(shè)施運(yùn)行它自己的全球站點(diǎn)網(wǎng)絡(luò)S3簡介S3(SimpleStorageService)113S3的價格S3的價格114對象Objects存儲數(shù)據(jù)的基本實(shí)體,包含

對象數(shù)據(jù)部分和元數(shù)據(jù)部分桶Buckets容器是對象的集合,容器可以包含子容器一個容器可以包含多個對象和子容器關(guān)鍵字Keys桶或?qū)ο蟮奈ㄒ粯?biāo)識示例:訪問容器photos下的對象family.jpg:/webdisk/photos/family.jpg容器容器對象存儲客戶端HTTPRESTfulRequest&Response云存儲容器容器容器對象存儲客戶端對象存儲客戶端數(shù)據(jù)對象S3數(shù)據(jù)模型對象Objects容器容器對象存儲HTTPRESTful115Objects對象是存儲在AmazonS3上的基本實(shí)體,這一實(shí)體包含對象數(shù)據(jù)部分和元數(shù)據(jù)部分元數(shù)據(jù)是一套描述對象名-值(name-value)對。元數(shù)據(jù)包括一些默認(rèn)的元數(shù)據(jù)和標(biāo)準(zhǔn)HTTP元數(shù)據(jù),如:最后一次修改時間和內(nèi)容類型等,開發(fā)人員可以在對象存儲時指定自定義的元數(shù)據(jù)Objects對象是存儲在AmazonS3上的基本實(shí)體,116Buckets一個桶就是一個存儲在AmazonS3上的對象的容器,每個對象都包含在一個桶內(nèi)。一個桶的所有權(quán)屬于創(chuàng)建它的AWS帳戶。每個AWS帳戶能一次擁有多達(dá)100個桶,桶的所有權(quán)不可轉(zhuǎn)移。但是,如果一個桶是空的,它可以被刪除并且名字可以重新使用。一個桶中存儲對象的數(shù)量沒有限制而且使用多少個桶性能并沒有變化。你可以把你所有的對象都存在一個桶中也可以把他們安排在多個桶中。桶不能嵌套,也就是說,不能在桶中創(chuàng)建桶。例如:如果名為photos/puppy.jpg的對象存儲在johnsmith桶中,那么可以用

/photos/puppy.jpg

來訪問它.Buckets一個桶就是一個存儲在AmazonS3上的對象117Keys一個關(guān)鍵字是一個對象在一個桶中的唯一標(biāo)識符。每一個AmazonS3中的對象都可以通過服務(wù)端點(diǎn)、桶名和關(guān)鍵字的組合唯一地找到例如:在http://doc./2006-03-01/AmazonS3.wsdl

中,“doc”是一個桶名,"2006-03-01/AmazonS3.wsdl"是一個關(guān)鍵字Keys一個關(guān)鍵字是一個對象在一個桶中的唯一標(biāo)識符。每一個A118S3接口:RESTfulAPIHTTP協(xié)議不僅僅可以用來進(jìn)行網(wǎng)絡(luò)傳輸,而且可以用以下幾種API來實(shí)現(xiàn)所有的Web操作PUT="here'ssomenewinfo"(Create)GET="givemesomeinfo"(Retrieve)POST="here'ssomeupdateinfo"(Update)DELETE="deletesomeinfo"(Delete)HTTPAPI符合CRUD(Create,Retrieve,Update,andDelete)原則S3接口:RESTfulAPIHTTP協(xié)議不僅僅可以用來進(jìn)119RESTGET示例GET/NelsonHTTP/1.1Host:quotes.Date:Wed,01Jun201012:00:00GMTAuthorization:AWS15B4D3461F177624206A:xQE0diMbLRepdf3YB+FIEXAMPLE=HTTP/1.1200OKx-amz-id-2:j5ULAWpFbJQJpukUsZ4tfXVOjVZExLtEyNTvY5fe+hHIegsN5p578JLTVpkFrpLx-amz-request-id:BE39A20848A0D52BDate:Wed,01Jun201012:00:00GMTx-amz-meta-family:MuntzLast-Modified:Sun,1Jan201012:00:00GMTETag:"828ef3fdfa96f00ad9f27c383fc9ac7f“Content-Type:text/plainContent-Length:5Connection:closeServer:AmazonS3ha-haRequestResponseRESTGET示例GET/NelsonHTTP/1.1120NOSQL數(shù)據(jù)庫概念Key-valueColumnDocumentGraphyNOSQL數(shù)據(jù)庫概念121WhatisNoSQL?NoSQL=Nonrelational或者NotonlySQLNoSQL是相對于RDBMS的,具有以下特征非關(guān)系分布式開源

水平擴(kuò)展schema-freeeasyreplicationsupportsimpleAPI最終一致性支持海量數(shù)據(jù)(HugeData)不支持ACIDNoSQL于2009年發(fā)展迅速()WhatisNoSQL?NoSQL=Nonrelati122WhyNoSQL?web2.0時代,數(shù)據(jù)量激增,對數(shù)據(jù)庫技術(shù)提出了新的需求:Highperformance——對數(shù)據(jù)庫高并發(fā)讀寫的需求HugeStorage——對海量數(shù)據(jù)的高效率存儲和訪問的需求HighScalability&&HighAvailability——對數(shù)據(jù)庫的高可擴(kuò)展性和高可用性的需求Lowcost——對數(shù)據(jù)庫低成本的需求傳統(tǒng)RDBMS無法滿足,而一些關(guān)系特性無用武之地卻嚴(yán)重限制了性能:數(shù)據(jù)庫事務(wù)一致性數(shù)據(jù)庫的寫實(shí)時性和讀實(shí)時性復(fù)雜的SQL查詢,特別是多表關(guān)聯(lián)查詢NoSQL放棄關(guān)系模型,弱化RDBMS一些非必要功能,提高擴(kuò)展性、可用性,實(shí)現(xiàn)海量存儲WhyNoSQL?web2.0時代,數(shù)據(jù)量激增,對數(shù)據(jù)庫技123WhyNoSQL?RDBMS數(shù)據(jù)量激增,并發(fā)量大性能下降?ScalingupScalingout不可能無限制ScalingupSharding會喪失RDBMS的某些特性(ACID,實(shí)時性,表join困難)手工Sharding是件惡心的事,不靈活在很多場合,關(guān)系數(shù)據(jù)庫的某些特性無用武之地,反而限制性能:事務(wù)強(qiáng)一致性讀寫實(shí)時性復(fù)雜的SQL查詢,尤其是跨表join放棄關(guān)系型模型NoSQLWhyNoSQL?RDBMS數(shù)據(jù)量激增,并發(fā)量大?Sca124NoSQL應(yīng)用現(xiàn)狀公司應(yīng)用NoSQL自研/應(yīng)用應(yīng)用場景GoogleBigTable自研Webindexing,GoogleEarth,GoogleFinanceFacebookCassandra自研收件箱搜索AmazonDynamo自研購物車新浪Re

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論