讀書筆記——大數(shù)據(jù)浪潮

數(shù)據(jù)集:類型魄幕,語義,結(jié)構(gòu)颖杏,組織纯陨,粒度,可訪問性

公有云留储,私有云翼抠,混合云

云計(jì)算改變了IT架構(gòu)阴颖,大數(shù)據(jù)影響業(yè)務(wù)決策丐膝,影響在業(yè)務(wù)層

數(shù)據(jù)中心

零拷貝技術(shù)

硬件基礎(chǔ)架構(gòu)必須具備伸縮性和動(dòng)態(tài)重新配置功能,以針對(duì)不同的應(yīng)用環(huán)境

存儲(chǔ)系統(tǒng)應(yīng)盡可能具備更多的接口功能

分布式存儲(chǔ)系統(tǒng)侠畔,要保證多個(gè)副本數(shù)據(jù)完全一致

列式存儲(chǔ)數(shù)據(jù)庫:Bigtable软棺,Hypertable

數(shù)據(jù)庫編程模型:MR喘落,并行編程模型 并行處理和分發(fā)

map函數(shù)處理輸入并產(chǎn)生中間鍵值對(duì)

避免了開發(fā)并行應(yīng)用程序的繁瑣步驟:數(shù)據(jù)調(diào)度最冰,容錯(cuò)暖哨,節(jié)點(diǎn)通信等問題

大數(shù)據(jù)分析:聚類分析、因子分析沛慢、相關(guān)分析团甲、回歸分析等

大數(shù)據(jù)處理方法:布隆過濾器躺苦、索引产还、Hashing(散列),Triel樹脐区,并行計(jì)算

大數(shù)據(jù)架構(gòu):實(shí)時(shí)(HANA)坡椒,離線(Timetunnel倔叼,Chukwa)內(nèi)存 海量

涵蓋數(shù)據(jù)采集,歸類哩罪,挖掘,呈現(xiàn)碘耳,部署和移植的一體化解決方案

大數(shù)據(jù)一體機(jī)

IDH 4000個(gè)節(jié)點(diǎn)

HBase適合高并發(fā)查詢辛辨,大對(duì)象存儲(chǔ) HDFS低延遲

Hadoop調(diào)優(yōu)

動(dòng)態(tài)不停機(jī)擴(kuò)容

校驗(yàn)和是檢查數(shù)據(jù)完整性的重要方式之一

Hadoop校驗(yàn)機(jī)制)(略)

對(duì)本地文件iO檢查斗搞,對(duì)HDFS的IO進(jìn)行檢查

DN接受數(shù)據(jù)的兩種情況:一是本地上傳慷妙,二是從其他DN上接受

MR在并行處理時(shí)需要將文件分割成許多部分膝擂,編程中可以使MR在程序中使用壓縮

序列化是將對(duì)象轉(zhuǎn)化為字節(jié)流的方法架馋,即用字節(jié)流描述對(duì)象,兩個(gè)目的:進(jìn)程間通信铣墨,以及數(shù)據(jù)持久化

Hadoop使用RPC實(shí)現(xiàn)進(jìn)程間通信

HDFS不支持多用戶同時(shí)操作一個(gè)文件

fsck file-blocks

安全模式是不會(huì)進(jìn)行數(shù)據(jù)塊的復(fù)制的

Namenode本地文件結(jié)構(gòu):{dsf.name.dir}/current/version? edit伊约、fsimages 屡律、fstime

這是元數(shù)據(jù)的鏡像? version是java文件 包含namespaceID cTIme storageType layoutVersion

namespaceID是文件系統(tǒng)的唯一標(biāo)識(shí)符降淮,是在文件系統(tǒng)第一次格式化是創(chuàng)建佳鳖,在DN和NN之間保持一致系吩,NN會(huì)使用他識(shí)別新的DN,DN向NN注冊(cè)才會(huì)獲得? cTime是創(chuàng)建時(shí)間月弛,除非文件系統(tǒng)被更新,否則是0 layoutVersion是負(fù)整數(shù)菜皂,定義了HDFS數(shù)據(jù)持久的版本恍飘,各節(jié)點(diǎn)版本號(hào)要一致

edit常侣、fsimages 弹渔、fstime都是二進(jìn)制文件肢专,可以通過Writable進(jìn)行序列化

StandbyNOde結(jié)構(gòu)和NN一樣

DN結(jié)構(gòu):

DN不需要格式化博杖,啟動(dòng)時(shí)自動(dòng)創(chuàng)建存儲(chǔ)目錄current/version blkXXX subdirXXX version

namespaceID cTIme,layoutVersion都和NN一樣storageID是唯一的筷登,也是多出來的,用來標(biāo)識(shí)DN

blk前綴文件 有兩種:HDFS文件快本身狈醉,即原始文件惠险;塊的元數(shù)據(jù)信息.meta

元數(shù)據(jù)文件由一個(gè)包含版本和類型信息的文件頭與一系列的校驗(yàn)和組成

當(dāng)目錄中存儲(chǔ)的塊數(shù)量達(dá)到一定規(guī)模班巩,DN會(huì)創(chuàng)建一個(gè)新的目錄,用于保存新的塊以及元數(shù)據(jù)逊桦,達(dá)到numblokcs指定的數(shù)量時(shí)强经,便會(huì)創(chuàng)建

Clinet讀取DN時(shí),如果是壞的夕凝,下次不會(huì)再讀了

distcp用于兩個(gè)HDFS之間復(fù)制數(shù)據(jù),有許多選項(xiàng)可以復(fù)制逮矛,比如忽略失敗须鼎,限制文件等府蔗,其實(shí)是一個(gè)MP任務(wù)姓赤,只需要map

如果不同的Hadoop版本,distcp會(huì)因RPC系統(tǒng)不兼容而失敗

要考慮每個(gè)節(jié)點(diǎn)多少個(gè)map任務(wù)

fsck只能檢測(cè)蝌焚,不能修復(fù)只洒,檢測(cè)系統(tǒng)中不一致的情況

hdfs://ip:90000/user/root? nn端口是9000? 有屬性可以設(shè)置 lfs.default.name

MR

map接受key value同時(shí)輸出keyvalue? 具有相同key的value給reduce函數(shù)

reduce接受(key values)輸出也是

hive中影響map任務(wù)數(shù)量的因素:輸入文件總個(gè)數(shù)毕谴,輸入文件大小距芬,Block大小

HBase

client用RPC機(jī)制與HMaster和RegionServer通信蔑穴,管理類的操作,Client與Hmaster進(jìn)行RPC奕剃;讀寫操作纵朋,Client與RegionServer進(jìn)行RPC

最好將具備共同IO特性的列放在一個(gè)cf中

HBase存儲(chǔ)格式:Hfile hLogfiel 以wal的格式存儲(chǔ)茄袖,物理上是順序文件類型

rowkey需要填充到相同長度

scan時(shí)可以設(shè)置起始行和結(jié)束行(rowkey)

HBase0宪祥。92版本之后引入?yún)f(xié)處理器(coprocessors)新特性:訪問控制,復(fù)雜索引藏澳,二級(jí)索引

Hive

hive的數(shù)據(jù)是存儲(chǔ)在HDFS上的

HIVe——port:10000

metastore和hive運(yùn)行在同一個(gè)進(jìn)程里

JDBC翔悠,ODBC都是使用Thrift與Hive服務(wù)器進(jìn)行通信

外表是不會(huì)把源數(shù)據(jù)移到自己的倉庫的,甚至不檢查是否存在

如果hive和其他工具一起管理表双炕,則建立外表妇斤,比如胀滚,從hive中導(dǎo)出數(shù)據(jù)給其他程序使用咽笼;或者同一數(shù)據(jù)集關(guān)聯(lián)不同的數(shù)據(jù)模式戚炫。否則完全又hive管理,就是托管表施掏,

外部表更安全茅糜,方便共享

托管表蔑赘,會(huì)移動(dòng)文件到指定的位置,所以load data時(shí)會(huì)出現(xiàn)文件不存在

序列化工具就是比如insert 或ctas耙箍,serDe會(huì)把hive的數(shù)據(jù)行內(nèi)部表示形式序列化成字節(jié)形式到輸出文件中

反序列化就是查詢

TEXT:每個(gè)文本行就是一個(gè)row

hive不支持delete辩昆,如果想刪除汁针,首先查出需要保留的內(nèi)容,然后用這些數(shù)據(jù)覆蓋這些表 insert overwrite into tablename select tablename where

針對(duì)有多人寫入數(shù)據(jù)的場(chǎng)景术吗,可以考慮采用 Hbase 的方案

若待處理的數(shù)據(jù)只有幾十 GB 的話较屿,不建議使用 Hadoop卓练,因?yàn)闆]有任何好處

MapReduce 編程模型

稱為映射和縮減階段嘱么,

在 Map 中進(jìn)行數(shù)據(jù)的讀取和預(yù)處理顽悼,之后將預(yù)處理的結(jié)果發(fā)送到 Reduce 中進(jìn)行合并蔚龙;

每個(gè)分片大小參數(shù)是很重要的木羹,

由于 Mapper 和 Reducer 往往不在同一個(gè)節(jié)點(diǎn)上運(yùn)行坑填,所以

Reducer 需要從多個(gè)節(jié)點(diǎn)上下載 Mapper 的結(jié)果數(shù)據(jù),并對(duì)這些數(shù)據(jù)進(jìn)行處理妖枚,然后才能

被 Reducer 處理绝页。

MapReduce 數(shù)據(jù)本地化(Data-Local)

MapReduce 計(jì)算框架中負(fù)責(zé)計(jì)算任務(wù)調(diào)度的 JobTracker 對(duì)應(yīng) HDFS 的 NameNode

的角色抒寂,只不過一個(gè)負(fù)責(zé)計(jì)算任務(wù)調(diào)度屈芜,一個(gè)負(fù)責(zé)存儲(chǔ)任務(wù)調(diào)度。MapReduce 計(jì)算框架中負(fù)責(zé)真正計(jì)算任務(wù)的 TaskTracker對(duì)應(yīng)到HDFS 的DataNode

的角色井佑,一個(gè)負(fù)責(zé)計(jì)算躬翁,一個(gè)負(fù)責(zé)管理存儲(chǔ)數(shù)據(jù)

考慮到“本地化原則”盒发,一般地宁舰,將 NameNode 和 JobTracker 部署到同一臺(tái)機(jī)器上蛮艰,各個(gè) DataNode 和 TaskNode 也同樣部署到同一臺(tái)機(jī)器上壤蚜。

這樣做的目的是將 map 任務(wù)分配給含有該 map 處理的數(shù)據(jù)塊的 TaskTracker 上,同時(shí)將程序 JAR 包復(fù)制到該 TaskTracker 上來運(yùn)行聪富,這叫“運(yùn)算移動(dòng),數(shù)據(jù)不移動(dòng)”水泉。而分配

reduce 任務(wù)時(shí)并不考慮數(shù)據(jù)本地化善涨。

ZooKeeper 命名空間中的 Znode,兼具文件和目錄兩種特點(diǎn)節(jié)點(diǎn)類型

Persistent Nodes:永久有效地節(jié)點(diǎn),除非 client 顯式的刪除,否則一直存在草则。

Ephemeral Nodes:臨時(shí)節(jié)點(diǎn),僅在創(chuàng)建該節(jié)點(diǎn) client 保持連接期間有效,一旦連接丟失,zookeeper 會(huì)自動(dòng)刪除該節(jié)點(diǎn)。

Sequence Nodes:順序節(jié)點(diǎn),client 申請(qǐng)創(chuàng)建該節(jié)點(diǎn)時(shí), ZooKeeper 會(huì)自動(dòng)在節(jié)點(diǎn)路徑末尾添加遞增序號(hào),這種類型是實(shí)現(xiàn)分布式鎖,分布式 queue 等特殊功能的關(guān)鍵蟹漓。

客戶端可以在節(jié)點(diǎn)上設(shè)置 watch炕横,我們稱之為監(jiān)視器。當(dāng)節(jié)點(diǎn)狀態(tài)發(fā)生改變時(shí)(Znode的增葡粒、刪份殿、改)將會(huì)觸發(fā) watch 所對(duì)應(yīng)的操作。當(dāng) watch 被觸發(fā)時(shí)嗽交,ZooKeeper 將會(huì)向客

戶端發(fā)送且僅發(fā)送一條通知卿嘲,因?yàn)?watch 只能被觸發(fā)一次,這樣可以減少網(wǎng)絡(luò)流量

傳統(tǒng)的文件系統(tǒng)中司蔬,ACL 分為兩個(gè)維度左医,一個(gè)是屬組,一個(gè)是權(quán)限,子目錄/文件默認(rèn)

繼承父目錄的 ACL屏轰。而在 Zookeeper 中榛做,node 的 ACL 是沒有繼承關(guān)系的,是獨(dú)立控制的。

Zookeeper 的 ACL舞萄,可以從三個(gè)維度來理解:一是 scheme; 二是 user; 三是 permission含思,

通常表示為 scheme:id:permissions, 下面從這三個(gè)方面分別來介紹:

鎖服務(wù)可以分為兩類,一個(gè)是保持獨(dú)占,另一個(gè)是控制時(shí)序

Hbase 適用場(chǎng)景:

1) 大數(shù)據(jù)量存儲(chǔ)居砖,大數(shù)據(jù)量高并發(fā)操作

2) 需要對(duì)數(shù)據(jù)隨機(jī)讀寫操作

3) 讀寫訪問均是非常簡(jiǎn)單的操作

fsck 用來檢查系統(tǒng)中共不一致的情況蔗草,比如文件只有目錄,副本丟失等情況

MR過程中,可能會(huì)涉及分區(qū)范咨,合并昭抒,全排序,分布式緩存艇纺,壓縮等技術(shù)

在map端的key有數(shù)據(jù)傾斜的情況盟劫,即大多數(shù)數(shù)據(jù)的key相同影所,這樣會(huì)導(dǎo)致大多數(shù)數(shù)據(jù)會(huì)集中在一個(gè)kreduce上,造成其壓力太大

如果mapreduce的數(shù)據(jù)源是大量的文本文件或可分割文件,那么map任務(wù)就是這些文件占據(jù)的快的數(shù)量背零;如果是成千上百的文件,那么作業(yè)將會(huì)在內(nèi)核中創(chuàng)建和銷毀map任務(wù)進(jìn)程上消耗大量時(shí)間,會(huì)比實(shí)際處理數(shù)據(jù)時(shí)間還要長

每個(gè)文件都至少需要一個(gè)map任務(wù)

合并小文件:

1.如果是一個(gè)大邏輯文件的分片润樱,可以寫一個(gè)程序

2.本身小皂冰,無法合并,需要容器,對(duì)文件進(jìn)行分組

HARfies:緩解小文件消耗nn內(nèi)存的問題船万,對(duì)于客戶端來說,使用HAR文件

沒有影響

缺陷在于無法被壓縮茬高,無法優(yōu)化mr訪問本地磁盤性能

可以自己創(chuàng)建

SerquenceFile,文件名作為key蛉签。內(nèi)容作為value

map端和reduce端都可能發(fā)生數(shù)據(jù)傾斜,map端如果傾斜经瓷,會(huì)讓多樣化的數(shù)據(jù)集處理效率低,

原因:

1.大量的不可分塊的超大文件

2.大量小文件

reduce端如果傾斜彤悔,則來源于mr的默認(rèn)分區(qū)器

數(shù)據(jù)傾斜是不可避免的

如果傾斜望拖,找出來:把沒完成的和已完成的比較一下

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末挫鸽,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子很泊,更是在濱河造成了極大的恐慌委造,老刑警劉巖亮垫,帶你破解...
    沈念sama閱讀 221,820評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件逛腿,死亡現(xiàn)場(chǎng)離奇詭異境蜕,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)嗜憔,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,648評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門秃励,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人吉捶,你說我怎么就攤上這事〗远” “怎么了呐舔?”我有些...
    開封第一講書人閱讀 168,324評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長慷蠕。 經(jīng)常有香客問我珊拼,道長,這世上最難降的妖魔是什么流炕? 我笑而不...
    開封第一講書人閱讀 59,714評(píng)論 1 297
  • 正文 為了忘掉前任澎现,我火速辦了婚禮,結(jié)果婚禮上每辟,老公的妹妹穿的比我還像新娘剑辫。我一直安慰自己,他們只是感情好渠欺,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,724評(píng)論 6 397
  • 文/花漫 我一把揭開白布妹蔽。 她就那樣靜靜地躺著,像睡著了一般挠将。 火紅的嫁衣襯著肌膚如雪胳岂。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,328評(píng)論 1 310
  • 那天舔稀,我揣著相機(jī)與錄音乳丰,去河邊找鬼。 笑死内贮,一個(gè)胖子當(dāng)著我的面吹牛产园,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播贺归,決...
    沈念sama閱讀 40,897評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼淆两,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了拂酣?” 一聲冷哼從身側(cè)響起秋冰,我...
    開封第一講書人閱讀 39,804評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎婶熬,沒想到半個(gè)月后剑勾,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體埃撵,經(jīng)...
    沈念sama閱讀 46,345評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,431評(píng)論 3 340
  • 正文 我和宋清朗相戀三年虽另,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了暂刘。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,561評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡捂刺,死狀恐怖谣拣,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情族展,我是刑警寧澤森缠,帶...
    沈念sama閱讀 36,238評(píng)論 5 350
  • 正文 年R本政府宣布,位于F島的核電站仪缸,受9級(jí)特大地震影響贵涵,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜恰画,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,928評(píng)論 3 334
  • 文/蒙蒙 一宾茂、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧拴还,春花似錦跨晴、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,417評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至拇厢,卻和暖如春爱谁,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背孝偎。 一陣腳步聲響...
    開封第一講書人閱讀 33,528評(píng)論 1 272
  • 我被黑心中介騙來泰國打工访敌, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人衣盾。 一個(gè)月前我還...
    沈念sama閱讀 48,983評(píng)論 3 376
  • 正文 我出身青樓寺旺,卻偏偏與公主長得像,于是被迫代替她去往敵國和親势决。 傳聞我的和親對(duì)象是個(gè)殘疾皇子阻塑,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,573評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容