av激情亚洲男人的天堂国语,日韩欧美精品一中文字幕,无码av一区二区三区无码,国产又色又爽又刺激的a片,国产又色又爽又刺激的a片

EB級存儲引擎背后的技術

EB級存儲引擎背后的技術

作者:佚名 2017-07-11 16:27:14

云計算 自從互聯(lián)網從web1.0跨入到SNS時代,用戶開始從站點獲取數(shù)據跨入到用戶自己產生數(shù)據,分享數(shù)據,這時用戶的數(shù)據存儲開始急劇增長。更重要的是時代的發(fā)展,用戶內容從文字時代跨入到了圖片時代,這個時代的明星產品--qq相冊的誕生,更是讓用戶分享數(shù)據達到了一個頂峰。

1、序言

自從互聯(lián)網從web1.0跨入到SNS時代,用戶開始從站點獲取數(shù)據跨入到用戶自己產生數(shù)據,分享數(shù)據,這時用戶的數(shù)據存儲開始急劇增長。更重要的是時代的發(fā)展,用戶內容從文字時代跨入到了圖片時代,這個時代的明星產品--qq相冊的誕生,更是讓用戶分享數(shù)據達到了一個頂峰。在這個數(shù)據開始飛速增長的時代,當時是沒有合適的存儲引擎和方案來支持的。在qq相冊飛速發(fā)展的同時,由當時存儲系統(tǒng)的萬金油--mysql搭建的存儲解決方案,遇到了訪問延時高,擴容困難,成本高,等問題。而這一類問題也同樣困擾著所有的互聯(lián)網公司。因為那時是一個沒有真正存儲系統(tǒng)的混亂時代。這個時代,我們的存儲還不到1PB。

這時在GFS,bigtable等論文中,各大互聯(lián)網公司從困擾中找到靈感,紛紛效仿推出類GFS存儲引擎。騰訊也不例外,由TEG--架構平臺部研發(fā)的TFS存儲家族橫空出世,并推進了由沒有定制存儲系統(tǒng)的混亂時代向TFS1.0的演進。

2、TFS家族誕生

TFS家族1.0整體設計中包含對開發(fā),運維,資源管理等各個要素的考慮,并由各個相關要素的組件組成。其中最重要的兩個引擎組件為基于SAS和內存的KV索引存儲引擎,以及基于SATA的數(shù)據存儲引擎。正是這兩個核心引擎解決了騰訊存儲在跨越PB級別中,所遇到的存儲上的難題。

2.1 KV存儲引擎特性

以農牧場為代表,基于社交關系的各種應用和游戲越來越多。這類應用或游戲的特點是單個用戶的一個操作會涉及大量數(shù)據的讀寫,而且是對于數(shù)據的部分讀寫,對后臺數(shù)據存儲帶來的極大的性能挑戰(zhàn)。傳統(tǒng)關系型數(shù)據庫如Mysql更偏向數(shù)據一致性的保證,復雜的引擎設計注定了性能相對較低,雖然讀性能可以通過實現(xiàn)Cache解決,但是寫性能始終是一個不能規(guī)避的難題。因此,key-value形式數(shù)據庫特別適合,特點是小塊數(shù)據的快速存取、數(shù)據弱一致性。TFS家族的KV存儲引擎就是為這種業(yè)務場景而誕生的通用、高速、持久化Nosql存儲系統(tǒng)。KV存儲引擎具備高性能 、低成本、高可用的良好業(yè)務體驗,能輕松應對海量數(shù)據訪問、存儲成本敏感、延時敏感等問題,并且安全可靠 ,擁有多份熱點數(shù)據和流水落盤,備份中心備份數(shù)據和流水,具備回檔能力。

業(yè)務根據數(shù)據讀寫時延的需求,可以自由選擇內存,SSD,SAS等做為存儲介質,甚至可以更通用的讓系統(tǒng)自動選擇冷熱數(shù)據存儲在不同的介質上。在內存中存取延時達到***的us級別,支持超高并發(fā)的讀寫請求,普通單機可跑到30w/s讀或11w/s 寫。在加入多隊列支持和10G網卡后單機性能超過100w/s。這種讀寫性能,***的解決了農牧場的高并發(fā)寫問題。

KV引擎最重要的特性是多個介質集群中,可以自動調度數(shù)據,下圖就內存集群和SSD集群之間的數(shù)據自動調度。將熱數(shù)據存儲在內存集群,冷數(shù)據存儲在成本更低的SSD存儲集群有幾個優(yōu)點:用戶訪問是透明的,成本是降低的,體驗是提升的。

2.2 文件存儲引擎特性

TFS文件存儲引擎分為數(shù)據層、索引層和邏輯層三個部分。數(shù)據層負責文件數(shù)據的存儲,提供k-v接口,Value長度一般限定為1M,大文件由邏輯層切分成多個片順序存儲。索引層包含文件索引、目錄索引和去重索引。文件索引保存文件的元信息(創(chuàng)建時間、修改時間、文件長度)、分片信息和業(yè)務自定義的blob字段。目錄索引提供按照目錄樹組織的索引結構,索引中只保存文件、目錄的元信息和在文件中的key。去重索引保存了分片的哈希值與數(shù)據層key的對應關系,用于上傳時查找已經存在的數(shù)據分片,避免重復上傳。邏輯層串聯(lián)文件上傳、下載、刪除、修改等所有接口的流程控制,提供原子操作。

TFS文件存儲引擎主要解決了索引數(shù)據的存儲問題,數(shù)據層的管理,以及業(yè)務文件存儲特性的需求。

在TFS1.0家族的強力支撐下,我們解決了在圖片時代,SNS場景的存儲問題,這時用戶的數(shù)據依然急劇增長,由PB級別,飛速發(fā)展到幾百P級別。用戶的SNS場景依然猛烈的發(fā)展,但用戶內容卻慢慢的由圖片在向視頻轉變,隨著IT技術的發(fā)展,用戶的內容質量越來越高,視覺體驗越來越好,這都意味著***層的數(shù)據存儲爆發(fā)式的增長。而這些增長下,TFS1.0家族顯得越來越跟不上時代的發(fā)展,從而暴漏出了索引層成本高,功能不夠豐富,數(shù)據層的數(shù)據安全與成本之間的矛盾。在新時代新存儲矛盾的觸發(fā)下,TFS家族由1.0升級到了2.0版本,從而應對降低存儲成本以及新存儲功能的需求。

3、新TFS時代

3.1.1 數(shù)據存儲引擎的升級

為了降低數(shù)據存儲成本,我們采取用計算換取空間的做法,與傳統(tǒng)3副本存儲方式相比, TFS新文件存儲引擎的副本數(shù)只有1.X份,在保證數(shù)據可靠性的前提下,TFS通過犧牲一部分訪問性能,換取更大的成本收益。采取的是RS編碼方式,在M份業(yè)務數(shù)據塊的基礎上編碼計算出X份校驗塊, 一共M+X個塊組成一個條帶落地存儲。

3.1.2 索引存儲引擎的升級

我們使用了多年的KV存儲引擎,也遇到了新的挑戰(zhàn),不支持范圍查詢接口。業(yè)務有相關需求時,需要通過大量數(shù)據組織邏輯,以構建出適用的數(shù)據模型。所以TFS家族推出新的類LevelDB存儲引擎,豐富TFS家族中的組件,主要設計如下:

通過業(yè)務場景和底層平臺的深度配合,對外提供了豐富的數(shù)據處理接口。

3.1.3 業(yè)務形態(tài)的深度理解

在TFS家族核心組件全面升級的過程中,我們不光需要底層平臺的強力支持,更需要在對業(yè)務深度理解的前提下,做出精準的存儲策略,打造出專業(yè)的定制存儲系統(tǒng)。

在基于TFS打造的專業(yè)圖片平臺,圖片平臺以穩(wěn)定可靠的圖片存儲及加速下載為基礎,配套以強大的圖片處理、自動化的違禁圖審核功能,并針對業(yè)務模型做冷熱流量調度、存儲數(shù)據降冷等一系列成本體驗優(yōu)化,為圖片客戶提供了一套完整的解決方案。強大的圖片處理功能涵蓋了各類應用場景,有圖片縮放、裁剪、旋轉,圖片水印,格式轉換,信息獲取等,支持上傳時處理后落地存儲,也支持下載時實時生成。同時圖片豐富的表現(xiàn)力,也讓違禁圖十分活躍,圖片平臺配有上傳即可觸發(fā)的全自動審核流程,平臺具備整套審核及禁圖操作,業(yè)務無需參與即可輕松享有。

在文件存儲平臺上,在TFS家族中推出了一系列針對不同用戶場景使用的分支存儲系統(tǒng),包括適應騰訊視頻等高頻存儲業(yè)務使用的多副本存儲引擎,適應QQ離線傳文件等臨時存儲業(yè)務使用的即刪即用存儲引擎,等等。往往一個業(yè)務的文件不可能只適應一個存儲系統(tǒng),大多數(shù)文件隨著時間的推移會逐漸變冷,通過對各個業(yè)務的深入理解,對用戶行為的深度理解,以及大量的數(shù)據分析,平臺實現(xiàn)了文件在各個存儲引擎之間的智能調度,大大節(jié)省了存儲成本。

3.1.4 自動的運營體系

架平的運營體系主要包括基礎配置CMDB、成本預算核算、報表&流程&測試、質量監(jiān)控、現(xiàn)網操作這五大塊,這五大部分組合成一個完整的運營體,為部門業(yè)務安全可靠高效的運營保駕護航。

CMDB:基礎性的配置管理,包括了設備、機房、業(yè)務等基礎信息,主要提供設備資源提前報備、到貨驗收初始化、高危端口管理、設備轉移退役等功能;

成本預算核算:部門本身不直接對外營收,但卻承載了公司海量的存儲、CDN服務,部門每年的運營成本占了公司總運營成本的相當一部分,必然要有全面、嚴謹?shù)某杀竟芸睾怂?,然后分攤到服務的各個業(yè)務部門;

報表&流程&測試:業(yè)務多報表多,需要有個報表系統(tǒng)來統(tǒng)一管理,現(xiàn)網變更的管理、突發(fā)事件產生后在哪里跟進、驗證是否解決等,以及對現(xiàn)網質量關鍵的保障一環(huán)就是模塊開發(fā)完成后發(fā)布到現(xiàn)網前,還需要先過自動化測試這一環(huán)節(jié),以便發(fā)現(xiàn)潛在的BUG;

質量監(jiān)控:我們的眼睛,時刻盯著數(shù)十萬臺服務器、成百上千個業(yè)務,一旦出現(xiàn)異常,最快秒級主動通知到負責人,降低對業(yè)務的影響時長;

現(xiàn)網操作:服務器達到數(shù)十萬臺、分布在各種不同運營商、甚至海外機房、aws等場景,我們有一套專用系統(tǒng)來支撐對現(xiàn)網安全、高效的操作。

4、結束語

正是有了新TFS家族,定制的KV引擎,文件存儲引擎,以及對業(yè)務數(shù)據的深度理解,多年來積累的現(xiàn)網運營經驗,才確保了EB級的數(shù)據,安全穩(wěn)定的運行。在這個過程中,我們積累了多年的海量數(shù)據運營經驗,也會在接下來的系列文章中,依次呈現(xiàn),敬請期待。


網站欄目:EB級存儲引擎背后的技術
URL網址:http://uogjgqi.cn/article/cdejeeh.html
掃二維碼與項目經理溝通

我們在微信上24小時期待你的聲音

解答本文疑問/技術咨詢/運營咨詢/技術建議/互聯(lián)網交流