




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
大數(shù)據(jù)與機(jī)器學(xué)習(xí)
第二章大數(shù)據(jù)基礎(chǔ)概念大數(shù)據(jù)平臺(tái)(Hadoop)的兩大作用:數(shù)據(jù)存儲(chǔ)(HDFS)與數(shù)據(jù)計(jì)算(MapReduce、Spark、Flink)分布式數(shù)據(jù)存儲(chǔ):將數(shù)據(jù)分塊,分別以三副本保存在三個(gè)以上服務(wù)器上。數(shù)據(jù)計(jì)算(離線):通過Map與Reduce函數(shù)提取HDFS上的數(shù)據(jù)。Split:切分Map函數(shù):Key-value映射Shuffle&sort:排序Reduce函數(shù):集合數(shù)據(jù)產(chǎn)生最后統(tǒng)計(jì)結(jié)果HDFS:數(shù)據(jù)不可改變數(shù)據(jù)計(jì)算(實(shí)時(shí)):通過Spark等組件在內(nèi)存中進(jìn)行處理,最后永久存儲(chǔ)在HDFS迭代處理:下一個(gè)計(jì)算依賴前一個(gè)計(jì)算結(jié)果大數(shù)據(jù)處理架構(gòu)Lambda架構(gòu)lambda架構(gòu)是NathanMarz提出的一個(gè)大數(shù)據(jù)處理框架。該框架的做法是將大數(shù)據(jù)系統(tǒng)架構(gòu)拆分成了三層:BatchLayer:該層主要利用分布式處理系統(tǒng)處理大批量的數(shù)據(jù),在數(shù)據(jù)集上預(yù)先計(jì)算查詢函數(shù),并構(gòu)建查詢所對(duì)應(yīng)的BatchView。即所謂的批處理,適合處理離線數(shù)據(jù)。這一層中常用的框架是ApacheHadoop這一套,存儲(chǔ)一般用ElephantDB,ApacheImpala,SAPHANA或ApacheHiveSpeedLayer:該層的目的是提供低延時(shí)的Real-timeView,處理的都是實(shí)時(shí)的增量數(shù)據(jù)。這一層中常用的流數(shù)據(jù)處理框架有ApacheStorm,ApacheSpark,ApacheFlink.輸出通常是存儲(chǔ)在高速的NoSql數(shù)據(jù)庫中。存儲(chǔ)一般用ElasticsearchServingLayer:ServingLayer用于響應(yīng)用戶的查詢請(qǐng)求,它將BatchViews和Real-timeViews的結(jié)果進(jìn)行了合并,得到最后的結(jié)果。這一層通常就是使用的ApacheDruid,存儲(chǔ)一般用ApacheCassandra,ApacheHBase,MongoDB結(jié)合框架后,一個(gè)可能的架構(gòu):優(yōu)點(diǎn):同時(shí)支持實(shí)時(shí)和批處理業(yè)務(wù)(既保證了低延遲又保證了準(zhǔn)確性)缺點(diǎn):Lambda架構(gòu)需要在兩個(gè)不同的API(applicationprogramminginterface,應(yīng)用程序編程接口)中對(duì)同樣的業(yè)務(wù)邏輯進(jìn)行兩次編程:一次為批量計(jì)算的系統(tǒng),一次為流式計(jì)算的系統(tǒng)。針對(duì)同一個(gè)業(yè)務(wù)問題產(chǎn)生了兩個(gè)代碼庫,各有不同的漏洞。這種系統(tǒng)實(shí)際上非常難維護(hù)。隨著數(shù)據(jù)增量的增大,T+1的批處理計(jì)算時(shí)間可能不夠(當(dāng)天的數(shù)據(jù),一個(gè)晚上可能處理不完)實(shí)時(shí)與批量計(jì)算結(jié)果不一致引起的數(shù)據(jù)口徑問題Kappa架構(gòu)其核心思想就是,使用系統(tǒng)(eg.kafka)保存歷史消息數(shù)據(jù),然后通過回放數(shù)據(jù),利用Real-timeLayer這一層的流處理框架(eg.Flink,SparkStreaming,Storm)來完成業(yè)務(wù)上的批處理需求。核心步驟如下:數(shù)據(jù)需要可以被重放(重新處理)。例如,用Kafka來保存數(shù)據(jù),你需要幾天的數(shù)據(jù)量就保存幾天。用新實(shí)例重新處理計(jì)算重放的數(shù)據(jù)。即當(dāng)需要全量重新計(jì)算時(shí),重新起一個(gè)流計(jì)算實(shí)例,從頭開始讀取數(shù)據(jù)進(jìn)行處理,并輸出到一個(gè)新的結(jié)果存儲(chǔ)中。當(dāng)新的實(shí)例做完后,停止老的流計(jì)算實(shí)例,并把老的一些結(jié)果刪除。source和sink流處理通常也被稱之為事件處理,簡(jiǎn)單來說是指持續(xù)不斷地處理一系列無窮無盡地?cái)?shù)據(jù)或事件地過程。流處理或事件處理應(yīng)用程序大致可以看作一種有向圖(Directedgraph),大部分情況(但也并非總是如此)下也可以看作有向非循環(huán)圖(Directedacyclicgraph,DAG)。在這種圖中,每個(gè)邊緣(Edge)可代表一個(gè)數(shù)據(jù)或事件流,每個(gè)頂點(diǎn)(Vertex)代表使用應(yīng)用程序定義的邏輯處理來自相鄰邊緣的數(shù)據(jù)或事件的運(yùn)算符(Operator)。有兩種特殊類型的頂點(diǎn),通常稱之為Source和Sink,Source會(huì)消耗外部數(shù)據(jù)/事件并將其注入應(yīng)用程序,而Sink通常負(fù)責(zé)收集應(yīng)用程序生成的結(jié)果。圖1展示了這樣的一個(gè)流應(yīng)用程序范例。(個(gè)人理解:sink收集source的結(jié)果)執(zhí)行流/事件處理應(yīng)用程序的SPE通常可供用戶指定可靠性模式或處理語義,這代表了在跨越整個(gè)應(yīng)用程序圖處理數(shù)據(jù)時(shí)所能提供的保證。這些保證是有一定意義的,因?yàn)槲覀兪冀K可以假設(shè)由于網(wǎng)絡(luò)、計(jì)算機(jī)等原因遇到失敗進(jìn)而導(dǎo)致數(shù)據(jù)丟失的概率。在描述SPE能為應(yīng)用程序提供的數(shù)據(jù)處理語義時(shí),通常會(huì)使用三種模式/標(biāo)簽:最多一次(At-most-once)、最少一次(At-least-once),以及嚴(yán)格一次(Exactly-once)。Exactly-once(個(gè)人理解:Offset偏移量為每個(gè)運(yùn)算點(diǎn)設(shè)置量,定期檢查。)數(shù)據(jù)倉庫與數(shù)據(jù)中臺(tái)與業(yè)務(wù)中臺(tái)演化數(shù)據(jù)倉庫將各個(gè)業(yè)務(wù)系統(tǒng)的數(shù)據(jù)集合,統(tǒng)一標(biāo)準(zhǔn)、統(tǒng)一建模,為企業(yè)提供各種海量大數(shù)據(jù)離線處理的OLAP分析報(bào)表。其后演化為數(shù)據(jù)中臺(tái)的概念,繼承了OneIDa和OneModel,并在此之上加入了OneService統(tǒng)一數(shù)據(jù)服務(wù)接口提供給前臺(tái)。此時(shí)又衍生了業(yè)務(wù)中臺(tái)概念,即將通用業(yè)務(wù)統(tǒng)一的系統(tǒng)。如CDP用戶中心,營(yíng)銷中心,支付中心等。數(shù)倉包括:可涵蓋以下3種分布式數(shù)據(jù)庫組成(具體看業(yè)務(wù)需求,但數(shù)據(jù)中臺(tái)產(chǎn)品中一定含有HDFS,至于其他兩個(gè)看業(yè)務(wù)需要)數(shù)據(jù)中臺(tái)將所有數(shù)據(jù)形成服務(wù),以API方式提供給數(shù)據(jù)集市去調(diào)用。數(shù)據(jù)服務(wù)如下:數(shù)據(jù)集市DataMart滿足部門級(jí)業(yè)務(wù)需求的數(shù)倉,從企業(yè)級(jí)數(shù)倉中抽取數(shù)據(jù)形成的。與企業(yè)級(jí)數(shù)倉區(qū)別在,企業(yè)級(jí)數(shù)據(jù)是面向主題的數(shù)據(jù)集合,每個(gè)主題下又有多個(gè)事件和維度。而數(shù)據(jù)集市一般只有一張事實(shí)表和幾張維度表構(gòu)成。常見的數(shù)據(jù)集市產(chǎn)品有Tableau、PowBI、永洪等,易觀方舟、神策、諸葛、GIO也算是數(shù)據(jù)集市應(yīng)用。業(yè)務(wù)中臺(tái)把通用的業(yè)務(wù)下沉,形成通用服務(wù)平臺(tái)。如:用戶中心(CDP客戶數(shù)據(jù)平臺(tái))、產(chǎn)品中心、支付中心、營(yíng)銷中心。數(shù)據(jù)中臺(tái)基本架構(gòu)數(shù)據(jù)采集離線采集:DataX(非關(guān)系型數(shù)據(jù)庫)、Sqoop(大數(shù)據(jù)量的關(guān)系型數(shù)據(jù)庫)實(shí)時(shí)采集:Flume、KafkaConnect數(shù)據(jù)存儲(chǔ)HDFS:分布式數(shù)據(jù)庫,用來存儲(chǔ)非結(jié)構(gòu)化數(shù)據(jù)HBase:非結(jié)構(gòu)數(shù)據(jù)庫,用來簡(jiǎn)單實(shí)時(shí)查詢Hive:數(shù)據(jù)倉庫,通過SQL語言調(diào)用MapReduce進(jìn)行數(shù)據(jù)分析數(shù)據(jù)計(jì)算實(shí)時(shí)計(jì)算:Spark、Flink、Clickhouse離線計(jì)算(T+1):Impala跳過MapReduce直接從HDFS提數(shù)進(jìn)行查詢分析、Presto依賴于Hive進(jìn)行數(shù)據(jù)查詢分析,此兩者都是內(nèi)存處理。數(shù)據(jù)服務(wù)機(jī)器學(xué)習(xí):在離線數(shù)據(jù)建模方面SparkMLib內(nèi)置大量常規(guī)算法包,如隨機(jī)森 林、邏輯回歸、決策樹數(shù)據(jù)可視化:BI工具數(shù)據(jù)業(yè)務(wù)處理流程數(shù)據(jù)采集與存儲(chǔ)(HDFS)數(shù)據(jù)清洗(ETL)數(shù)據(jù)分析(hive、Impala、Presto)數(shù)據(jù)展示(sqoop把HDFS數(shù)據(jù)轉(zhuǎn)換為MySQL表數(shù)據(jù),用echart等工具進(jìn)行圖形化展示)數(shù)據(jù)索引與主鍵主鍵:檢索一行數(shù)據(jù)的唯一字段索引:對(duì)一列或多列的值進(jìn)行排序。檢索對(duì)應(yīng)的行數(shù)據(jù)。通過所以可快速查找特定信息。 比每行檢索要快。主要分為聚簇索引和非聚簇索引聚簇索引:磁盤數(shù)據(jù)重新按指定列值排序特性:每張表見能建一個(gè)聚簇索引,且至少該表120%空間存放表副本和 索引中間頁非聚簇索引:數(shù)據(jù)序列化序列化是什么序列化的作用就是可以將對(duì)象的內(nèi)容變成二進(jìn)制,存入文件中保存反序列化指的是將保存下來的二進(jìn)制對(duì)象數(shù)據(jù)恢復(fù)成對(duì)象序列化對(duì)對(duì)象的要求1.對(duì)象必須實(shí)現(xiàn)Serializable接口2.對(duì)象中的所有屬性必須都要可以被序列化,如果出現(xiàn)無法被序列化的屬性,則 序列化失敗為何要序列化持久化對(duì)象數(shù)據(jù)網(wǎng)絡(luò)中不能傳輸Java對(duì)象,只能將其序列化后傳輸二進(jìn)制數(shù)據(jù)數(shù)據(jù)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 初中化學(xué)課程跨學(xué)科實(shí)踐活動(dòng)案例設(shè)計(jì)與實(shí)施研究
- 生物化學(xué)(第4版)課件 第10章 基因的遺傳和表達(dá)
- 基于脾腎互贊理論從miR-335-LATS1-YAP-β-catenin通路探討補(bǔ)腎健脾方干預(yù)失重性O(shè)S的機(jī)制研究
- 電芯極耳超聲焊接技術(shù)及應(yīng)用
- 《社會(huì)財(cái)務(wù)共享服務(wù)實(shí)務(wù)》課件-領(lǐng)域1任務(wù)2-05.票據(jù)錄入-費(fèi)用類票據(jù)
- 燈具設(shè)計(jì)創(chuàng)新
- 健康秋天的果實(shí)
- 糖尿病的營(yíng)養(yǎng)治療與護(hù)理
- 腎內(nèi)科護(hù)理教學(xué)
- 《網(wǎng)頁設(shè)計(jì)與制作》課件-第8章Dreamweaver入門
- 中小學(xué)家長(zhǎng)會(huì)期中期末家長(zhǎng)會(huì)253
- 驅(qū)動(dòng)電機(jī)與電機(jī)控制器
- 2024年便攜式儲(chǔ)能行業(yè)分析報(bào)告
- 醫(yī)聯(lián)體協(xié)議書(2024版)
- 2023年全國(guó)職業(yè)院校技能大賽-中藥傳統(tǒng)技能賽項(xiàng)規(guī)程
- 11 《愛蓮說》對(duì)比閱讀-2024-2025中考語文文言文閱讀專項(xiàng)訓(xùn)練(含答案)
- 動(dòng)物園野生動(dòng)物馴養(yǎng)繁殖或馴養(yǎng)觀賞可行性研究報(bào)告
- 煤礦開掘技術(shù)操作規(guī)程
- 2023年上海市長(zhǎng)寧區(qū)高三年級(jí)下冊(cè)二模英語試卷含詳解
- 肺功能進(jìn)修總結(jié)匯報(bào)
- GB/T 3428-2024架空導(dǎo)線用鍍鋅鋼線
評(píng)論
0/150
提交評(píng)論