版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
項(xiàng)目三
電商產(chǎn)品數(shù)據(jù)分布式存儲(chǔ)2023年2月使用正則表達(dá)式匹配電商產(chǎn)品數(shù)據(jù)目錄Content1使用HadoopStreaming處理電商產(chǎn)品數(shù)據(jù)2數(shù)據(jù)缺失數(shù)據(jù)格式不統(tǒng)一項(xiàng)目導(dǎo)言零使用MapReduce框架對(duì)數(shù)據(jù)進(jìn)行清洗學(xué)習(xí)目標(biāo)零知識(shí)目標(biāo)了解MapReduce;熟悉MapReduce的架構(gòu);掌握YARN與MapReduce的關(guān)系;掌握正則表達(dá)式元字符含義。技能目標(biāo)具備使用正則表達(dá)式匹配文本的能力;具備運(yùn)行HadoopStreaming的能力;具備實(shí)現(xiàn)數(shù)據(jù)清洗的能力。素養(yǎng)目標(biāo)具有健康的體魄、健全的人格和健康的個(gè)性;具有良好的行為習(xí)慣和良好的心理素質(zhì);具有較強(qiáng)的勞動(dòng)組織能力、集體意識(shí)和社會(huì)責(zé)任心;具有發(fā)現(xiàn)問題、分析問題、解決問題的能力。任務(wù)3-1:使用正則表達(dá)式匹配電商產(chǎn)品數(shù)據(jù)壹任務(wù)技能MapReduce簡(jiǎn)介MapReduce是由Google公司研究并提出的分布式運(yùn)算編程框架,主要是為了解決搜索引擎中大規(guī)模網(wǎng)頁(yè)數(shù)據(jù)的并行化處理問題YARN簡(jiǎn)介ApacheHadoopYARN,全稱YetAnotherResourceNegotiator,是Hadoop通用資源管理和調(diào)度平臺(tái)
正則表達(dá)式正則表達(dá)式(RegularExpression,RE),又稱規(guī)則表達(dá)式,在代碼中常簡(jiǎn)寫為regex、regexp或RE,是一種文本模式任務(wù)3-1:使用正則表達(dá)式匹配電商產(chǎn)品數(shù)據(jù)壹1MapReduce簡(jiǎn)介HadoopMapReduce極大地方便了編程人員在不會(huì)分布式編程的情況下,將自己的程序運(yùn)行在分布式系統(tǒng)上(1)MapReduce起源MapReduce是由Google公司研究并提出的分布式運(yùn)算編程框架,主要是為了解決搜索引擎中大規(guī)模網(wǎng)頁(yè)數(shù)據(jù)的并行化處理問題。任務(wù)3-1:使用正則表達(dá)式匹配電商產(chǎn)品數(shù)據(jù)壹(2)什么是MapReduceMapReduce可以分成Map和Reduce兩部分理解,Map是一個(gè)映射過程,能夠?qū)⒁唤M數(shù)據(jù)按照某種Map函數(shù)映射成新的數(shù)據(jù),Reduce是一個(gè)歸納過程,把若干組映射結(jié)果進(jìn)行匯總并輸出映射、變換、過濾的過程。一條數(shù)據(jù)進(jìn)入map會(huì)被處理成多條數(shù)據(jù)MapReduce分解、縮小、歸納的過程。一組數(shù)據(jù)進(jìn)入reduce會(huì)被歸納為一組數(shù)據(jù)(或者多組數(shù)據(jù))任務(wù)3-1:使用正則表達(dá)式匹配電商產(chǎn)品數(shù)據(jù)壹(3)MapReduce1.0架構(gòu)MapReduce目前有兩個(gè)版本分別為MapReduce1.0和基于YARN的MapReduce2.0,與HDFS一樣相同,同樣采用了Master/Slave架構(gòu),主要由Client、JobTracker、TaskTracker、Task四個(gè)部分組成任務(wù)3-1:使用正則表達(dá)式匹配電商產(chǎn)品數(shù)據(jù)壹(4)分布式處理框架的“HelloWorld”分布式處理架構(gòu)也擁有自己的“HelloWorld”程序就是WordCount(單詞計(jì)數(shù))任務(wù)3-1:使用正則表達(dá)式匹配電商產(chǎn)品數(shù)據(jù)壹2YARN簡(jiǎn)介YARN是Hadoop通用資源管理和調(diào)度平臺(tái),能夠?yàn)镸apReduce、storm、Spark等計(jì)算框架,即上層應(yīng)用,提供統(tǒng)一的資源管理和調(diào)度,使資源管理、數(shù)據(jù)共享、集群利用率等方面有了極大的提升任務(wù)3-1:使用正則表達(dá)式匹配電商產(chǎn)品數(shù)據(jù)壹(1)設(shè)計(jì)目標(biāo)YARN也被稱為下一代計(jì)算平臺(tái),YARN將部分職責(zé)委派給TaskTracker,因?yàn)榧褐杏性S多TaskTracker任務(wù)3-1:使用正則表達(dá)式匹配電商產(chǎn)品數(shù)據(jù)壹(2)YARN結(jié)構(gòu)中各組件說明ResourceManager負(fù)責(zé)統(tǒng)一管理和調(diào)度各NodeManager上的資源NodeManager各節(jié)點(diǎn)的資源和任務(wù)管理器,負(fù)責(zé)節(jié)點(diǎn)的維護(hù)工作ApplicationMaster負(fù)責(zé)調(diào)度和協(xié)調(diào)具體應(yīng)用程序ContainerYARN資源)的抽象,用于資源分配時(shí)資源劃分的單位任務(wù)3-1:使用正則表達(dá)式匹配電商產(chǎn)品數(shù)據(jù)壹(3)YARN執(zhí)行流程MRApplicationMaster將執(zhí)行的結(jié)果反饋給集群的應(yīng)用管理者ResourceManager接收到請(qǐng)求后,ApplicationManager與NodeManager進(jìn)行通信ResourceScheduler將資源分配給MRApplicationMaster,NodeManager啟動(dòng)MapTask和ReduceTaskclient可以通過瀏覽器訪問MRApplicationMaster去監(jiān)控MapTask和ReduceTask的執(zhí)行情況MapTask和ReduceTask將執(zhí)行的結(jié)果反饋給MRApplicationMasterclient向ResourceManager發(fā)出命令請(qǐng)求MRApplicationMaster創(chuàng)建完成后向ResourceManager發(fā)送已經(jīng)創(chuàng)建完畢并注冊(cè)的信息,同時(shí)向ResourceScheduler申請(qǐng)資源執(zhí)行結(jié)束任務(wù)3-1:使用正則表達(dá)式匹配電商產(chǎn)品數(shù)據(jù)壹3正則表達(dá)式正則表達(dá)式是對(duì)字符串操作的一種邏輯公式,就是用事先定義好的一些特定字符及這些特定字符的組合,組成一個(gè)“規(guī)則字符串”,這個(gè)“規(guī)則字符串”用來表達(dá)對(duì)字符串的一種過濾邏輯正則表達(dá)式任務(wù)3-1:使用正則表達(dá)式匹配電商產(chǎn)品數(shù)據(jù)壹(1)正則表達(dá)式定義正則表達(dá)式是字符串,它包含文本和特殊字符。利用文字與特定字符的混合,可以定義復(fù)雜的字符串匹配與取代類型任務(wù)3-1:使用正則表達(dá)式匹配電商產(chǎn)品數(shù)據(jù)壹(2)Python正則的應(yīng)用Python中內(nèi)置了RE庫(kù)(正則表達(dá)式庫(kù)),不需要進(jìn)行下載安裝,在使用時(shí)只需要使用importre引入即可//第一種方式r'正則表達(dá)式'//第二種方式,flags用于設(shè)置匹配方式,可選填pile(r'正則表達(dá)式',flags)正則表達(dá)式定義完成后,即可通過RE庫(kù)提供的多種方法執(zhí)行正則表達(dá)式任務(wù)3-1:使用正則表達(dá)式匹配電商產(chǎn)品數(shù)據(jù)壹(3)正則表達(dá)式執(zhí)行方法search()方法能夠?qū)φ麄€(gè)字符串內(nèi)容進(jìn)行搜索,找到第一個(gè)匹配成功的內(nèi)容,并以Match對(duì)象形式返回,當(dāng)匹配不成功則返回Nonere.search(pattern,string,flags)pattern:匹配的正則表達(dá)式string:要匹配的字符串flags:標(biāo)志位,用于控制正則表達(dá)式的匹配方式參數(shù)值作用re.I忽略大小寫re.L表示特殊字符集\w,\W,\b,\B,\s,\S依賴于當(dāng)前環(huán)境re.M多行模式re.X為了增加可讀性,忽略空格和#后面的注釋任務(wù)3-1:使用正則表達(dá)式匹配電商產(chǎn)品數(shù)據(jù)壹(3)正則表達(dá)式執(zhí)行方法match()方法可以從整個(gè)字符串的起始位置開始搜索匹配正則表達(dá)式的內(nèi)容,如果不是起始位置匹配成功的返回None,當(dāng)起始位置開始匹配成功則以Match對(duì)象形式返回,參數(shù)及作用與search()方法相同re.match(pattern,string,flags)pattern:匹配的正則表達(dá)式string:要匹配的字符串flags:標(biāo)志位,用于控制正則表達(dá)式的匹配方式參數(shù)值作用re.I忽略大小寫re.L表示特殊字符集\w,\W,\b,\B,\s,\S依賴于當(dāng)前環(huán)境re.M多行模式re.X為了增加可讀性,忽略空格和#后面的注釋任務(wù)3-1:使用正則表達(dá)式匹配電商產(chǎn)品數(shù)據(jù)壹(3)正則表達(dá)式執(zhí)行方法findall()方法在字符串中找到正則表達(dá)式所匹配的所有子串,并返回一個(gè)列表,如果有多個(gè)匹配模式,則返回元組列表,如果沒有找到匹配的,則返回空列表re.findall(pattern,string,flags)pattern:匹配的正則表達(dá)式string:要匹配的字符串flags:標(biāo)志位,用于控制正則表達(dá)式的匹配方式參數(shù)值作用re.I忽略大小寫re.L表示特殊字符集\w,\W,\b,\B,\s,\S依賴于當(dāng)前環(huán)境re.M多行模式re.X為了增加可讀性,忽略空格和#后面的注釋任務(wù)3-1:使用正則表達(dá)式匹配電商產(chǎn)品數(shù)據(jù)壹(3)正則表達(dá)式執(zhí)行方法split()可以將字符串中符合正則表達(dá)式的字符做為分割符將整個(gè)字符串分割,并以列表類型返回分割后的內(nèi)容,當(dāng)沒有符合字符時(shí),則將整個(gè)字符串以列表形式返回re.split(pattern,string,maxsplit,flags)maxsplit:分隔次數(shù),maxsplit=1分隔一次,默認(rèn)為0,不限制次數(shù)任務(wù)3-1:使用正則表達(dá)式匹配電商產(chǎn)品數(shù)據(jù)壹編輯正則表達(dá)式Step1獲取正則表達(dá)式匹配的結(jié)果Step2格式化輸出Step3運(yùn)行代碼Step4電商產(chǎn)品數(shù)據(jù)的處理與分析使用正則表達(dá)式進(jìn)行配并輸出為每列使用\t分割的數(shù)據(jù)任務(wù)3-2:使用HadoopStreaming處理電商產(chǎn)品數(shù)據(jù)貳HadoopStreaming簡(jiǎn)介任務(wù)技能HDFS在最開始時(shí),是作為ApacheNutch搜索引擎項(xiàng)目的基礎(chǔ)架構(gòu)而開發(fā),現(xiàn)在是ApacheHadoop核心項(xiàng)目的一部分HadoopStreaming使用HDFS以統(tǒng)一目錄樹的形式實(shí)現(xiàn)自身文件的存儲(chǔ),客戶端只需指定對(duì)應(yīng)的目錄樹即可完成文件的訪問,不需要獲取具體的文件存儲(chǔ)位置任務(wù)3-2:使用HadoopStreaming處理電商產(chǎn)品數(shù)據(jù)貳Streamming主要用于對(duì)文字進(jìn)行處理(textprocessing),通過Streaming能夠通過各種腳本語(yǔ)言,快速的處理大量的文本文件1HadoopStreaming簡(jiǎn)介任務(wù)3-2:使用HadoopStreaming處理電商產(chǎn)品數(shù)據(jù)貳2HadoopStreaming使用使用HadoopStreaming運(yùn)行MapReduce程序非常簡(jiǎn)單,只需在Hadoop安裝包bin目錄下,在hadoop腳本后添加Streamingjar包的完整路徑即可實(shí)現(xiàn)程序的運(yùn)行hadoopjarhadoop-streaming.jar\-D="streaming_wordcount"\-Dmapred.map.tasks=3\-Dmapred.reduce.tasks=3\-Dmapred.job.priority=3\-input/input/\-output/output/\-mapperpythonmapper.py\-reducerpythonreducer.py\-file./mapper.py\-file./reducer.py:作業(yè)名稱;mapred.map.tasks:map任務(wù)數(shù)量;mapred.reduce.tasks:reduce任務(wù)數(shù)量;mapred.job.priority:作業(yè)優(yōu)先級(jí);-input:在HDFS上的作業(yè)輸入路徑,支持通配符,支持多個(gè)文件;-output:在H
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 IEC 62052-31:2024 EN-FR Electricity metering equipment - General requirements,tests and test conditions - Part 31: Product safety requirements and tests
- 【正版授權(quán)】 IEC 61010-2-201:2024 EXV EN Safety requirements for electrical equipment for measurement,control,and laboratory use - Part 2-201: Particular requirements for control equip
- 2024年廚房部衛(wèi)生管理制度(三篇)
- 2024年售前技術(shù)支持工程師的工作職責(zé)模版(二篇)
- 2024年小學(xué)六年級(jí)班務(wù)工作計(jì)劃樣本(三篇)
- 2024年安全主任的主要職責(zé)(三篇)
- 2024年口腔護(hù)士工作計(jì)劃范文(二篇)
- 2024年縣聯(lián)社稽核例會(huì)和督導(dǎo)檢查工作制度(三篇)
- 2024年小學(xué)科學(xué)教學(xué)工作計(jì)劃范本(二篇)
- 2024年小學(xué)數(shù)學(xué)教師教學(xué)工作計(jì)劃樣本(三篇)
- 人教版四年級(jí)數(shù)學(xué)上冊(cè)練習(xí)八課件(含答案)
- 上海市大學(xué)生安全教育(2022級(jí))學(xué)習(xí)通課后章節(jié)答案期末考試題庫(kù)2023年
- 初中數(shù)學(xué)-相似三角形的性質(zhì)教學(xué)設(shè)計(jì)學(xué)情分析教材分析課后反思
- 部編版語(yǔ)文五年級(jí)上冊(cè)《白鷺》教學(xué)設(shè)計(jì)
- 繪本:讓誰先吃好呢
- AUTOCAD完整考試題庫(kù)388題(含答案)
- 河南省中小學(xué)高級(jí)教師任職資格評(píng)審講課答辯題目及答案
- 通用版(完整版)鋼結(jié)構(gòu)專項(xiàng)施工方案
- 出租車企業(yè)安全管理人員安全考核題庫(kù)(含答案)
- 滾筒式輸送機(jī)的設(shè)計(jì)
- 簡(jiǎn)單電路實(shí)驗(yàn)報(bào)告單
評(píng)論
0/150
提交評(píng)論