大數據技術(shù)之數據采集篇
優(yōu)采云 發(fā)布時(shí)間: 2020-05-12 08:03【導讀】數據采集是進(jìn)行大數據剖析的前提也是必要條件,在整個(gè)流程中搶占重要地位。本文將介紹大數據三種采集形式:系統日志采集法、網(wǎng)絡(luò )數據采集法以及其他數據采集法。
?。ㄒ唬┫到y日志采集法
系統日志是記錄系統中硬件、軟件和系統問(wèn)題的信息,同時(shí)還可以監視系統中發(fā)生的風(fēng)波。用戶(hù)可以通過(guò)它來(lái)檢測錯誤發(fā)生的誘因,或者找尋遭到功擊時(shí)攻擊者留下的痕跡。系統日志包括系統日志、應用程序日志和安全日志。(百度百科)大數據平臺或則說(shuō)類(lèi)似于開(kāi)源Hadoop平臺會(huì )形成大量高價(jià)值系統日志信息,如何采集成為研究者研究熱點(diǎn)。目前基于Hadoop平臺開(kāi)發(fā)的Chukwa、Cloudera的Flume以及Facebook的Scribe(李聯(lián)寧,2016)均可成為是系統日志采集法的標桿。目前這種的采集技術(shù)大概可以每秒傳輸數百MB的日志數據信息,滿(mǎn)足了目前人們對信息速率的需求。一般而言與我們相關(guān)的并不是這種采集法,而是網(wǎng)路數據采集法。
在這里還是要推薦下我自己建的大數據學(xué)習交流群:529867072大數據網(wǎng)絡(luò )爬蟲(chóng)原理,群里都是學(xué)大數據開(kāi)發(fā)的,如果你正在學(xué)習大數據 ,小編歡迎你加入,大家都是軟件開(kāi)發(fā)黨,不定期分享干貨(只有大數據軟件開(kāi)發(fā)相關(guān)的),包括我自己整理的一份最新的大數據進(jìn)階資料和中級開(kāi)發(fā)教程,歡迎進(jìn)階中和進(jìn)想深入大數據的小伙伴加入。
?。ǘ┚W(wǎng)絡(luò )數據采集法
做自然語(yǔ)言的朋友可能對這點(diǎn)感慨頗深,除了目前早已存在的公開(kāi)數據集,用于日常的算法研究外,有時(shí)為了滿(mǎn)足項目的實(shí)際需求,需要對現實(shí)網(wǎng)頁(yè)中的數據進(jìn)行采集,預處理和保存。目前網(wǎng)路數據采集有兩種方式一種是API,另一種是網(wǎng)路爬蟲(chóng)法。
1.API
API又叫應用程序插口,是網(wǎng)站的管理者為了使用者方面,編寫(xiě)的一種程序插口。該類(lèi)插口可以屏蔽網(wǎng)站底層復雜算法僅僅通過(guò)簡(jiǎn)簡(jiǎn)單單調用即可實(shí)現對數據的懇求功能。目前主流的社交媒體平臺如新浪微博、*敏*感*詞*以及Facebook等均提供API服務(wù),可以在其官網(wǎng)開(kāi)放平臺上獲取相關(guān)DEMO。但是API技術(shù)雖然受限于平臺開(kāi)發(fā)者,為了減少網(wǎng)站(平臺)的負荷大數據網(wǎng)絡(luò )爬蟲(chóng)原理,一般平臺均會(huì )對每晚插口調用上限做限制,這給我們帶來(lái)極大的不便利。為此我們一般采用第二種形式——網(wǎng)絡(luò )爬蟲(chóng)。
2.網(wǎng)絡(luò )爬蟲(chóng)
網(wǎng)絡(luò )爬蟲(chóng)(又被稱(chēng)為網(wǎng)頁(yè)蜘蛛,網(wǎng)絡(luò )機器人,在FOFA社區中間,更時(shí)常的稱(chēng)為網(wǎng)頁(yè)追逐者),是一種根據一定的規則,自動(dòng)地抓取萬(wàn)維網(wǎng)信息的程序或則腳本。另外一些不常使用的名子還有螞蟻、自動(dòng)索引、模擬程序或則蠕蟲(chóng)。(百度百科)最常見(jiàn)的爬蟲(chóng)便是我們常常使用的搜索引擎,如百度,360搜索等。此類(lèi)爬蟲(chóng)也稱(chēng)為通用型爬蟲(chóng),對于所有的網(wǎng)頁(yè)進(jìn)行無(wú)條件采集。通用型爬蟲(chóng)具體工作原理見(jiàn)圖1。
圖1 爬蟲(chóng)工作原理[2]
給予爬蟲(chóng)初始URL,爬蟲(chóng)將網(wǎng)頁(yè)中所須要提取的資源進(jìn)行提取并保存,同時(shí)提取出網(wǎng)站中存在的其他網(wǎng)站鏈接,經(jīng)過(guò)發(fā)送懇求,接收網(wǎng)站響應以及再度解析頁(yè)面,提取所需資源并保存,再將網(wǎng)頁(yè)中所需資源進(jìn)行提取......以此類(lèi)推,實(shí)現過(guò)程并不復雜,但是在采集時(shí)尤其注意對IP地址,報頭的偽造,以免被網(wǎng)管發(fā)覺(jué)禁封IP(我就被封過(guò)),禁封IP也就意味著(zhù)整個(gè)采集任務(wù)的失敗。當然為了滿(mǎn)足更多需求,多線(xiàn)程爬蟲(chóng),主題爬蟲(chóng)也應運而生。多線(xiàn)程爬蟲(chóng)是通過(guò)多個(gè)線(xiàn)程,同時(shí)執行采集任務(wù),一般而言幾個(gè)線(xiàn)程,數據采集數據都會(huì )提高幾倍。主題爬蟲(chóng)和通用型爬蟲(chóng)截然相反,通過(guò)一定的策略將于主題(采集任務(wù))無(wú)關(guān)的網(wǎng)頁(yè)信息過(guò)濾,僅僅留下須要的數據。此舉可以大幅度降低無(wú)關(guān)數據引起的數據稀疏問(wèn)題。
?。ㄈ┢渌杉?/p>
其他采集法是指對于科研院所,企業(yè)政府等擁有絕密信息,如何保證數據的安全傳遞?可以采用系統特定端口,進(jìn)行數據傳輸任務(wù),從而降低數據被泄漏的風(fēng)險。



