小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Tachyon——以內(nèi)存為核心的開源分布式存儲(chǔ)系統(tǒng)

 方珺逸 2016-01-17

Tachyon是一個(gè)以內(nèi)存為核心的開源分布式存儲(chǔ)系統(tǒng),也是目前發(fā)展最迅速的開源大數(shù)據(jù)項(xiàng)目之一。Tachyon為不同的大數(shù)據(jù)計(jì)算框架(如Apache Spark,Hadoop MapReduce, Apache Flink等)提供可靠的內(nèi)存級(jí)的數(shù)據(jù)共享服務(wù)。此外,Tachyon還能夠整合眾多現(xiàn)有的存儲(chǔ)系統(tǒng)(如Amazon S3, Apache HDFS, RedHat GlusterFS, OpenStack Swift等),為用戶提供統(tǒng)一的、易用的、高效的數(shù)據(jù)訪問平臺(tái)。本文首先向讀者介紹Tachyon項(xiàng)目的誕生背景和目前發(fā)展的情況;然后詳解Tachyon系統(tǒng)的基本架構(gòu)以及目前一些重要的功能;最后,分享一個(gè)Tachyon在百度大數(shù)據(jù)生產(chǎn)環(huán)境下的幾個(gè)應(yīng)用案例。


1.Tachyon簡介


隨著技術(shù)的發(fā)展,內(nèi)存的吞吐量在不斷地提高,單位容量的內(nèi)存價(jià)格在不斷降低,這為“內(nèi)存計(jì)算”提供可能。在大數(shù)據(jù)計(jì)算平臺(tái)領(lǐng)域,采用分布式內(nèi)存計(jì)算模式的Spark驗(yàn)證了這一點(diǎn)。Spark相比于MapReduce大大提升了大數(shù)據(jù)的計(jì)算性能,受到了業(yè)界和社區(qū)的廣泛關(guān)注。然而,還是有很多問題在計(jì)算框架層難以解決,如:不同的Spark應(yīng)用或不同計(jì)算框架(Spark,MapReduce,Presto)間仍需通過基于磁盤的存儲(chǔ)系統(tǒng)(如HDFS,Amazon S3等)交換數(shù)據(jù);當(dāng)Spark計(jì)算任務(wù)崩潰,JVM緩存的數(shù)據(jù)會(huì)丟失; JVM中大量緩存的數(shù)據(jù)增加了Java垃圾回收的壓力。


Tachyon最初出現(xiàn)是為了有效地解決了上述問題,它計(jì)劃構(gòu)建一個(gè)獨(dú)立的存儲(chǔ)層來快速共享不同計(jì)算框架的數(shù)據(jù),實(shí)現(xiàn)方式上將數(shù)據(jù)置于堆外(off-heap)內(nèi)存以避免大量垃圾回收開銷。例如,對(duì)應(yīng)Spark應(yīng)用而言,可以帶來以下作用:


  1. 不同Spark應(yīng)用,甚至不同計(jì)算平臺(tái)上的應(yīng)用需要數(shù)據(jù)共享時(shí),通過Tachyon進(jìn)行內(nèi)存讀寫,避免緩慢的磁盤操作。

  2. 使用Tachyon進(jìn)行數(shù)據(jù)緩存,當(dāng)Spark任務(wù)崩潰,數(shù)據(jù)仍緩存在Tachyon內(nèi)存中,任務(wù)重啟后能夠直接從Tachyon中讀取數(shù)據(jù)。

  3. 多個(gè)Spark應(yīng)用理論上甚至可以共享同一份Tachyon緩存的數(shù)據(jù),避免內(nèi)存資源的浪費(fèi),減輕Java垃圾回收的壓力。



圖1. Tachyon在生態(tài)系統(tǒng)的位置


圖1給出了Tachyon部署時(shí)所處的位置。Tachyon被部署在計(jì)算平臺(tái)之下和現(xiàn)有的存儲(chǔ)系統(tǒng)之上,能夠在不同計(jì)算框架間共享數(shù)據(jù)。同時(shí),現(xiàn)有的海量數(shù)據(jù)不需要進(jìn)行遷移,上層的計(jì)算作業(yè)仍能通過Tachyon訪問到底層存儲(chǔ)平臺(tái)上的數(shù)據(jù)。Tachyon作為一個(gè)以內(nèi)存為中心的中間存儲(chǔ)層,不僅能極大地提升上層計(jì)算平臺(tái)的性能,還能充分利用不同特性的底層存儲(chǔ)系統(tǒng),更可以有效地整合兩者的優(yōu)勢。


Tachyon最初是由李浩源博士發(fā)起的源自UC Berkeley AMPLab的研究項(xiàng)目(該實(shí)驗(yàn)室也是Mesos和Spark的發(fā)源地)。自2013年4月開源以來,Tachyon社區(qū)不斷壯大,已經(jīng)成為發(fā)展速度最快的開源大數(shù)據(jù)項(xiàng)目之一,目前已有來自超過50個(gè)組織機(jī)構(gòu)的200多人參與到了對(duì)Tachyon項(xiàng)目的貢獻(xiàn)中,也有超過100家公司部署了Tachyon。于此同時(shí),Tachyon的核心創(chuàng)建者和開發(fā)人員創(chuàng)立了Tachyon Nexus公司,其中不乏UC Berkeley、CMU等博士以及Google, Palantir, Yahoo!等前員工。 2015年3月美國華爾街日報(bào)報(bào)道了Tachyon Nexus獲得硅谷著名風(fēng)投Andreessen Horowitz 的750萬美元A輪投資。



圖2. Tachyon項(xiàng)目貢獻(xiàn)者的增長情況


在學(xué)術(shù)界, 國內(nèi)的南京大學(xué)PASA大數(shù)據(jù)實(shí)驗(yàn)室一直積極關(guān)注并參與到Tachyon項(xiàng)目的開發(fā)中,共向Tachyon社區(qū)貢獻(xiàn)了100多個(gè)PR,近300次commit,包括為Tachyon實(shí)現(xiàn)性能測試框架tachyon-perf,增加LFU、LRFU等多個(gè)替換策略,改進(jìn)WebUI頁面,以及其他一些性能優(yōu)化的工作。此外,我們還撰寫了Tachyon相關(guān)的中文博客,以便中文讀者和用戶能夠更深入地了解和使用Tachyon。


在工業(yè)界,百度也把Tachyon運(yùn)用到其大數(shù)據(jù)系統(tǒng)中, Tachyon在過去一年中穩(wěn)定的支持著百度的可交互式查詢業(yè)務(wù),令百度的交互式查詢提速30倍。在驗(yàn)證了Tachyon的高性能以及可靠性后,百度在內(nèi)部使用Tachyon的0.9版成功部署了1000個(gè)worker的世界最大Tachyon集群,總共提供50TB的內(nèi)存存儲(chǔ)。此集群在百度內(nèi)部已經(jīng)穩(wěn)定運(yùn)行了一個(gè)月,也驗(yàn)證的Tachyon的可擴(kuò)展性。于此同時(shí),百度的另外一個(gè)Tachyon部署中用Tachyon層次化數(shù)據(jù)管理了2PB數(shù)據(jù)。


2.Tachyon系統(tǒng)架構(gòu)


這一章中我們簡介Tachyon系統(tǒng)的基本架構(gòu),包括Tachyon的基本組件及其功能。



圖3. Tachyon的系統(tǒng)架構(gòu)


圖2是Tachyon系統(tǒng)的基本架構(gòu),主要包括4個(gè)基本組件:Master、Worker和Client,以及可插拔的底層存儲(chǔ)系統(tǒng)(Underlayer Storage System)。每個(gè)組件的具體功能職責(zé)如下:


  • Tachyon Master主要負(fù)責(zé)管理兩類重要信息。第一,Tachyon Master中記錄了所有數(shù)據(jù)文件的元數(shù)據(jù)信息,包括整個(gè)Tachyon命名空間(namespace)的組織結(jié)構(gòu),所有文件和數(shù)據(jù)塊的基本信息等。第二,Tachyon Master監(jiān)管著整個(gè)Tachyon系統(tǒng)的狀態(tài),包括整個(gè)系統(tǒng)的存儲(chǔ)容量使用情況,所有Tachyon Worker的運(yùn)行狀態(tài)等。

  • Tachyon Worker負(fù)責(zé)管理本地節(jié)點(diǎn)上的存儲(chǔ)資源,包括內(nèi)存、SSD和HDD等。Tachyon中的所有數(shù)據(jù)文件被劃分為一系列數(shù)據(jù)塊,Tachyon Worker以塊為粒度進(jìn)行存儲(chǔ)和管理,如:為新的數(shù)據(jù)塊分配空間、將熱數(shù)據(jù)塊從SSD或HDD移至內(nèi)存、實(shí)時(shí)或定期備份數(shù)據(jù)塊到底層存儲(chǔ)系統(tǒng)。同時(shí),Tachyon Worker定時(shí)向Tachyon Master發(fā)送心跳(heartbeat)以告知自身的狀態(tài)信息。

  • Tachyon Client是上層應(yīng)用訪問Tachyon數(shù)據(jù)的入口。訪問過程可以包括如下幾步:①Client向Master詢問數(shù)據(jù)文件的基本信息,包括文件位置,數(shù)據(jù)塊大小等;②Client嘗試從本地Worker中讀取對(duì)應(yīng)數(shù)據(jù)塊,若本地不存在Worker或者數(shù)據(jù)塊不在本地Worker中,則嘗試從遠(yuǎn)程Worker中讀??;③若數(shù)據(jù)還未被緩存到Tachyon中,則Client會(huì)從底層存儲(chǔ)系統(tǒng)中讀取對(duì)應(yīng)數(shù)據(jù)。此外,Tachyon Client會(huì)向所有建立連接的Tachyon Master和Tachyon Worker定時(shí)發(fā)送心跳以表示仍處于連接租期中,中斷連接后Tachyon Master和Tachyon Worker會(huì)回收對(duì)應(yīng)Client的臨時(shí)空間。

  • 底層存儲(chǔ)系統(tǒng)既可以被Tachyon用來備份數(shù)據(jù),也可以作為Tachyon緩存數(shù)據(jù)的來源,上層應(yīng)用在使用Tachyon Client時(shí)也能直接訪問底層存儲(chǔ)系統(tǒng)上的數(shù)據(jù)。底層存儲(chǔ)系統(tǒng)保證了Tachyon Worker在發(fā)生故障而崩潰后不會(huì)導(dǎo)致數(shù)據(jù)丟失,同時(shí)也使得上層應(yīng)用在遷移到Tachyon的同時(shí)不需要進(jìn)行底層數(shù)據(jù)的遷移。目前Tachyon支持的底層存儲(chǔ)系統(tǒng)有HDFS,GlusterFS,Amazon S3,OpenStack Swift以及本地文件系統(tǒng),且能夠比較容易地嵌入更多的現(xiàn)有存儲(chǔ)系統(tǒng)。

在實(shí)際部署時(shí), Tachyon Master通常部署在單個(gè)主節(jié)點(diǎn)上(Tachyon也支持多個(gè)節(jié)點(diǎn)上部署Tachyon Master,并通過使用ZooKeeper來防止單點(diǎn)故障);將Tachyon Worker部署在多個(gè)從節(jié)點(diǎn);Tachyon Client和應(yīng)用相關(guān),可以位于任何一個(gè)節(jié)點(diǎn)上。


3.Tachyon的特色功能


本節(jié)我們簡介Tachyon面向上層應(yīng)用的特色功能。


3.1 支持多種部署方式


作為大數(shù)據(jù)系統(tǒng)中的存儲(chǔ)層,Tachyon為用戶提供了不同的啟動(dòng)模式、對(duì)資源管理框架的支持、以及目標(biāo)運(yùn)行環(huán)境,能夠部署多種大數(shù)據(jù)平臺(tái)環(huán)境中:

  • 啟動(dòng)模式:以正常模式啟動(dòng)單個(gè)Tachyon Master;以高級(jí)容錯(cuò)模式啟動(dòng)多個(gè)Tachyon Master,并使用ZooKeeper進(jìn)行管理;

  • 資源管理框架:以Standalone方式直接運(yùn)行在操作系統(tǒng)之上;運(yùn)行在Apache Mesos之上;運(yùn)行在Apache Hadoop Yarn之上;

  • 目標(biāo)運(yùn)行環(huán)境:部署在本地集群環(huán)境中;部署在Virtual Box虛擬機(jī)中;部署在容器(如Docker)中;部署在Amazon EC2云平臺(tái)上(Tachyon社區(qū)正在開發(fā)支持Tachyon部署在阿里云OSS上)


用戶可以自由選擇不同的啟動(dòng)模式、資源管理框架和目標(biāo)運(yùn)行環(huán)境,Tachyon為多種組合都提供了相應(yīng)的啟動(dòng)腳本,能夠很方便地將Tachyon部署在用戶的環(huán)境中。


3.2 層次化存儲(chǔ)


Tachyon的層次化存儲(chǔ)充分利用了每個(gè)Tachyon Worker上的本地存儲(chǔ)資源,將Tachyon中的數(shù)據(jù)塊按不同熱度存放在了不同的存儲(chǔ)層中。目前Tachyon所使用的本地存儲(chǔ)資源包括MEM(Memory,內(nèi)存)、SSD(Solid State Drives,固態(tài)硬盤)和HDD(Hard Disk Drives,磁盤)。在Tachyon Worker中,每一類存儲(chǔ)資源被視作一層(Storage Tier),每一層又可以由多個(gè)目錄(Storage Directory)組成,并且用戶可以設(shè)置每個(gè)存儲(chǔ)目錄的容量。


在讀寫Tachyon數(shù)據(jù)時(shí),分配器(Allocator)負(fù)責(zé)為新的數(shù)據(jù)塊選擇目標(biāo)存儲(chǔ)目錄,替換器(Evictor)負(fù)責(zé)將冷數(shù)據(jù)從內(nèi)存剔至SSD和HDD,同時(shí)將熱數(shù)據(jù)從SSD和HDD提升至內(nèi)存中。目前分配器所使用的分配策略包括Greedy、MaxFree和RoundRobin。替換器所使用的替換策略包括Greedy、LRU/PartialLRU、LRFU。額外地,Tachyon還為用戶提供了Pin功能,支持用戶將所需要的數(shù)據(jù)始終存放在內(nèi)存中。關(guān)于如何配置Tachyon層次化存儲(chǔ),可以進(jìn)一步參考Tachyon官方文檔。


3.3 靈活的讀寫機(jī)制


為了充分利用多層次的存儲(chǔ)資源和底層存儲(chǔ)系統(tǒng),Tachyon為用戶提供了不同的讀寫類型(ReadType/WriteType)API,用于靈活控制讀寫數(shù)據(jù)時(shí)的行為方式,不同的讀寫類型及其含義如表1所示。


表1. 讀寫類型(ReadType/WriteType)的取值及其含義



除了上述的讀寫類型外,Tachyon還提供了另一套控制方式:TachyonStorageType和UnderStorageType,用于分別控制在Tachyon存儲(chǔ)和底層存儲(chǔ)系統(tǒng)上的讀寫行為,具體取值及其含義如表2所示。實(shí)際上,這種控制方式是Tachyon-0.8之后新增的,控制粒度更細(xì),功能也更多,因此推薦用戶采用這種方式控制讀寫行為。


表2. TachyonStorageType/UnderStorageType的值及其含義



3.4 文件系統(tǒng)層的Lineage容錯(cuò)機(jī)制


在Tachyon中,Lineage表示了兩個(gè)或多個(gè)文件之間的世系關(guān)系,即輸出文件集B是由輸入文件集A通過怎樣的操作得到的。有了Lineage信息后,在文件數(shù)據(jù)意外丟失時(shí),Tachyon就會(huì)啟動(dòng)重計(jì)算作業(yè),根據(jù)現(xiàn)有的文件重新執(zhí)行同樣的操作,以恢復(fù)丟失的數(shù)據(jù)。圖3給出了一個(gè)Lineage示例,文件集A通過一個(gè)Spark作業(yè)生成文件集B;文件集C通過另一個(gè)Spark作業(yè)生成文件集D;B和D作為同一個(gè)MapReduce作業(yè)的輸入,輸出為文件集E。那么,如果文件集E意外丟失,并且沒有備份,那么Tachyon就會(huì)重新啟動(dòng)對(duì)應(yīng)的MapReduce作業(yè),再次生成E。


圖4. Tachyon的Lineage機(jī)制


3.5 統(tǒng)一命名空間


對(duì)于Tachyon的用戶而言,通過Tachyon提供的接口所訪問到的是Tachyon文件系統(tǒng)的命名空間。當(dāng)用戶需要訪問Tachyon以外的文件和數(shù)據(jù)時(shí),Tachyon提供了Mount接口,能夠?qū)⑼獠看鎯?chǔ)系統(tǒng)的文件或目錄掛載到Tachyon的命名空間中。這樣用戶就能夠在統(tǒng)一的Tachyon命名空間中,使用相同或者自定義的路徑,訪問其他存儲(chǔ)系統(tǒng)上的文件和數(shù)據(jù)。


圖5. Tachyon的統(tǒng)一命名空間


3.6 HDFS兼容接口


在Tachyon出現(xiàn)之前,諸如Hadoop MapReduce以及Apache Spark的應(yīng)用大多使用HDFS、Amazon S3等存儲(chǔ)文件。Tachyon為這些應(yīng)用提供了一套HDFS兼容的接口(確切地說,是兼容了org.apache.hadoop.fs.FileSystem的接口),用戶可以在不改動(dòng)應(yīng)用源碼的情況下,通過以下3個(gè)步驟,將目標(biāo)文件系統(tǒng)更改為Tachyon:


1.將對(duì)應(yīng)版本Tachyon Client的jar包添加至運(yùn)行環(huán)境的CLASSPATH中;
2.添加Hadoop配置項(xiàng)<“fs.tachyon.impl”, “tachyon.hadoop.tfs”="">;
3.將原先的”hdfs://ip:port/file/X”路徑更改為”tachyon://ip:port/file/X”。


通常,用戶可以結(jié)合使用“HDFS兼容接口”和“統(tǒng)一命名空間”這兩個(gè)特性,將原先的大數(shù)據(jù)應(yīng)用直接運(yùn)行在Tachyon之上,而不需要進(jìn)行任何代碼和數(shù)據(jù)的遷移。


3.7 豐富的命令行式工具


Tachyon自帶了一個(gè)名為 “tfs”的命令行工具,能夠讓用戶以命令行的方式與Tachyon交互,而不需要編寫源碼來查看、新建、刪除Tachyon文件。例如:



“tfs”工具提供的全部命令使用方式詳見Tachyon官方文檔。


3.8 方便管理的WebUI


除了“tfs”工具外,Tachyon還在Tachyon Master和每個(gè)Tachyon Worker節(jié)點(diǎn)上啟動(dòng)了一個(gè)網(wǎng)頁管理頁面,用戶可以通過瀏覽器打開對(duì)應(yīng)的WebUI(默認(rèn)為http://:19999和http://:30000)。WebUI上列舉了整個(gè)Tachyon系統(tǒng)的基本信息、所有Tachyon Worker的運(yùn)行狀態(tài)、以及當(dāng)前Tachyon系統(tǒng)的配置信息。同時(shí),用戶可以直接在WebUI上瀏覽整個(gè)Tachyon文件系統(tǒng)、預(yù)覽文件內(nèi)容、甚至下載具體的某個(gè)文件。



圖6. Tachyon的WebUI


3.9 實(shí)時(shí)指標(biāo)監(jiān)控系統(tǒng)



圖7. Tachyon監(jiān)控的實(shí)時(shí)指標(biāo)(WebUI模式、JSON格式)


對(duì)于高級(jí)用戶和系統(tǒng)管理人員,Tachyon提供了一套實(shí)時(shí)指標(biāo)監(jiān)控系統(tǒng),實(shí)時(shí)地記錄和管理了Tachyon中一些重要的統(tǒng)計(jì)信息,包括存儲(chǔ)容量使用情況、現(xiàn)有Tachyon文件數(shù)、對(duì)文件的操作次數(shù)、現(xiàn)有的數(shù)據(jù)塊數(shù)、對(duì)數(shù)據(jù)塊的操作次數(shù)、總共讀寫的字節(jié)數(shù)等。根據(jù)用戶的配置,這些指標(biāo)能夠以多種方式進(jìn)行輸出:標(biāo)準(zhǔn)控制臺(tái)輸出、以CSV格式保存為文件、輸出到JMX控制臺(tái)、輸出到Graphite服務(wù)器以及輸出到Tachyon的WebUI。


3.10支持Linux FUSE


Tachyon-FUSE是Tachyon最新開發(fā)版的新特性,由Tachyon Nexus和IBM共同主導(dǎo)開發(fā)。在Linux系統(tǒng)中,F(xiàn)USE(Filesystem in Userspace,用戶空間文件系統(tǒng))模塊使得用戶能將其他文件系統(tǒng)掛載到本地文件系統(tǒng)的某一目錄下,然后以統(tǒng)一的方式進(jìn)行訪問。Tachyon-FUSE的出現(xiàn)使得用戶同樣可以將Tachyon文件系統(tǒng)掛載到本地文件系統(tǒng)中。通過Tachyon-FUSE,用戶/應(yīng)用可以使用訪問本地文件系統(tǒng)的方式來訪問Tachyon。這更加方便了用戶對(duì)Tachyon的管理和使用,以及現(xiàn)有基于FUSE接口的應(yīng)用通過Tachyon進(jìn)行內(nèi)存加速或者數(shù)據(jù)共享。


4.Tachyon在百度大數(shù)據(jù)平臺(tái)的應(yīng)用案例


在百度,我們從2014年底開始關(guān)注Tachyon。當(dāng)時(shí)我們使用Spark SQL進(jìn)行大數(shù)據(jù)分析工作,由于Spark是個(gè)基于內(nèi)存的計(jì)算平臺(tái),我們預(yù)計(jì)絕大部分的數(shù)據(jù)查詢應(yīng)該在幾秒或者十幾秒完成以達(dá)到交互查詢的體驗(yàn)。然而,我們卻發(fā)現(xiàn)實(shí)際查詢幾乎都需要上百秒才能完成,其原因在于我們的計(jì)算資源與數(shù)據(jù)倉庫可能并不在同一個(gè)數(shù)據(jù)中心。 在這種情況下,我們每一次數(shù)據(jù)查詢都可能需要從遠(yuǎn)端的數(shù)據(jù)中心讀取數(shù)據(jù),由于數(shù)據(jù)中心間的網(wǎng)絡(luò)帶寬以及延時(shí)的問題,導(dǎo)致每次查詢都需要較長的時(shí)間(>100秒)才能完成。更糟糕的是,很多查詢的重復(fù)性或相似性很高,同樣的數(shù)據(jù)很可能會(huì)被查詢多次,如果每次都從遠(yuǎn)端的數(shù)據(jù)中心讀取,必然造成資源浪費(fèi)。


為了解決這個(gè)問題,在一年前我們借助Tachyon管理遠(yuǎn)程及本地?cái)?shù)據(jù)讀取和調(diào)度,盡量避免跨數(shù)據(jù)中心讀數(shù)據(jù)。 當(dāng)Tachyon被部署到Spark所在的數(shù)據(jù)中心后,每次數(shù)據(jù)冷查詢時(shí),我們還是從遠(yuǎn)端數(shù)據(jù)倉庫拉數(shù)據(jù),但是當(dāng)數(shù)據(jù)再次被查詢時(shí), Spark將直接從同一數(shù)據(jù)中心的Tachyon中讀取數(shù)據(jù), 從而提高查詢性能。在我們的環(huán)境和應(yīng)用中實(shí)驗(yàn)表明:如果是從非本機(jī)的Tachyon讀取數(shù)據(jù)的話,耗時(shí)降到10到15秒,比原來的性能提高了10倍; 最好的情況下,如果從本機(jī)的Tachyon讀數(shù)據(jù),查詢僅需5秒,比原來的性能提高了30倍, 效果很明顯。除了性能的提高,更難能可貴的是Tachyon運(yùn)行穩(wěn)定,在過去一年中很好的支持著百度的交互式查詢業(yè)務(wù), 而且社區(qū)在每一版迭代更新中都不斷提供更多的功能以及不斷提高系統(tǒng)的穩(wěn)定性,讓業(yè)界對(duì)Tachyon系統(tǒng)更有信心。


在過去一個(gè)月,百度在為大規(guī)模使用Tachyon做準(zhǔn)備,驗(yàn)證Tachyon的可擴(kuò)展性。我們使用Tachyon的最新版成功部署了1000個(gè)worker的Tachyon集群,在本文完成時(shí)這應(yīng)該是世界最大的Tachyon集群。此集群總共提供超過50TB的內(nèi)存存儲(chǔ),在百度內(nèi)部已經(jīng)穩(wěn)定運(yùn)行了一個(gè)月,現(xiàn)在有不同的百度業(yè)務(wù)在上面試運(yùn)行以及壓力測試。在百度的圖搜變現(xiàn)業(yè)務(wù)上,我們與社區(qū)合作在Tachyon上搭建了一個(gè)高性能的Key/Value存儲(chǔ),提供線上圖片服務(wù)。同時(shí)由于圖片直接存在Tachyon里,我們的線下計(jì)算可以直接從Tachyon中讀取圖片。 這使得我們將線上以及線下系統(tǒng)整合成一個(gè)系統(tǒng),既簡化了開發(fā)流程,也節(jié)省了存儲(chǔ)資源,達(dá)到了事半功倍的效果。本文篇幅有限,期待在后期給大家詳細(xì)介紹百度是1000 worker的Tachyon 集群的實(shí)用案例,包括如何使用Tachyon整合線上線下的存儲(chǔ)資源等。


5.結(jié)語


作為一個(gè)以內(nèi)存為中心、統(tǒng)一的分布式存儲(chǔ)系統(tǒng),Tachyon極大地增強(qiáng)了大數(shù)據(jù)生態(tài)中存儲(chǔ)層的功能。雖然Tachyon項(xiàng)目相對(duì)還比較年輕,但已經(jīng)很成熟穩(wěn)定,并且已經(jīng)在學(xué)術(shù)界以及工業(yè)界取得了成功。隨著整個(gè)計(jì)算機(jī)產(chǎn)業(yè)的發(fā)展,內(nèi)存變的越來越便宜,在計(jì)算集群中可使用的內(nèi)存容量會(huì)不斷增長,我們相信Tachyon也必將會(huì)在大數(shù)據(jù)平臺(tái)中發(fā)揮越來越重要的作用。


現(xiàn)在Tachyon項(xiàng)目發(fā)展迅速,更多的功能也在逐步得到完善,應(yīng)用前景也頗為廣闊。Tachyon正不斷地在支持更多的底層存儲(chǔ)系統(tǒng)(特別地,社區(qū)中已經(jīng)有人正在實(shí)施支持阿里云OSS存儲(chǔ)系統(tǒng)以及百度開放云平臺(tái),這對(duì)國內(nèi)的用戶和開發(fā)者來說是個(gè)很好的機(jī)會(huì));同時(shí)Tachyon也在實(shí)現(xiàn)安全性相關(guān)的支持,以充分滿足業(yè)界生成環(huán)境的需要;更進(jìn)一步地,Tachyon目前更多地被視為文件系統(tǒng),而作為一個(gè)統(tǒng)一存儲(chǔ)系統(tǒng),Tachyon也將支持更多的數(shù)據(jù)結(jié)構(gòu),以滿足不同計(jì)算框架的需要。在本文完成時(shí)Tachyon已經(jīng)準(zhǔn)備發(fā)布下一版,有興趣的讀者們可以多關(guān)注Tachyon,到社區(qū)里進(jìn)行技術(shù)討論以及功能開發(fā)。


作者簡介:


顧榮,Tachyon項(xiàng)目核心開發(fā)者之一,南京大學(xué)PASA大數(shù)據(jù)實(shí)驗(yàn)室博士生。曾在Microsoft Research Aisa, Intel, Baidu以及Transwarp從事過大數(shù)據(jù)平臺(tái)和算法相關(guān)的實(shí)習(xí)工作。目前主要研究興趣為大數(shù)據(jù)計(jì)算和存儲(chǔ)平臺(tái)、分布式機(jī)器學(xué)習(xí)。


劉少山,Tachyon項(xiàng)目核心開發(fā)者之一,百度公司美國研發(fā)中心高級(jí)架構(gòu)師。加州大學(xué)歐文分校計(jì)算機(jī)博士。曾在LinkedIn, Microsoft, Microsoft Research, INRIA, Intel以及Broadcom工作。目前主要從事百度大數(shù)據(jù),深度學(xué)習(xí),以及異構(gòu)計(jì)算平臺(tái)架構(gòu)與開發(fā)。


(責(zé)編/魏偉,關(guān)注Docker和OpenStack,投稿請聯(lián)系微信“k15751091376”或者郵箱weiwei@csdn.net)



本文為CSDN原創(chuàng),請點(diǎn)擊
閱讀原文
查看完整文章并參與討論


如果您喜歡這篇文章,請點(diǎn)擊右上角
將本文分享給你的朋友




    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請遵守用戶 評(píng)論公約

    類似文章 更多