網(wǎng)易云對象存儲關(guān)鍵技術(shù)解析_第1頁
網(wǎng)易云對象存儲關(guān)鍵技術(shù)解析_第2頁
網(wǎng)易云對象存儲關(guān)鍵技術(shù)解析_第3頁
網(wǎng)易云對象存儲關(guān)鍵技術(shù)解析_第4頁
網(wǎng)易云對象存儲關(guān)鍵技術(shù)解析_第5頁
已閱讀5頁,還剩24頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、網(wǎng)易云對象存儲關(guān)鍵技術(shù)解析網(wǎng)易云對象存儲是什么NetEase Object Storage(NOS)一個海量Key-Value系統(tǒng)Key:最大支持1K字節(jié)Value:最大支持1TB二進(jìn)制文件,比如圖片、視頻等靜態(tài)文件Attribute:最多10個鍵值對容器(Bucket):命名空間易信有道云 筆記云閱讀云課堂視頻中 心云音樂NOS約會Bucket: read163 Object: book.epubBucket: music163 Object: song.mp3Author: 張三Publisher: 人民出版社 Date: 2014-08-01AttributeSingler: 李四 Le

2、ngth: 240 second Release: 2014-08-02一些數(shù)據(jù)上線時間:2012.10產(chǎn)品數(shù)量:30+桶的數(shù)量:100+對象數(shù)量:700,000,000邏輯存儲:300T常規(guī)日增:1T常規(guī)流量:3Gbps不只是Key-Value (1)功能 特性對象操作上傳下載刪除 cp 、mv、dedup獲 取歷史對象存儲桶操作0桶、刪桶 桶屬性增刪改 列出桶內(nèi)對象大對象分塊上傳初始化 分塊上傳完成上傳動作圖片操作圖片元數(shù)據(jù)圖片縮略裁剪水印 質(zhì)量參數(shù)類型轉(zhuǎn)換富媒體音視頻操作音視頻元數(shù)據(jù) 視頻幀截圖 音頻流式轉(zhuǎn)碼不只是Key-Value (2)非功能 特性安全高可用高可靠高性能可擴(kuò)展運維關(guān)鍵

3、技術(shù)元數(shù)據(jù)存儲組件:DDB數(shù)據(jù)存儲組件:DFS列出桶內(nèi)對象:ListObject基于NOS的用戶態(tài)文件系統(tǒng):NOSFS富媒體服務(wù)框架:Tobie多租戶流量隔離:LimitServerNOS基礎(chǔ)架構(gòu)NginxNginxKeepalivedDNSServiceMasterDBNodeAdminDDB ClusterDBIDataMetaRead/WriteMasterData NodeAdminDFS ClusterFSIHTTP Restful ServiceRead/WriteDataMetaProxy ClusterstatelessDDB介紹分布式數(shù)據(jù)庫系統(tǒng)(Distributed Dat

4、aBase, 簡稱 DDB)是網(wǎng)易杭研臺技術(shù)中心研發(fā)的 分布式關(guān)系數(shù)據(jù)庫平臺主要目標(biāo)是解決以下問題海量結(jié)構(gòu)化數(shù)據(jù)存儲高并發(fā)高吞吐數(shù)據(jù)訪問DDB分區(qū)策略均衡字段:用于計算哈希值的字段兩級映射:結(jié)合哈希的高效性和路由表的可管理性H哈希函數(shù)(固定)均衡字段哈希桶:黃色表示負(fù)載信息MySQLMySQL路由表(可調(diào)整)哈希表DDB桶遷移基于復(fù)制的高性能數(shù)據(jù)遷移方法:在目的節(jié)點建立待遷移桶的數(shù)據(jù)復(fù)制,遷移完成后修改路由表特點:在線復(fù)制,性能不錯路由表版本號為路由表設(shè)置遞增的版本號,遷移時增加源節(jié)點的路由表版本號客戶端請求源節(jié)點,發(fā)現(xiàn)路由表版本不匹配,同步路由表后正確路由至目的節(jié)點7587497負(fù)載信息My

5、SQL1MySQL2路由表(可調(diào)整)哈希表負(fù)載 7+8+7+7=29負(fù)載 5+4+9=18桶遷移后7587497負(fù)載信息MySQL1MySQL2路由表(可調(diào)整)哈希表負(fù)載 7+8=15負(fù)載 5+4+9=18MySQL3負(fù)載 7+7=14DFS介紹分布式文件系統(tǒng)(Distributed FileSystem, 簡稱 DFB)是網(wǎng)易杭研臺技術(shù)中心研發(fā)的 分布式非結(jié)構(gòu)化數(shù)據(jù)存儲平臺主要目標(biāo)是解決以下問題海量非結(jié)構(gòu)化數(shù)據(jù)存儲高并發(fā)高吞吐數(shù)據(jù)訪問DFS訪問健64位整形docid作為訪問健對外:扁平的名字空間對內(nèi):分層文件索引2410101010/prefix/bucketlevel 1level 2le

6、vel 3fnitoaitoaitoaitoaitoabucket:數(shù)據(jù)遷移基本單元64 bit Integer:dociddocid:訪問健Eg: 2199023255553 = /prefix/2/0/0/0/1DFS分區(qū)策略虛擬節(jié)點一致性哈希,問題:擴(kuò)容數(shù)據(jù)遷移對于PB級大數(shù)據(jù)量系統(tǒng),措施:無遷移擴(kuò)容DFS方案:分區(qū)(Bucket)預(yù)留 + 系統(tǒng)生成訪問健(Docid)預(yù)先規(guī)劃Bucket(224),不立即啟用訪問鍵(Docid)由系統(tǒng)分配而不是應(yīng)用程序指定增加一個物理節(jié)點時啟用一批分區(qū)(Bucket)給該物理節(jié)點系統(tǒng)生成訪問健(Docid)時,使用新分配的分區(qū)(Bucket)適用范圍訪

7、問鍵(Docid)由系統(tǒng)分配負(fù)載在初始分配完成后基本不變DataNode OldBucket 1,2,3DataNode NewBucket 4Client30%Write Weight70%Write WeightAdd New DataNode特點1:輕量級Master 特點2:緩存路由表 特點3:并發(fā)寫特點4:docid預(yù)分配123134DataNode1DataNode3124DataNode2DFS系統(tǒng)構(gòu)架Route TableMetadata opsClientReadBucket opsReplicationWriteClientMaster1DN1DN2DN32DN1DN2DN

8、33DN1DN34DN2DN32Replication列出桶內(nèi)對象-1功能描述根據(jù)簡單的檢索條件,返回對象列表的子集,接口:ListObject相關(guān)參數(shù)Prefix:對象Key的前綴,可以使用前綴對桶內(nèi)對象分組;Delimiter:檢索分隔符,用于做類似groupby的操作;Max-keys:符合條件的對象Key列表數(shù)量;Marker:字典序起始標(biāo)記,只返回該標(biāo)記后的對象Key;列出桶內(nèi)對象-2music/japan/3.mp3 music/japan/4.mp3 video/china/5.mp4 video/china/6.mp4 video/japan/7.mp4 video/japan

9、/8.mp4.|- music- japan|- china|- 1.mp3|- 2.mp3|- 3.mp3- 4.mp3- video|- china|- 5.mp4|- 6.mp4- japan|- 7.mp4- 8.mp4文件系統(tǒng)video/preifx=“” delimiter=“/”music/china/ japan/對象存儲music/china/1.mp3 music/china/2.mp3映射到文件系統(tǒng)preifx=“music/”1.mp3 2.mp3preifx=“music/china”china/ japan/preifx=“video/”3.mp3 4.mp3pre

10、ifx=“music/japan”5.mp4 6.mp4preifx=“video/china”7.mp4 8.mp4preifx=“video/japan”桶music163有8個對象現(xiàn)實意義命名空間從扁平變豐富對象存儲和文件存儲對接的橋梁NginxNginxKeepalivedDNSServiceMasterDBNodeAdminDDB ClusterDBIDataMetaRead/WriteMasterData NodeAdminDFS ClusterFSIHTTP Restful ServiceRead/WriteDataMetaProxy ClusterstatelessNOSFSM

11、edia ClusterstatelessTobieGM/FFmpegMedia RequestMount NOS Bucket to Local FileSysten富媒體 服務(wù)架構(gòu)NOSFS-1相關(guān)描述基于FUSE的用戶態(tài)文件系統(tǒng)通過NOSFS將NOS桶掛載成本地文件系統(tǒng)應(yīng)用場景:富媒體服務(wù)、數(shù)據(jù)備份等性能優(yōu)化讀性能較差:預(yù)讀數(shù)據(jù)緩存、元數(shù)據(jù)緩存限制和坑不支持隨機(jī)寫,不支持文件夾移動鎖父目錄問題:通過虛擬目錄繞開List性能問題:通過編碼對象路徑繞開NOSFS-2glibcls /mnt/nos/music163/music/VFSFUSENFSEXT3glibclibfuse./nosf

12、s/mnt/nosNOSmusic/aa_test.mp3music/china/1.mp3music/china/2.mp34music/china/n.mp3music/dd_test.mp3music/japan/1.mp3music/japan/2.mp39music/japan/k.mp3music/yy_test.mp3HTTPUserspaceKernelnostest1:/mnt/nos/music163/music$ lschinajapanaa_test.mp3 dd_test.mp3 yy_test.mp3OutPut富媒體服務(wù)-1實現(xiàn)功能圖片操作:縮略、裁剪、水印等;音

13、頻操作:流式轉(zhuǎn)碼、元數(shù)據(jù)等;視頻操作:幀截圖、元數(shù)據(jù)等;其他功能:管道鏈?zhǔn)教幚恚幌嚓P(guān)技術(shù)服務(wù)接口:Libevent HTTP媒體類庫:ffmpeg & GraphicsMagick父子進(jìn)程:媒體庫內(nèi)存泄露問題、健壯性過載保護(hù):請求隊列C+內(nèi)嵌Lua:比同類產(chǎn)品快23倍C+:網(wǎng)絡(luò)接口,媒體庫調(diào)用【高性能】Lua:參數(shù)解析,調(diào)用鏈生成【靈活性】富媒體服務(wù)-2HTTP Restful Service接口層MasterWorker并發(fā)層ffmpegGraphics Magic邏輯層LUA script處理層Processor數(shù)據(jù)層NOSFS基千 Libevent 實現(xiàn) HTTP 服務(wù)端可配 Worke

14、r 數(shù)量可配處理若干請求后 Worker 退出C+ API調(diào)用保證高性能Processor 粘合處理邏輯接收請求字符串 返回處理序列mount 到 NOS 桶本地請求轉(zhuǎn)化為 NOS 接口請求WorkerWorker富媒體服務(wù)-3Lua擴(kuò)展示例按總像素縮略:用戶指定總像素,如:pixel=160000裁剪縮略圖片:對縮略后的圖片進(jìn)行裁剪以滿足尺寸要求人臉智能識別:Lua調(diào)用人臉識別程序獲取圖片中人臉位置圖片黑邊檢測:Lua調(diào)用黑邊檢測程序獲取黑邊位置LUA scriptAction1: Resize, 200, 150 Processorthumbnail=200 x200&quality=60

15、&type=pngGraphics MagicAPI Invoke/mybucket/photo.jpg?imageView&thumbnail=200 x200& quality=60& type=pngInputAction2: Quality, 60 Action3: Type, pngOutput流量隔離-1資源共享和隔離需求并存處理方式:運維手段而不是常規(guī)手段;處理流程:收到流量統(tǒng)計報警后緊急限流;資源類型存儲:底層對象存儲;計算:富媒體處理請求;流量:入口流量和請求;應(yīng)用場景網(wǎng)絡(luò)攻擊:惡意用戶發(fā)起大量請求,占用大量網(wǎng)絡(luò)連接和流量;突發(fā)流量:產(chǎn)品突然火了,或者內(nèi)網(wǎng)用戶下載操作系統(tǒng)鏡像

16、;流量隔離-2相關(guān)功能整桶限速整桶限并發(fā)連接整桶限TPS單連接限速核心模塊:Nginx Lualimit_rate:設(shè)置下載速度shared_dict:共享內(nèi)存字典access_by_lua:請求開始時被調(diào)用body_filter_by_lua:每讀128K被調(diào)用log_by_lua:請求結(jié)束時被調(diào)用實時統(tǒng)計監(jiān)控智能流控全局限速流量隔離-3桶連接數(shù)限制access_by_lua被調(diào)用時,相關(guān)桶連接數(shù)加一;log_by_lua被調(diào)用時,相關(guān)桶連接數(shù)減一;桶TPS限制充值模式,每隔5秒充值;access_by_lua被調(diào)用時,相關(guān)桶TPS余額減一;桶流量限制access_by_lua被調(diào)用時,limit_rate賦予初始流量限制;body_filter_by_lua被調(diào)用時,根據(jù)采樣情況動態(tài)調(diào)整limit_rate;log_by_lua被調(diào)用時,回收當(dāng)前流量limit_rate;流量隔離-4NginxNginx ClusterNginxNginxData FlowData FlowProxy ClusterstatelessAdminControl FlowLimit music1

溫馨提示

  • 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

提交評論