日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > windows >内容正文

windows

Kudu:为大数据快速分析量身定制的 Hadoop 存储系统

發(fā)布時(shí)間:2025/3/20 windows 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Kudu:为大数据快速分析量身定制的 Hadoop 存储系统 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Apache Hadoop提供了一系列數(shù)據(jù)存儲(chǔ)與處理的組件,覆蓋了多種多樣、應(yīng)用于企業(yè)級(jí)關(guān)鍵服務(wù)的用戶(hù)案例。在Cloudera,我們一直在努力探索Hadoop的各種可能性,拓展Hadoop的邊界——使得Hadoop更快、更好用、更安全。

自2012年,我們開(kāi)啟了一個(gè)關(guān)于Apache Hadoop存儲(chǔ)系統(tǒng)的驗(yàn)證工作(避免Hadoop被約束在部分特定用戶(hù)案例中)。驗(yàn)證過(guò)程中,我們發(fā)現(xiàn)了一些重要的發(fā)展趨勢(shì)并最終決定去開(kāi)發(fā)一個(gè)新型的存儲(chǔ)系統(tǒng),對(duì)HDFS與Apache HBase提供的功能進(jìn)行補(bǔ)充。現(xiàn)在,我們非常自豪地推出Kudu,一個(gè)Hadoop生態(tài)系統(tǒng)上的新生開(kāi)源組件。Kudu的目標(biāo)是:

提供快速的全量數(shù)據(jù)分析與實(shí)時(shí)處理功能;

充分利用先進(jìn)CPU與I/O資源;

支持?jǐn)?shù)據(jù)更新;

簡(jiǎn)單、可擴(kuò)展的數(shù)據(jù)模型

在這里,我們會(huì)對(duì)打造Kudu的動(dòng)機(jī)、Kudu架構(gòu)等給出簡(jiǎn)單的介紹。

功能上的空白
在很多Cloudera的客戶(hù)環(huán)境中,我們發(fā)現(xiàn)了“混合架構(gòu) (hybrid architecture)”的趨勢(shì),即很多Hadoop工具會(huì)被同時(shí)部署。HBase主要被用于支撐數(shù)據(jù)導(dǎo)入,(及其)快速的小查詢(xún)執(zhí)行,更重要的是支持?jǐn)?shù)據(jù)的隨機(jī)修改。而HDFS與Impala組合的使用可以高效處理列式存儲(chǔ)數(shù)據(jù)(例如Apache Parquet),在大規(guī)模數(shù)據(jù)集上提供高性能的分析型查詢(xún)。

目前,大部分客戶(hù)都被迫去打造一個(gè)混合式的架構(gòu),將多個(gè)工具集成在一起進(jìn)行使用。客戶(hù)首先選擇一種存儲(chǔ)系統(tǒng)導(dǎo)入、更新數(shù)據(jù),但是后續(xù)為了最優(yōu)化分析型報(bào)表的生成就得轉(zhuǎn)向采用另一種存儲(chǔ)系統(tǒng)。雖然我們的客戶(hù)已經(jīng)成功地部署、維護(hù)了這樣的混合架構(gòu),但是我們相信,如果一個(gè)存儲(chǔ)系統(tǒng)能夠?yàn)槎喾N不同類(lèi)型的工作負(fù)載提供高性能的處理能力,那么對(duì)于那種需要使用混合架構(gòu)才能解決的問(wèn)題將是更加優(yōu)雅的解決方案。

新的硬件
另一個(gè)我們?cè)诳蛻?hù)現(xiàn)場(chǎng)發(fā)現(xiàn)的趨勢(shì)是硬件能力的不斷加強(qiáng)。首先是內(nèi)存的增長(zhǎng),從32GB到2012年的128GB到如今的256GB。然后是磁盤(pán),現(xiàn)在在很多普通服務(wù)器中SSD的應(yīng)用也是屢見(jiàn)不鮮。HBase、HDFS、以及其他的Hadoop工具通過(guò)調(diào)整、升級(jí)也在不斷適應(yīng)更新?lián)Q代的硬件,但是這些系統(tǒng)在當(dāng)初設(shè)計(jì)時(shí)集群的瓶頸在于底層磁盤(pán)的速度。最優(yōu)化磁盤(pán)存儲(chǔ)架構(gòu)的設(shè)計(jì)對(duì)于現(xiàn)代架構(gòu)(大量數(shù)據(jù)可以緩存在內(nèi)存中,永久存儲(chǔ)層數(shù)據(jù)的隨機(jī)訪問(wèn)速度是原來(lái)的100多倍)就未必是最優(yōu)的。

另外,隨著存儲(chǔ)層數(shù)據(jù)訪問(wèn)速度的不斷增長(zhǎng),整個(gè)系統(tǒng)性能的瓶頸反而轉(zhuǎn)向了CPU。當(dāng)存儲(chǔ)層越來(lái)越快,CPU效率變得愈發(fā)關(guān)鍵。

Kudu簡(jiǎn)介
為了應(yīng)對(duì)先前發(fā)現(xiàn)的這些趨勢(shì),有兩種不同的方式:持續(xù)更新現(xiàn)有的Hadoop工具或者重新設(shè)計(jì)開(kāi)發(fā)一個(gè)新的組件。其目標(biāo)是:

對(duì)數(shù)據(jù)掃描(scan)和隨機(jī)訪問(wèn)(random access)同時(shí)具有高性能,簡(jiǎn)化用戶(hù)復(fù)雜的混合架構(gòu);

高CPU效率,最大化先進(jìn)處理器的效能;

高IO性能,充分利用先進(jìn)永久存儲(chǔ)介質(zhì);

支持?jǐn)?shù)據(jù)的原地更新,避免額外的數(shù)據(jù)處理、數(shù)據(jù)移動(dòng)

我們?yōu)榱藢?shí)現(xiàn)這些目標(biāo),首先在現(xiàn)有的開(kāi)源項(xiàng)目上實(shí)現(xiàn)原型,但是最終我們得出結(jié)論:需要從架構(gòu)層作出重大改變。而這些改變足以讓我們重新開(kāi)發(fā)一個(gè)全新的數(shù)據(jù)存儲(chǔ)系統(tǒng)。于是3年前開(kāi)始開(kāi)發(fā),直到如今我們終于可以分享多年來(lái)的努力成果:Kudu,一個(gè)新的數(shù)據(jù)存儲(chǔ)系統(tǒng)。

Kudu設(shè)計(jì)
從用戶(hù)的角度而言,Kudu是用于存儲(chǔ)結(jié)構(gòu)化數(shù)據(jù)的(tables)。表,具有一個(gè)定義明確的表結(jié)構(gòu)(schema)包含一組預(yù)先定義的列。每個(gè)表具有一個(gè)主鍵(primary key),由一到多個(gè)列所組成。主鍵強(qiáng)加了數(shù)據(jù)唯一性的約束,同時(shí)也像索引一樣可以加速數(shù)據(jù)的更新和刪除。

Kudu表包含了一系列邏輯數(shù)據(jù)子集(Tablets),跟如同傳統(tǒng)數(shù)據(jù)庫(kù)系統(tǒng)的分區(qū)(Partition)。Kudu原生提供數(shù)據(jù)可用性支持,通過(guò)將Tablets復(fù)制到不同機(jī)器的方式(Raft consensus算法)處理硬件錯(cuò)誤帶來(lái)的數(shù)據(jù)不可訪問(wèn)問(wèn)題。每個(gè)Tablets的大小一般在幾十個(gè)GB左右,一個(gè)獨(dú)立的服務(wù)器節(jié)點(diǎn)一般可以為10—100個(gè)Tablets提供服務(wù)。

Kudu采用master后臺(tái)進(jìn)程管理元數(shù)據(jù)(就像是目錄catalog,描述數(shù)據(jù)的邏輯結(jié)構(gòu))、在硬件錯(cuò)誤恢復(fù)時(shí)實(shí)現(xiàn)調(diào)度(coordinator)以及記錄每個(gè)tablet服務(wù)器上tablets的狀態(tài)等。Kudu使用多個(gè)master后臺(tái)進(jìn)程以提供管理節(jié)點(diǎn)的高可用性。Kudu實(shí)現(xiàn)了Raft Consensus算法,因此很多master進(jìn)程的功能都可以通過(guò)Tablet服務(wù)器實(shí)現(xiàn),在未來(lái)的發(fā)展路線(xiàn)圖中,master的職責(zé)也會(huì)被分散到不同的機(jī)器上。另外,Kudu的master后臺(tái)進(jìn)程不會(huì)成為整個(gè)集群性能的瓶頸,根據(jù)在250節(jié)點(diǎn)集群的測(cè)試中,master后臺(tái)進(jìn)程完全沒(méi)有性能的問(wèn)題。

存儲(chǔ)于Kudu的數(shù)據(jù)是可修改的(利用log-structured變種算法)。更新、插入、刪除都是臨時(shí)先緩沖于內(nèi)存,隨后合并進(jìn)永久性列式存儲(chǔ)中。Kudu為了保證查詢(xún)延遲不出現(xiàn)大的波動(dòng),也會(huì)周期性地進(jìn)行小型維護(hù)操作,比如compaction。

Kudu提供了C++、Java API支持點(diǎn)操作與批操作。Kudu的另一個(gè)目標(biāo)是與現(xiàn)有的Hadoop生態(tài)系統(tǒng)工具進(jìn)行集成。目前,Kudu的Beta版本已經(jīng)與Impala、MapReduce以及Apache Spark實(shí)現(xiàn)了整合。隨著時(shí)間的推移,我們計(jì)劃將Kudu集成到整個(gè)Hadoop生態(tài)系統(tǒng)中。

本文轉(zhuǎn)自d1net(轉(zhuǎn)載)

總結(jié)

以上是生活随笔為你收集整理的Kudu:为大数据快速分析量身定制的 Hadoop 存储系统的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。