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

        ?

        基于大數(shù)據(jù)Hadoop的股票利潤分析平臺設(shè)計(jì)與實(shí)現(xiàn)

        2019-03-15 01:30:00張魯奧
        電子制作 2019年4期
        關(guān)鍵詞:數(shù)據(jù)源海量股票

        張魯奧

        (山東省章丘市第四中學(xué),山東章丘,250200)

        1 研究背景

        隨著大數(shù)據(jù)技術(shù)的蓬勃發(fā)展,越來越多的數(shù)據(jù)等著我們?nèi)プR別,讀取,歸類,計(jì)算。針對于股票市場,如何利用大數(shù)據(jù)技術(shù)去發(fā)掘股票中隱含的眾多有價(jià)值的信息,幫助股民合理購買股票,獲得最大利潤是我們急需解決的難題,目前在股票領(lǐng)域的大數(shù)據(jù)研究尚不完善。因此,我們提出利用hadoop分布式框架來對每只股票的利潤進(jìn)行分析的方案,用到的主要技術(shù)是分布式并行計(jì)算(mapreduce)和分布式文件存儲系統(tǒng)(HDFS)。對于每只股票的數(shù)據(jù)會冗雜在一起,形成龐大的數(shù)據(jù)量的情況,目前比較主流的海量數(shù)據(jù)存儲系統(tǒng)主要采用HDFS文件系統(tǒng)。在本文中我們把每只股票的相關(guān)信息存儲在HDFS文件中,然后讀取出來,通過MapReduce對股票數(shù)據(jù)進(jìn)行分析。

        目前,在股票行業(yè)中,每支股票每天產(chǎn)生的數(shù)據(jù)量難以預(yù)估,隱含的有價(jià)值的信息難以提取,如,開盤時(shí)間,閉盤時(shí)間,開盤價(jià)格,閉盤價(jià)格,多個特征中如何提取有用信息,如何有效準(zhǔn)確的計(jì)算股票數(shù)據(jù),在該領(lǐng)域的研究還有待完善。對于股票數(shù)據(jù)的分析處理問題,我們提出了合理可行的方案,基于Hadoop的并行式計(jì)算框架運(yùn)用了HDFS存儲機(jī)制和Mapreduce的并行式運(yùn)算,可以有效合理的解決上述問題?;趆adoop大數(shù)據(jù)的分布式并行計(jì)算框架設(shè)計(jì)方案,依賴快速高效的mapreduce,實(shí)現(xiàn)實(shí)時(shí)大數(shù)據(jù)的復(fù)雜計(jì)算,提供每一支股票的年利潤、總利潤、平均利潤等特征,并對明年股票進(jìn)行分析和預(yù)測。

        2 系統(tǒng)的設(shè)計(jì)與功能設(shè)計(jì)

        2.1 數(shù)據(jù)源

        數(shù)據(jù)源模塊的主要功能是利用API服務(wù)獲取股票的數(shù)據(jù),以龐大的股票數(shù)據(jù)做支撐,是整個框架的數(shù)據(jù)的唯一來源,上層數(shù)據(jù)的處理與整合都來源于數(shù)據(jù)源模塊。

        2.2 數(shù)據(jù)接入層

        圖1

        數(shù)據(jù)接入層的主要功能是存儲來源于數(shù)據(jù)源層的股票數(shù)據(jù),利用分布式消息訂閱系統(tǒng)kafka框架實(shí)現(xiàn)。它是一個針對流式數(shù)據(jù)處理的分布式消息訂閱系統(tǒng)。主要包括如下幾個模塊:

        (1)Broker:Kafka集群是由1個或者多個服務(wù)器組成,這種服務(wù)器即為broker

        (2)Producer:消息數(shù)據(jù)的生產(chǎn)者。

        (3)Topic:是指發(fā)送到集群中的消息分類,每一個類別都是一個Topic。

        (4)Consumer:消費(fèi)消息的一方,負(fù)責(zé)broker的Topic讀取股票消息數(shù)據(jù)。

        2.3 數(shù)據(jù)提取層

        數(shù)據(jù)提取模塊的主要功能是對數(shù)據(jù)做ETL(Extract-Transform-Load)處理,清洗數(shù)據(jù),構(gòu)建數(shù)據(jù)倉庫,對數(shù)據(jù)進(jìn)行分層處理。用到的主要工具的數(shù)據(jù)抽取框架Gobblin。

        Gobblin是一種數(shù)據(jù)提取整合框架,可以接收以Kafka, fl ume等數(shù)據(jù)源的數(shù)據(jù),并將這些數(shù)據(jù)采用定時(shí)的方式寫入HDFS文件中中。這樣便于集群拉取數(shù)據(jù)進(jìn)行清洗、處理、分析等操作。主要包含如下組件:

        (1)Source:主要起到適配器的作用。

        (2)Converter:主要用來對股票數(shù)據(jù)進(jìn)行清洗過濾操作,將數(shù)據(jù)轉(zhuǎn)為需要的類型。

        (3)Quality Checker:主要用于數(shù)據(jù)質(zhì)量檢測,以此保證數(shù)據(jù)質(zhì)量,可通過手動或者可選策略的方式,將check的數(shù)據(jù)輸出到指定的外部文件中。

        (4)Writer:依據(jù)程序指定的配置文件,按照指定的數(shù)據(jù)格式,將股票數(shù)據(jù)輸出到最終的存儲路徑下。

        (5)Publiser:將數(shù)據(jù)輸出到配置文件指定的路徑下。

        2.4 數(shù)據(jù)存儲

        數(shù)據(jù)存儲模塊的功能主要針對股票數(shù)據(jù)的存儲,用到的主要存儲工具是分布式文件系統(tǒng)(HDFS)。具有如下幾個特點(diǎn):

        (1)故障分析

        針對HDFS一些無效的部件或者無效的文件片進(jìn)行合理的分析、處理。

        (2)數(shù)據(jù)訪問

        hadoop的hdfs讀取和寫入數(shù)據(jù)采用的是流式讀取和寫入的方式,這一般程序讀取數(shù)據(jù)的方式。HDFS比較適合離線的、批量的數(shù)據(jù)存儲,針對的是高吞吐量,體現(xiàn)在數(shù)據(jù)吞吐量上。

        (3)大數(shù)據(jù)集

        HDFS分布式文件系統(tǒng)主要是針對高吞吐量的作業(yè),需要依賴海量數(shù)據(jù)集,如果數(shù)據(jù)量較小,無法體現(xiàn)HDFS分布式文件系統(tǒng)的特性和優(yōu)勢,通常一個分布式集群可以支持成百上千個數(shù)據(jù)節(jié)點(diǎn)和成千上萬的文件量。

        (4)簡單一致性模型

        HDFS文件操作具有簡單一致性的特點(diǎn),對文件的操作都是采用一次寫入多次讀取的方式。HDFS文件只要經(jīng)過創(chuàng)

        2.5 數(shù)據(jù)計(jì)算層

        計(jì)算海量數(shù)據(jù)的能力,是目前處理高吞吐量數(shù)據(jù)比較可靠的方法。

        2.6 數(shù)據(jù)展示

        通過數(shù)據(jù)讀取,計(jì)算,最后會得到反饋,我們會得到每只股票的年利潤,平均利潤,通過利潤計(jì)算來預(yù)測這只股票下一年的走勢。

        3 海量數(shù)據(jù)的存儲與計(jì)算

        3.1 海量數(shù)據(jù)的存儲

        對于海量的股票數(shù)據(jù)存儲主要是采用分布式文件系統(tǒng)HDFS。HDFS文件系統(tǒng)主要針對離線、高吞吐量的數(shù)據(jù)存儲系統(tǒng),采用流式數(shù)據(jù)讀取和寫入的方式處理大文件數(shù)據(jù)。

        Block:block是HDFS文件存儲的基本單位。數(shù)據(jù)的讀取和寫入都是以block為單位的,默認(rèn)大小為64M,在本文中,股票數(shù)據(jù)被分成64M大小的block塊進(jìn)行存儲。

        NameNode:名稱節(jié)點(diǎn),主要的功能是保存文件系統(tǒng)的元數(shù)據(jù),主要維護(hù)兩個數(shù)據(jù)結(jié)構(gòu):fsimage和editlog。editlog記錄對HDFS文件的增刪改查操作。

        DataNode:datanode是客戶端讀取或者寫入數(shù)據(jù)的節(jié)點(diǎn),數(shù)據(jù)節(jié)點(diǎn)會定期采用心跳機(jī)制和namenode節(jié)點(diǎn)交互,以此獲取整個集群的資源信息。

        HDFS讀取股票數(shù)據(jù)的過程:

        (1)客戶端通過API采用遠(yuǎn)程調(diào)用的方式和namenode進(jìn)行通信(此過程的通信協(xié)議依然是Tcp/Ip協(xié)議),得到股票數(shù)據(jù)塊信息。

        (2)Namenode節(jié)點(diǎn)返回保存每一個block數(shù)據(jù)塊的地址信息,并按距離遠(yuǎn)近進(jìn)行排序。

        (3)給客戶端獲得存儲block數(shù)據(jù)的地址信息后,調(diào)用API,讀取存儲股票數(shù)據(jù)的block塊。

        (4)客戶端調(diào)用API的開始讀取數(shù)據(jù)。當(dāng)block數(shù)據(jù)塊數(shù)據(jù)讀取結(jié)束時(shí),關(guān)閉相應(yīng)數(shù)據(jù)節(jié)點(diǎn)的連接,然后連接和下一個需要讀入文件距離最近的節(jié)點(diǎn),繼續(xù)讀入股票數(shù)據(jù)。

        圖2

        (5)當(dāng)客戶端(client)讀取股票數(shù)據(jù)結(jié)束的時(shí)候,通過調(diào)用API的close方法,關(guān)閉股票輸入流即可。

        3.2 海量數(shù)據(jù)的計(jì)算

        股票的數(shù)據(jù)計(jì)算采用的是分布式計(jì)算框架MapReduce。MapReduce采用分布式計(jì)算的方式,采用主從架構(gòu)的模式,執(zhí)行的過程主要可分為map和reduce兩個過程。

        mapreduce的對股票數(shù)據(jù)的計(jì)算過程如下。

        (1)客戶端要編寫好腳本程序,打成可運(yùn)行的jar包,準(zhǔn)備需要讀入計(jì)算的數(shù)據(jù)源,也就是我們的股票數(shù)據(jù)。

        (2)提交任務(wù),提交股票數(shù)據(jù)是提交到Resource Manager上的,ResourceManager就會構(gòu)建這個股票任務(wù)的信息,給這個需要運(yùn)行的任務(wù)一個id,即為JobId,同時(shí)檢查作業(yè)的輸出目錄是否已經(jīng)存在,若不存在,正常運(yùn)行;如已經(jīng)存在,要進(jìn)行資源的重新分配。

        (3)作業(yè)初始化操作,將股票數(shù)據(jù)放到一個內(nèi)部隊(duì)列中,通過調(diào)度器進(jìn)行初始化工作,創(chuàng)建一個正在運(yùn)行的股票數(shù)據(jù)對象。

        (4)初始化過程結(jié)束后,作業(yè)調(diào)度器(schema)讀入輸入分片信息如果分片較小,會先聚合成大文件讀入,減少I/O帶來的時(shí)間延誤。接下來就是任務(wù)分配的過程了,先遍歷每一個分片的數(shù)據(jù),并根據(jù)分片數(shù)據(jù)的遠(yuǎn)近進(jìn)行排序。

        (5)執(zhí)行任務(wù)。將運(yùn)行任務(wù)的jar包從HDFS拷貝到本地并進(jìn)行解壓.并創(chuàng)建一個JVM,將Application程序加載到JVM中來執(zhí)行具體的任務(wù)。

        ·輸入分片(inputsplit):HDFS文件理想的split大小是一個HDFS塊,本次實(shí)驗(yàn)采用默認(rèn)的64M為一個block塊。

        ·map階段:①讀取HDFS中的文件。每一行按指定分隔符進(jìn)行分割,將分割后的結(jié)果解析成一個<key,value>鍵值對。②對分割后輸出的<key,value>鍵值對進(jìn)行分區(qū)操作;③對不同分區(qū)(partition)的股票數(shù)據(jù)按照key值進(jìn)行排序操作。④對分組排序后的數(shù)據(jù)進(jìn)行歸約,減少傳輸?shù)絩educe過程的數(shù)據(jù)量

        ·reduce階段:①對于map的輸出結(jié)果,按照分區(qū)(partition)的不同,通過http協(xié)議,遠(yuǎn)程拷貝到不同的reduce節(jié)點(diǎn)上:②將reduce處理后的<key,value>結(jié)果輸出到HDFS文件系統(tǒng)。

        4 總結(jié)

        本文提出了基于hadoop的股票利潤分析設(shè)計(jì)方案,對股票數(shù)據(jù)進(jìn)行了提取,存儲,計(jì)算,得到股票的利潤信息。通過對股票利潤進(jìn)行分析,對股票的發(fā)展趨勢進(jìn)行了合理的預(yù)測。在大數(shù)據(jù)時(shí)代,采用分布式并行計(jì)算框架和存儲框架解決實(shí)際問題已經(jīng)成為一種必然趨勢。最近幾年,股票市場研究一直在不斷加大,對股票信息進(jìn)行分析,預(yù)測已經(jīng)成為一個熱門研究方向。股票的分析預(yù)測可以幫助股民提取股票中的關(guān)鍵信息,精準(zhǔn)把握股票市場的動態(tài),以此獲得更高的利潤,避免股票陷阱。

        影響股票價(jià)格走勢和利潤多少的因素多種多樣,我們無法把所有因素全都考慮到平臺中,因此想要實(shí)現(xiàn)股票價(jià)格的精確預(yù)測十分困難,難以實(shí)現(xiàn)??v使我們能夠把每一支股票的利潤都分析出來,依然存在誤差,但對股票的整體的走勢分析依舊有很大的幫助。

        猜你喜歡
        數(shù)據(jù)源海量股票
        一種傅里葉域海量數(shù)據(jù)高速譜聚類方法
        海量快遞垃圾正在“圍城”——“綠色快遞”勢在必行
        Web 大數(shù)據(jù)系統(tǒng)數(shù)據(jù)源選擇*
        基于不同網(wǎng)絡(luò)數(shù)據(jù)源的期刊評價(jià)研究
        本周創(chuàng)出今年以來新高的股票
        本周創(chuàng)出今年以來新高的股票
        一個圖形所蘊(yùn)含的“海量”巧題
        本周連續(xù)上漲3天以上的股票
        近期連續(xù)漲、跌3天以上的股票
        基于真值發(fā)現(xiàn)的沖突數(shù)據(jù)源質(zhì)量評價(jià)算法
        隔壁的日本人妻bd高清中字 | 亚欧美日韩香蕉在线播放视频| 亚洲中文字幕久久精品色老板| 在线视频一区二区国产| 日本免费一区二区在线视频播放| 精品三级国产一区二区三| 成熟人妻换xxxx| 国产伦久视频免费观看视频| 久久97精品久久久久久久不卡| 亚洲色成人网一二三区| 国产精品98视频全部国产| 精品日韩欧美| 亚洲一区极品美女写真在线看| 国产一区二区三区四区在线视频| 三级黄色片免费久久久| 精品国产yw在线观看| 国产欧美日韩一区二区三区 | 内射囯产旡码丰满少妇| 国产精品污www一区二区三区| 亚洲最大成av人网站| 亚洲最新中文字幕一区| 成人国产高清av一区二区三区| 亚洲精品国产精品乱码视色| 色爱无码av综合区| 亚洲综合婷婷久久| 蜜桃在线观看视频在线观看| 免费观看人妻av网站| 男人和女人做爽爽视频| 亚洲日韩v无码中文字幕| 亚洲欧洲日产国码无码久久99| 久久免费视亚洲无码视频| 亚洲国产日韩欧美高清片a| 久久久亚洲精品一区二区| 国产99久久精品一区| 亚洲福利网站在线一区不卡 | 日韩精品一区二区在线天天狠天| 未满十八勿入av网免费| 中文字幕精品无码一区二区| 亚洲人免费| 久久aⅴ无码av高潮AV喷| 一本大道综合久久丝袜精品|