大數據技術在企業(yè)中的應用

什么是數據尺上?

數據庫的ACID特性

  • 原子性(Automicity)
  • 一致性
  • 隔離性
  • 持久性
  • 實時性
  • 業(yè)務屬性(數據業(yè)務屬性不同處理方式不同)

什么是大數據蛉威?

流程數據再多日丹,也到不了大數據的級別
業(yè)務數據?什么類型的業(yè)務數據蚯嫌?
從Lucene到Nutch到Hadoop

傳統J2EE的瓶頸

數據存儲哲虾,數據檢索丙躏,多用戶同時訪問,關系型數據庫

為什么需要大數據技術束凑?大數據的技術體系

分布式晒旅,并行計算的出現,使得數據存儲與數據計算都發(fā)生了本質上的區(qū)別
大數據存儲與計算是怎樣的汪诉,有什么不同废恋。

計算機硬盤的發(fā)展趨勢:尋址時間的提升遠遠不敵于傳輸速率的提升。
尋址是將磁頭移動到特定硬盤位置進行讀/寫操作的過程扒寄,它是導致硬盤操作延遲的主要原因鱼鼓,而傳輸速率取決于硬盤的帶寬。

如果數據訪問模式中包含大量的硬盤尋址该编,那么讀取大量數據集就必然會花更長的時間迄本。
如果數據庫系統只更新一小部分記錄,那么傳統的B樹(關系型數據庫的數據結構课竣,受限于尋址的速率)就更有優(yōu)勢岸梨。但數據庫系統如果有大量數據更新時,B樹的效率就明顯落后于MapReduce稠氮。
讀時模式與寫時模式曹阔。
寫時模式在寫入時格式也要寫入?(本人理解的是否到位隔披?)
讀時模式在處理數據時才對數據進行解釋赃份。
Hadoop非常適合分析各種日志(非規(guī)范化數據記錄,關系型數據往往是規(guī)范的)文件奢米。
MapReduce以及Hadoop中其他的處理模型是可以隨著數據規(guī)模線性伸縮的抓韩。對數據分區(qū)后,函數原語(如map和reduce)能夠在各個分區(qū)上并行工作鬓长。這意味著谒拴,如果輸入的數據量是原來的兩倍,那么作業(yè)的運行時間也需要兩倍涉波。但如果集群規(guī)模擴展為原來的兩倍英上,那么作業(yè)的運行速度卻仍然與原來一樣快。SQL查詢一般不具備該特性啤覆。

與網格計算苍日、高性能計算(HPC)的區(qū)別

廣義上講,基于消息傳遞接口(Message Passing Interface,MPI)的高性能計算采用的方法是將作業(yè)分散到集群的各臺機器上窗声,這些機器訪問存儲區(qū)域網絡(SAN)所組成的共享文件系統相恃。這比較適用于“計算密集型”的作業(yè),但如果節(jié)點需要訪問的數據量更龐大(高達幾百GB)笨觅,很多計算節(jié)點就會因為網絡帶寬的瓶頸問題而不得不閑下來等數據拦耐。
Hadoop盡量在計算節(jié)點上存儲數據耕腾,以實現數據的本地快速訪問∩迸矗“數據本地化(data locality)”特性是Hadoop數據處理的核心幽邓,并因此而獲得良好的性能。
意識到網絡帶寬是數據中心環(huán)境最珍貴的資源(到處復制數據很容易耗盡網絡帶寬)之后火脉,Hadoop通過顯式網絡拓撲結構來保留網絡帶寬牵舵,這種排列方式并沒有降低Hadoop對計算密集型數據進行分析的能力。

數據流的顯性倦挂、隱形

并行存儲與數據副本

為什么需要并行存儲畸颅?
單機讀寫瓶頸
為什么需要數據副本?
硬件故障問題方援,如果沒有副本没炒,一臺機器故障會遺失數據,只能等待機器恢復后犯戏,這部分數據才會恢復送火。

HDFS

帶副本的分布式存儲文件系統。
超大文件:幾百MB先匪,幾百GB种吸,甚至幾百TB大小的文件。
流式數據訪問
商用硬件:普通硬件呀非,故障率高坚俗。HDFS被設計成能夠繼續(xù)運行且不讓用戶察覺到明顯的中段。
低時間延遲的數據訪問:并不適合在HDFS上運行岸裙,HDFS式為高數據吞吐量應用優(yōu)化的猖败,這可能會以提高時間延遲為代價。對低延遲的訪問需求降允,HBase是更好的選擇恩闻。
大量的小文件:并不適合大兩小文件,會占滿namenode的內存剧董。
多用戶寫入幢尚,任意修改文件:并不支持,只支持單個寫入者送滞,并且寫操作是以append的方式添加的侠草。不支持多個寫入者的操作,也不支持在文件任意位置進行修改犁嗅。

數據塊
網絡拓撲

同一節(jié)點上的進程
同一機架上的不同節(jié)點
同一數據中心中不同機架上的節(jié)點
不同數據中心中的節(jié)點

Hadoop的默認布局策略是在運行客戶端的節(jié)點上放第1個復本(如果客戶端運行在集群之外,就隨機選擇一個節(jié)點晤碘,系統會避免挑選那些存儲太滿或太忙的節(jié)點)褂微。第2個復本放在與第一個不同且隨機另外選擇的某個機架中的節(jié)點上功蜓。第3個復本與第2個復本放在同一個機架上,且隨機選擇另一個節(jié)點宠蚂。其他復本放在集群中隨機選擇的節(jié)點上式撼,系統會盡量避免在同一個機架上放太多復本。

數據聚合

分布式存儲轉換為一個數據集求厕。

MapReduce

每個查詢需要處理整個數據集或至少一個數據集的絕大部分著隆。MR并不適合交互式分析,不可能執(zhí)行一條查詢并在幾秒內或更短的時間內得到結果呀癣。典型情況下美浦, 執(zhí)行查詢需要幾分鐘或更多時間。因此项栏,MR更適合沒有用戶現場等待查詢結果的離線使用場景浦辨。

怎么解決MR的在線訪問問題呢?

MapReduce的工作流
目前已經知道了MapReduce的應用開發(fā)機制沼沈,那么如何將數據處理問題轉化成MapReduce模型呢流酬?日常需要處理數據問題的場景都發(fā)生在什么時候?
數據入庫列另,數據查詢芽腾。

如果處理過程更復雜,這種復雜度一般是因為有更多的MapReduce作業(yè)页衙,而不是更復雜的map和reduce函數晦嵌。換言之,通常是增加更多的作業(yè)拷姿,而不是增加作業(yè)的復雜度惭载。對于更復雜的問題,可以(其實是必須)使用比MapReduce更高級的技術响巢,比如Pig描滔,Hive,Cascading踪古,Crunch含长,Spark。一個直接的好處是伏穆,有了它之后拘泞,就用不著處理到MapReduce作業(yè)的轉換,而是集中精力分析正在執(zhí)行的任務枕扫。

關系型數據庫的瓶頸陪腌?
關系型數據庫的索引原理:
B-Tree是最常用的索引數據結構。

JobControl

YARN(Yet Another Resource Negotiator)

Hadoop的集群資源管理系統。YARN被引入Hadoop 2诗鸭,最初是為了改善MapReduce的實現染簇,但它具有足夠的通用性,同樣可以支持其他的分布式計算模式强岸。
YARN提供請求和使用集群資源的API锻弓,但這些API很少直接用于用戶代碼。相反蝌箍,用戶代碼中用的是分布式計算框架提供的更高層API青灼,這些API建立在YARN之上且向用戶隱藏了資源管理細節(jié)。
一些分布式計算框架(MapReduce,Spark,Tez)作為YARN應用運行在集群計算層(YARN)和集群存儲層(HDFS和HBase)上妓盲。
還有一層應用是運行在計算框架之上的處理框架杂拨,如Pig,Hive本橙,Crunch等等扳躬。

YARN本身不會為應用的各部分(客戶端、master和進程)彼此間通信提供任何手段甚亭。大多數重要的人YARN應用使用某種形式的遠程通信機制(例如Hadoop的RPC層)來向客戶端傳遞狀態(tài)更新和返回結果贷币,但這些通信機制都是專屬于各應用的。

HA(High availability)

YARN中的調度 important?髡R畚啤!暇唾!

  • FIFO調度
  • 容量調度
  • 公平調度

Hadoop生態(tài)圈

HBase:可以提供在線訪問的組件

使用HDFS作為底層存儲促脉。提供對單行數據的在線讀寫訪問,還提供對數據塊的讀寫批處理策州。

YARN

分布式集群資源管理系統瘸味,不僅能跑MapReduce,還能跑任何一個分布式程序基于Hadoop集群的數據而運行够挂。

Interactive SQL(交互式SQL)

利用MapReduce進行分發(fā)并使用一個分布式查詢引擎旁仿,使得在Hadoop上獲得SQL查詢低延遲響應的同時還能保持對大數據集規(guī)模的可擴展性。
impala
Hive

Iterative processing(迭代處理)

迭代處理孽糖,在內存中保存結果集
Spark

Stream processing(流式處理)

在無邊界數據流上運行實時枯冈、分布式計算
Storm
Spark Streaming
Samza

Search

Solr(基于Lucene)

Hadoop 的規(guī)模分析

根據需要制定多大規(guī)模的Hadoop集群?

?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末办悟,一起剝皮案震驚了整個濱河市尘奏,隨后出現的幾起案子,更是在濱河造成了極大的恐慌病蛉,老刑警劉巖炫加,帶你破解...
    沈念sama閱讀 216,544評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件瑰煎,死亡現場離奇詭異,居然都是意外死亡琢感,警方通過查閱死者的電腦和手機丢间,發(fā)現死者居然都...
    沈念sama閱讀 92,430評論 3 392
  • 文/潘曉璐 我一進店門探熔,熙熙樓的掌柜王于貴愁眉苦臉地迎上來驹针,“玉大人,你說我怎么就攤上這事诀艰〖砩” “怎么了?”我有些...
    開封第一講書人閱讀 162,764評論 0 353
  • 文/不壞的土叔 我叫張陵其垄,是天一觀的道長苛蒲。 經常有香客問我,道長绿满,這世上最難降的妖魔是什么臂外? 我笑而不...
    開封第一講書人閱讀 58,193評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮喇颁,結果婚禮上漏健,老公的妹妹穿的比我還像新娘。我一直安慰自己橘霎,他們只是感情好蔫浆,可當我...
    茶點故事閱讀 67,216評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著姐叁,像睡著了一般瓦盛。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上外潜,一...
    開封第一講書人閱讀 51,182評論 1 299
  • 那天原环,我揣著相機與錄音,去河邊找鬼处窥。 笑死嘱吗,一個胖子當著我的面吹牛,可吹牛的內容都是我干的碧库。 我是一名探鬼主播柜与,決...
    沈念sama閱讀 40,063評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼嵌灰!你這毒婦竟也來了弄匕?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 38,917評論 0 274
  • 序言:老撾萬榮一對情侶失蹤沽瞭,失蹤者是張志新(化名)和其女友劉穎迁匠,沒想到半個月后,有當地人在樹林里發(fā)現了一具尸體,經...
    沈念sama閱讀 45,329評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡城丧,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,543評論 2 332
  • 正文 我和宋清朗相戀三年延曙,在試婚紗的時候發(fā)現自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片亡哄。...
    茶點故事閱讀 39,722評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡枝缔,死狀恐怖,靈堂內的尸體忽然破棺而出蚊惯,到底是詐尸還是另有隱情愿卸,我是刑警寧澤,帶...
    沈念sama閱讀 35,425評論 5 343
  • 正文 年R本政府宣布截型,位于F島的核電站趴荸,受9級特大地震影響,放射性物質發(fā)生泄漏宦焦。R本人自食惡果不足惜发钝,卻給世界環(huán)境...
    茶點故事閱讀 41,019評論 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望波闹。 院中可真熱鬧酝豪,春花似錦、人聲如沸舔痪。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,671評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽锄码。三九已至夺英,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間滋捶,已是汗流浹背痛悯。 一陣腳步聲響...
    開封第一講書人閱讀 32,825評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留重窟,地道東北人载萌。 一個月前我還...
    沈念sama閱讀 47,729評論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像巡扇,于是被迫代替她去往敵國和親扭仁。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,614評論 2 353

推薦閱讀更多精彩內容