數(shù)據(jù)清洗課件-第4章-數(shù)據(jù)采集與抽取_第1頁
數(shù)據(jù)清洗課件-第4章-數(shù)據(jù)采集與抽取_第2頁
數(shù)據(jù)清洗課件-第4章-數(shù)據(jù)采集與抽取_第3頁
數(shù)據(jù)清洗課件-第4章-數(shù)據(jù)采集與抽取_第4頁
數(shù)據(jù)清洗課件-第4章-數(shù)據(jù)采集與抽取_第5頁
已閱讀5頁,還剩46頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第4章數(shù)據(jù)采集與抽取數(shù)據(jù)采集概述數(shù)據(jù)采集又稱數(shù)據(jù)獲取,是指利用某些裝置,從系統(tǒng)外部采集數(shù)據(jù)并輸入到系統(tǒng)內(nèi)部的一個(gè)接口。在互聯(lián)網(wǎng)行業(yè)快速發(fā)展的今天,數(shù)據(jù)采集已經(jīng)被廣泛應(yīng)用于互聯(lián)網(wǎng)及分布式領(lǐng)域,比如攝像頭、麥克風(fēng)以及各類傳感器等都是數(shù)據(jù)采集工具。而大數(shù)據(jù)采集則是指從傳感器和智能設(shè)備、企業(yè)在線系統(tǒng)、企業(yè)離線系統(tǒng)、社交網(wǎng)絡(luò)和互聯(lián)網(wǎng)平臺(tái)等獲取數(shù)據(jù)的過程。在數(shù)據(jù)采集過程中,人們可以使用網(wǎng)卡、條形碼、觸摸屏、PDA、RFID等各種設(shè)備進(jìn)行數(shù)據(jù)的采集。大數(shù)據(jù)采集與一般的傳統(tǒng)采集不同,大數(shù)據(jù)的采集過程的主要特點(diǎn)和挑戰(zhàn)是并發(fā)數(shù)高,因?yàn)橥瑫r(shí)可能會(huì)有成千上萬的用戶在進(jìn)行訪問和操作。此外,根據(jù)數(shù)據(jù)源的不同,大數(shù)據(jù)采集方法也不相同。但是為了能夠滿足大數(shù)據(jù)采集的需要,大數(shù)據(jù)采集時(shí)大多都使用了大數(shù)據(jù)的處理模式,即MapReduce分布式并行處理模式或是基于內(nèi)存的流式處理模式。在大數(shù)據(jù)體系中,數(shù)據(jù)主要包含以下五類:1)業(yè)務(wù)數(shù)據(jù):消費(fèi)者數(shù)據(jù)、客戶關(guān)系數(shù)據(jù)、庫存數(shù)據(jù)、賬目數(shù)據(jù)等。2)行業(yè)數(shù)據(jù):車流量數(shù)據(jù)、能耗數(shù)據(jù)、PM2.5數(shù)據(jù)等。3)內(nèi)容數(shù)據(jù):應(yīng)用日志、電子文檔、機(jī)器數(shù)據(jù)、語音數(shù)據(jù)、社交媒體數(shù)據(jù)等4)線上行為數(shù)據(jù):頁面數(shù)據(jù)、交互數(shù)據(jù)、表單數(shù)據(jù)、會(huì)話數(shù)據(jù)、反饋數(shù)據(jù)等。5)線下行為數(shù)據(jù):車輛位置和軌跡、用戶位置和軌跡、動(dòng)物位置和軌跡等。在大數(shù)據(jù)體系中,數(shù)據(jù)主要包含分為以下四類:1)企業(yè)系統(tǒng):客戶關(guān)系管理系統(tǒng)、企業(yè)資源計(jì)劃系統(tǒng)、庫存系統(tǒng)、銷售系統(tǒng)、圖書管理系統(tǒng)等。2)機(jī)器系統(tǒng):智能儀表、工業(yè)設(shè)備傳感器、智能設(shè)備、視頻監(jiān)控系統(tǒng)等。3)互聯(lián)網(wǎng)系統(tǒng):電商系統(tǒng)、服務(wù)行業(yè)業(yè)務(wù)系統(tǒng)、政府監(jiān)管系統(tǒng)等。4)社交系統(tǒng):微信、QQ、微博、博客、新聞網(wǎng)站、朋友圈等。日志數(shù)據(jù)采集常見方法在大數(shù)據(jù)采集中,特別是在互聯(lián)網(wǎng)應(yīng)用中,不管是采用哪一種采集方式,其基本的數(shù)據(jù)來源大都是日志數(shù)據(jù)。目前常見的日志數(shù)據(jù)采集方法包含兩類:瀏覽器日志采集和客戶端數(shù)據(jù)采集。日志數(shù)據(jù)處理常見方法目前,在企業(yè)中對(duì)日志的處理可分為在線處理和離線處理兩大類。

數(shù)據(jù)采集平臺(tái)Flume是Cloudera提供的一個(gè)高可用的,高可靠的,分布式的海量日志采集、聚合和傳輸?shù)南到y(tǒng),F(xiàn)lume支持在日志系統(tǒng)中定制各類數(shù)據(jù)發(fā)送方,用于收集數(shù)據(jù);同時(shí),F(xiàn)lume提供對(duì)數(shù)據(jù)進(jìn)行簡(jiǎn)單處理,并寫到各種數(shù)據(jù)接受方的能力。

Kafka是由Apache軟件基金會(huì)開發(fā)的一個(gè)開源流處理平臺(tái),由Scala和Java編寫。Kafka是一種高吞吐量的分布式發(fā)布訂閱消息系統(tǒng),它可以處理消費(fèi)者規(guī)模的網(wǎng)站中的所有動(dòng)作流數(shù)據(jù)。Fluentd是一個(gè)開源的數(shù)據(jù)收集器,專為處理數(shù)據(jù)流設(shè)計(jì),有點(diǎn)像

syslogd

,但是使用JSON作為數(shù)據(jù)格式。它采用了插件式的架構(gòu),具有高可擴(kuò)展性高可用性,同時(shí)還實(shí)現(xiàn)了高可靠的信息轉(zhuǎn)發(fā)。

Splunk是一個(gè)分布式的機(jī)器數(shù)據(jù)平臺(tái),它提供完整的數(shù)據(jù)采金,數(shù)據(jù)存儲(chǔ),數(shù)據(jù)分析和處理,以及數(shù)據(jù)展現(xiàn)的能力。

Chukwa是一個(gè)開源的監(jiān)控大型分布式系統(tǒng)的數(shù)據(jù)采集系統(tǒng),它構(gòu)建于HDFS和Map/Reduce框架之上,并繼承了Hadoop優(yōu)秀的擴(kuò)展性和健壯性。在數(shù)據(jù)分析方面,Chukwa擁有一套靈活、強(qiáng)大的工具,可用于監(jiān)控和分析結(jié)果來更好的利用所采集的數(shù)據(jù)結(jié)果。

Scribe是facebook開源的日志采集系統(tǒng),在facebook內(nèi)部已經(jīng)得到大量的應(yīng)用。它能夠從各種日志源上收集日志,存儲(chǔ)到一個(gè)中央存儲(chǔ)系統(tǒng)(可以是NFS,分布式文件系統(tǒng)等)上,以便于進(jìn)行集中統(tǒng)計(jì)分析處理。

數(shù)據(jù)采集工具鳥巢采集器是一款基于Web網(wǎng)頁的數(shù)據(jù)采集工具,它基于Java語言開發(fā),采用分布式架構(gòu),擁有強(qiáng)大的內(nèi)容采集和數(shù)據(jù)過濾功能,能將用戶采集的數(shù)據(jù)發(fā)布都遠(yuǎn)程服務(wù)器上。簡(jiǎn)數(shù)數(shù)據(jù)采集平臺(tái)是一個(gè)完全在線配置和云端采集的網(wǎng)頁數(shù)據(jù)采集和發(fā)布平臺(tái),功能強(qiáng)大,操作簡(jiǎn)單。并提供網(wǎng)頁內(nèi)容采集、數(shù)據(jù)加工處理、SEO工具和發(fā)布等數(shù)據(jù)采集基本功能。GrowingIO是基于用戶行為的新一代數(shù)據(jù)分析產(chǎn)品,不需要開發(fā)人員埋點(diǎn),就可以詳細(xì)地收集用戶的數(shù)據(jù)。平臺(tái)可以在不涉及用戶客人隱私的情況下,將所有可以抓取的數(shù)據(jù)細(xì)節(jié)進(jìn)行收集整理。后羿采集器是基于人工智能技術(shù)開發(fā)的產(chǎn)品,能夠智能采集和分析數(shù)據(jù)。用戶只需輸入網(wǎng)址就能夠自動(dòng)識(shí)別采集內(nèi)容。八爪魚采集器是一款網(wǎng)頁采集軟件,具有使用簡(jiǎn)單,功能強(qiáng)大等諸多優(yōu)點(diǎn)。該軟件以分布式云計(jì)算平臺(tái)為核心,可以在很短的時(shí)間內(nèi),輕松從各種不同的網(wǎng)站或者網(wǎng)頁獲取大量的規(guī)范化數(shù)據(jù),幫助任何需要從網(wǎng)頁獲取信息的客戶實(shí)現(xiàn)數(shù)據(jù)自動(dòng)化采集,編輯,規(guī)范化,擺脫對(duì)人工搜索及收集數(shù)據(jù)的依賴,從而降低獲取信息的成本,提高效率?;疖嚥杉魇且豢罟δ軓?qiáng)大且易于上手的專業(yè)采集軟件,也是一個(gè)可以供各大主流文章系統(tǒng),論壇系統(tǒng)等使用的多線程內(nèi)容采集發(fā)布程序。該軟件可以由用戶自定義規(guī)則以抓取網(wǎng)頁中的數(shù)據(jù)。對(duì)于數(shù)據(jù)的采集其可以分為兩部分,一是采集數(shù)據(jù),二是發(fā)布數(shù)據(jù)。網(wǎng)絡(luò)爬蟲(WebSpider)又稱之為網(wǎng)絡(luò)機(jī)器人、網(wǎng)絡(luò)蜘蛛,是一種通過既定規(guī)則,能夠自動(dòng)提取網(wǎng)頁信息的程序。爬蟲的目地在于將目標(biāo)網(wǎng)頁數(shù)據(jù)下載至本地,以便進(jìn)行后續(xù)的數(shù)據(jù)分析。爬蟲技術(shù)的興起源于海量網(wǎng)絡(luò)數(shù)據(jù)的可用性,通過爬蟲技術(shù)使我們能夠較為容易的獲取網(wǎng)絡(luò)數(shù)據(jù),并通過對(duì)數(shù)據(jù)的分析得出有價(jià)值的結(jié)論。網(wǎng)頁數(shù)據(jù)采集與實(shí)現(xiàn)網(wǎng)絡(luò)爬蟲按照系統(tǒng)結(jié)構(gòu)和實(shí)現(xiàn)技術(shù),大致可以分為以下幾種類型:通用網(wǎng)絡(luò)爬蟲、聚焦網(wǎng)絡(luò)爬蟲、增量式網(wǎng)絡(luò)爬蟲和深層網(wǎng)絡(luò)爬蟲等。不過,在實(shí)際的應(yīng)用中網(wǎng)絡(luò)爬蟲系統(tǒng)通常是由以上幾種爬蟲技術(shù)相結(jié)合而實(shí)現(xiàn)的。urllib模塊urllib是Python自帶的一個(gè)用于爬蟲的模塊,其主要作用就是可以通過代碼模擬瀏覽器發(fā)送請(qǐng)求。在urllib模塊中可以使用urllib.request.urlopen()函數(shù)訪問網(wǎng)頁Requests庫Requests是用Python語言編寫,基于urllib,采用Apache2Licensed開源協(xié)議的HTTP庫。它比urllib更加方便,可以節(jié)約開發(fā)者大量的工作,完全滿足HTTP測(cè)試需求。BeautifulSoup庫BeautifulSoup是一個(gè)Python庫,它將HTML或XML文檔解析為樹結(jié)構(gòu),以便于從中查找和提取數(shù)據(jù),因此BeautifulSoup通常用于從網(wǎng)站上抓取數(shù)據(jù)。

1)文本清洗領(lǐng)域。2)語音數(shù)據(jù)加工領(lǐng)域。3)視頻圖像處理領(lǐng)域。4)地理信息處理領(lǐng)域。數(shù)據(jù)抽取數(shù)據(jù)抽取是指從數(shù)據(jù)源中抽取對(duì)企業(yè)有用的或感興趣的數(shù)據(jù)的過程,它的實(shí)質(zhì)是將數(shù)據(jù)從各種原始的業(yè)務(wù)系統(tǒng)中讀取出來,它是大數(shù)據(jù)工作開展的前提。目前常用以下兩種方式來實(shí)現(xiàn)數(shù)據(jù)抽取:關(guān)系庫中的數(shù)據(jù)抽取和非關(guān)系數(shù)據(jù)庫中的數(shù)據(jù)抽取。全量抽取:將數(shù)據(jù)源中的表或視圖的數(shù)據(jù)原封不動(dòng)的從數(shù)據(jù)庫中抽取出來,并轉(zhuǎn)換成自己的ETL工具可以識(shí)別的格式。全量抽取與關(guān)系數(shù)據(jù)庫中的數(shù)據(jù)復(fù)制較為相似,操作過程比較簡(jiǎn)單。增量抽取:增量抽取指抽取自上次抽取以來數(shù)據(jù)庫中要抽取的表中新增、修改、刪除的數(shù)據(jù)。在ETL使用過程中。增量抽取較全量抽取應(yīng)用更廣,因而如何捕獲變化的數(shù)據(jù)是增量抽取的關(guān)鍵。目前對(duì)于捕獲方法的要求一般有:準(zhǔn)確性,一致性,完整性,高效性。數(shù)據(jù)抽取的流程一般包含以下幾步:理解數(shù)據(jù)和數(shù)據(jù)的來源。整理、檢查和清洗數(shù)據(jù)。將清洗好的數(shù)據(jù)集成,并建立抽取模型。開展數(shù)據(jù)抽取與數(shù)據(jù)轉(zhuǎn)換工作。將轉(zhuǎn)換后的結(jié)果進(jìn)行臨時(shí)存放。確認(rèn)數(shù)據(jù),并將數(shù)據(jù)最終應(yīng)用于數(shù)據(jù)挖掘中。在數(shù)據(jù)倉庫中,可以使用Kettle來抽取網(wǎng)頁中的數(shù)據(jù)或是數(shù)據(jù)庫中存儲(chǔ)的數(shù)據(jù)。Kettle是一款國外開源的ETL工具,純java編寫,可以在Window、Linux、Unix上運(yùn)行,數(shù)據(jù)抽取高效穩(wěn)定。Kettle的特點(diǎn)有:開源免費(fèi)、可維護(hù)性好、便與調(diào)試、開發(fā)簡(jiǎn)單。在本地計(jì)算機(jī)中新建一個(gè)文本文件,并輸入以下內(nèi)容:id;name;card;sex;age1;張三;0001;M;23;2;李四;0002;M;24;34;王五;0003;M;22;56;趙六;0004;M;21;將該文本文件保存為test.txt。文本文件在Windows中一般是指記事本文件,在本節(jié)中主要講述使用Kettle來將文本文件中的數(shù)據(jù)抽取到Excel文檔中。在大數(shù)據(jù)分析前,為了統(tǒng)一比較的標(biāo)準(zhǔn),保證結(jié)果的可靠性,需要對(duì)原始指標(biāo)數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化處理。在大數(shù)據(jù)分析前,為了統(tǒng)一比較的標(biāo)準(zhǔn),保證結(jié)果的可靠性,需要對(duì)原始指標(biāo)數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化處理。網(wǎng)頁數(shù)據(jù)抽取是指通過使用相關(guān)軟件或是書寫一定的代碼來獲取存儲(chǔ)在Web中的數(shù)據(jù)。由于目前在互聯(lián)網(wǎng)中的數(shù)據(jù)大多以HTML網(wǎng)頁的方式存儲(chǔ)和傳播,因此在實(shí)際工作中一般抽取的網(wǎng)頁數(shù)據(jù)主要是指半結(jié)構(gòu)化數(shù)據(jù)和非結(jié)構(gòu)化數(shù)據(jù),如xml格式的數(shù)據(jù)、json格式的數(shù)據(jù)或是csv格式的數(shù)據(jù)等。本例將網(wǎng)頁中的XML數(shù)據(jù)抽取出來,并在Kettle中顯示。網(wǎng)頁地址:/V3/Northwind/Northwind.svc/Products/,網(wǎng)頁部分內(nèi)容如圖4-32所示。本章小結(jié)1)大數(shù)據(jù)的應(yīng)用離不開數(shù)據(jù)采集。數(shù)據(jù)采集又稱數(shù)據(jù)獲取,是指利用某些裝置,從系統(tǒng)外部采集數(shù)據(jù)并輸入到系統(tǒng)內(nèi)部的一個(gè)接口。在互聯(lián)網(wǎng)行業(yè)快速發(fā)展的今天,數(shù)據(jù)采集已經(jīng)被廣泛應(yīng)用于互聯(lián)網(wǎng)及分布式領(lǐng)域,比如攝像頭、麥克風(fēng)以及各類傳感器等都是數(shù)據(jù)采集工具。2

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論