亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于流式引擎的大數(shù)據(jù)分布式架構(gòu)

        2020-09-10 11:53:33柴志菲李翔
        商業(yè)2.0-市場與監(jiān)管 2020年7期

        柴志菲 李翔

        摘要:在人工智能流行的時代,數(shù)據(jù)量的增長速度也是無法估計的,網(wǎng)絡上的留言也越來越多,也難免會有一些污穢的語言,所以凈化網(wǎng)絡環(huán)境是很重要的事情,我們可以利用自動化的網(wǎng)頁抓取技術將網(wǎng)絡上的留言保存下來,通過設計大數(shù)據(jù)架構(gòu)對數(shù)據(jù)進行實時計算,然后分批裝載進數(shù)據(jù)庫,常見的流式處理技術像kafka[1]+spark streaming[2]+zookeeper[3]這樣進行架構(gòu),然后再將處理后的數(shù)據(jù)存儲進hive 或者HDFS這樣的存儲單元。

        關鍵詞:大數(shù)據(jù)架構(gòu),流式處理,實時計算

        如今我們正處于人工智能的時代,大數(shù)據(jù),人工智能,自動化等概念越來越深入人心,讓我們對于這些詞匯越來越有清晰的印象,而在數(shù)據(jù)挖掘,數(shù)據(jù)計算方面,整理一個思路清晰的架構(gòu)思路也是非常重要的。

        我們所出的網(wǎng)絡環(huán)境,每天都會有很多人在上面發(fā)表自己的言論,這就會讓網(wǎng)絡成為一個自由的環(huán)境,但是也有很多不法分子在網(wǎng)絡上污穢的言論污染了我們所在的空間,這是一種不好且存在的現(xiàn)象,而我們可以使用人工智能大數(shù)據(jù)的手段,快速識別這些污穢的詞匯,從根本上杜絕這些情況的發(fā)生,這就需要設計一個可靠合理的大數(shù)據(jù)架構(gòu)了。

        1.數(shù)據(jù)集

        我們使用自動化爬蟲框架源源不斷的去獲取到數(shù)據(jù)源,從某網(wǎng)站上使用代理池ip不斷替換身份,然后抓取網(wǎng)絡的言論,最后保證獲取到的數(shù)據(jù)大約是百萬量級的。

        最開始的時候,我們主要是從百度貼吧,新浪微博的客戶端去進行獲取,因為對于數(shù)據(jù)加密的算法不會很難,可以很容易的就獲取到,然后將這些數(shù)據(jù)規(guī)范化,存儲進我們的數(shù)據(jù)庫,或者可以說是落盤與內(nèi)存的一種中間狀態(tài)進行存儲。

        2.設計架構(gòu)

        接下來,就是較為重要的架構(gòu)設計了。

        本文將架構(gòu)的介紹按照數(shù)據(jù)流向的順序進行介紹。

        第一步,自動化爬蟲獲取到的數(shù)據(jù)我們是落盤到HDFS上的,如果想進行計算,就需要將HDFS分區(qū)上的內(nèi)容讀進內(nèi)存,但是HDFS[6]上的數(shù)據(jù)是海量的,如果一次全部讀進來,會堆棧溢出,所以此方案設計為按照block編號的順序去進行讀取,之后對接到flume[7],按照順序去讀取每個block上的評論信息。

        第二步,被flume讀取進來之后,直接對接到kafka的生產(chǎn)者階段,此時系統(tǒng)整個過程都是需要使用zookeeper進行高可用保障的,這里使用的znode主要用來存儲的是flume的配置信息,因為系統(tǒng)可以在不同流量的時候?qū)讲煌牟杉渲谩?/p>

        第三步,就是系統(tǒng)中的kafka了,它主要起到了解耦的效果,數(shù)據(jù)在爬取讀入的過程,可以稱之為生產(chǎn)數(shù)據(jù),之后利用kafka內(nèi)部的partition運送所產(chǎn)生的的數(shù)據(jù)到消費者端。由于此系統(tǒng)不需要過高的效率,所以這里將kafka的ack.require設置為exactly once,保證每一條信息的可靠傳達。這里的消費者端也就是下面會提到的Sparkstreaming,在上層應用中,系統(tǒng)會通過測試判斷當前系統(tǒng)可支持的運算能力,當超過可容納的閾值的時候,會在消費者端使用阻塞隊列保證系統(tǒng)的安全。

        第四步,自然是最重要的SparkStreaming,此系統(tǒng)采用這項技術主要也是為了模擬batch運算,將生產(chǎn)者端運輸進來的數(shù)據(jù)進行微批次的計算,預處理等操作,篩選掉有些可能沒有價值的數(shù)據(jù),將這些數(shù)據(jù)一并進行回收,最后將格式化的數(shù)據(jù)進行整理,放入到hive中,分庫分表,以便于進行后續(xù)進行數(shù)據(jù)挖掘的同學進行相關的操作和使用數(shù)據(jù)。

        3.測試調(diào)優(yōu)

        此項流程,主要是為了測試系統(tǒng)的各項閾值,例如kafka承受數(shù)據(jù)的閾值,消費者端與kafka進行TCP連接的句柄數(shù)閾值,spark層阻塞隊列長度的閾值,內(nèi)存,cpu,堆等等的閾值,分別進行測量與預估,制定優(yōu)化方案,接著將平臺的一些設計進行調(diào)整,令體驗上升,性能更優(yōu)。

        而測試的過程,可以采用多種方案,比如說Apache Jmeter,Apache Bench等等,都可以滿足我們的需求,實時監(jiān)控當前狀態(tài)各性能指標以及參數(shù),是否滿足我們預期的標準。

        測試之后,發(fā)現(xiàn)當前系統(tǒng)存在一個問題,就是我們無法完成持久化,也就是說,如果在當前內(nèi)存中出現(xiàn)宕機,那么正在運算的block的數(shù)據(jù),會丟失,于是便根據(jù)這個問題設計了一個方案,參考Redis的RDB和AOF的混合持久化方式,每100條評論數(shù)據(jù)進行一次落盤,并且在加載當前數(shù)據(jù)的時候,啟用AOF的手段保證數(shù)據(jù)的穩(wěn)定性。

        4.總結(jié)

        此系統(tǒng)主要會考察一些團隊針對于分布式架構(gòu)體系的應用,將一些生活中常見的場景使用一些相關技術得到數(shù)據(jù)整理,以便人工智能算法可以得以落地,團隊通過查閱資料,單元測試等方法將一些書上的案例得以應用,并且在此項目中,也確實擁有一定的商業(yè)價值,例如可以將此方案應用在社交平臺上,凈化社交媒體的網(wǎng)絡環(huán)境,也可以應用在游戲中,以防雙方因為情緒出現(xiàn)國際語言,也包括像微博,貼吧等地方,都可以應用。

        引用:

        [1]Apache Kafka is an open-source distributed event streaming platform used by thousands of companies for high-performance data pipelines, streaming analytics, data integration, and mission-critical applications.

        [2]By running on Spark, Spark Streaming lets you reuse the same code for batch processing, join streams against historical data, or run ad-hoc queries on stream state. Build powerful interactive applications, not just analytics.

        [3]ZooKeeper aims at distilling the essence of these different services into a very simple interface to a centralized coordination service.

        [4]The Hadoop Distributed File System (HDFS) is a distributed file system designed to run on commodity hardware.

        [5]Flume is a distributed, reliable, and available service for efficiently collecting, aggregating, and moving large amounts of log data. It has a simple and flexible architecture based on streaming data flows. It is robust and fault tolerant with tunable reliability mechanisms and many failover and recovery mechanisms. It uses a simple extensible data model that allows for online analytic application.

        风流老熟女一区二区三区| 亚洲av毛片在线播放| 成人久久黑人中出内射青草| 男人边做边吃奶头视频| 蜜桃精品免费久久久久影院| 国产亚洲欧美另类第一页| 亚洲国产国语对白在线观看| 凹凸国产熟女精品视频app| 亚洲av无码1区2区久久| 久久久久一| 激情五月天伊人久久| 国产亚洲亚洲精品视频| 精品国内日本一区二区| 97精品超碰一区二区三区| 1769国产精品短视频| 青青草手机成人自拍视频| 亚洲最近中文字幕在线| 中文字幕久久精品一二三区| 无码人妻系列不卡免费视频| 国产视频一区二区三区免费| 国产成人无码一区二区三区 | 亚洲欧美日韩国产精品专区| 国产精彩刺激对白视频| av影片手机在线观看免费网址| 最新日本一道免费一区二区| 亚洲视频在线看| 日本中文字幕一区二区在线观看| 国产亚洲精品av久久 | 久久天天躁夜夜躁狠狠躁2022| 久久91精品国产91久久麻豆| 97超碰国产成人在线| 国产精品福利自产拍在线观看| 四川丰满少妇被弄到高潮| 99久久久精品免费| 综合亚洲二区三区四区在线| 最新中文字幕av无码不卡| 国产三级欧美| 亚洲天堂线上免费av| 日韩夜夜高潮夜夜爽无码| 亚洲av无码资源在线观看| 国产精品一级av一区二区|