• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      一種基于Hadoop的紡織海量生產(chǎn)數(shù)據(jù)存儲設(shè)計

      2013-09-18 10:30:50劉文化于偉東
      微型電腦應(yīng)用 2013年6期
      關(guān)鍵詞:海量分布式紡織

      王 軍,劉文化,于偉東

      0 引言

      紡織裝備企業(yè)重點提升產(chǎn)品的自動化、數(shù)字化、網(wǎng)絡(luò)化和智能化水平[1]。目前隨著傳統(tǒng)的紡織工藝進(jìn)行知識融合與知識重用,上百個工藝參數(shù)的逐步進(jìn)行優(yōu)化[2],生產(chǎn)過程出現(xiàn)了“數(shù)據(jù)豐富而知識貧乏”的現(xiàn)象逐步獲得有效解決,但隨之而來的則是企業(yè)的集成信息系統(tǒng)尤其是生產(chǎn)制造系統(tǒng)每天獲取的數(shù)據(jù)隨著應(yīng)用精度的提高呈幾何級遞增,因此在如何分發(fā)、存儲、管理和共享這些海量數(shù)據(jù)已成為亟待解決的問題。本文在研究Hadoop框架的基礎(chǔ)上,提出一種基于Hadoop 的海量紡織生產(chǎn)數(shù)據(jù)的存儲管理體系。

      1 紡織生產(chǎn)現(xiàn)狀

      紡織品的生產(chǎn)鏈?zhǔn)菑脑牧先缪蛎⒚藁ǖ酿B(yǎng)殖開始的,一般要經(jīng)過原料初加工、前紡準(zhǔn)備、后紡、織布、染整等幾大工序,工藝流程長,各類工藝過程既有纖維材料成形方式的不同,也有為得到不同性能和質(zhì)量指標(biāo)的半成品或成品所采用加工方法的差別,這其中包括材料位移過程、流體動力學(xué)過程、物質(zhì)熱交換過程、化學(xué)反應(yīng)過程,以及借助于工藝設(shè)備順序或并列完成工藝操作的過程等[3]。紡織品加工過程的數(shù)據(jù)主要體現(xiàn)在:工藝過程的動態(tài)性和數(shù)據(jù)的多樣性。紡織品加工過程中各種質(zhì)量控制指標(biāo)處于不斷變化的動態(tài)過程中,數(shù)據(jù)類型存在多樣性,既有數(shù)值型,也有非數(shù)值型[5]。同時由于大量數(shù)據(jù)產(chǎn)生的時間和環(huán)節(jié)不一致,數(shù)據(jù)分布比較分散;所以分布式的數(shù)據(jù)組織管理成為一種必要手段。

      目前大多數(shù)紡織企業(yè)的生產(chǎn)制造層面的制造執(zhí)行系統(tǒng)(MES)、自動監(jiān)測和動態(tài)精細(xì)化管理系統(tǒng),企業(yè)資源計劃系統(tǒng)(ERP)等集成應(yīng)用系統(tǒng)仍然采用傳統(tǒng)的分布式數(shù)據(jù)庫架構(gòu)存儲和管理數(shù)據(jù),需要耗費昂貴得計算資源,其效率并不高,且系統(tǒng)的存儲能力受制于所依賴的數(shù)據(jù)庫管理系統(tǒng)的能力,對于如何把大批量數(shù)據(jù)分割、計算合理分配都需要冗長的程序執(zhí)行才能實現(xiàn)。

      2 Hadoop簡介

      2.1 Hadoop介紹

      Hadoop是Apache開源組織的一個分布式計算框架,可以在大量廉價的硬件設(shè)備組成的集群上運行應(yīng)用程序,構(gòu)建一個具有高可靠性和良好擴(kuò)展性的并行分布式系統(tǒng),Hadoop分布式文件系統(tǒng)(Hadoop Distributed File System,HDFS)、MapReduce編程模型和HBase分布式數(shù)據(jù)庫是其三大核心技術(shù)[4]。

      2.2 MapReduce

      MapReduce是一種線形的可伸縮編程模型,包括Map函數(shù)和Reduce函數(shù)。這些函數(shù)無視數(shù)據(jù)的大小或者他們正在使用的集群的特性。關(guān)系型數(shù)據(jù)庫管理系統(tǒng)往往使用于數(shù)據(jù)集索引已經(jīng)被建立的查詢和更新。MapReduce適合處理需要分析整個數(shù)據(jù)集的問題,尤其是自主或及時地分析。而生產(chǎn)過程中的數(shù)據(jù)往往是隨時更新,并且數(shù)據(jù)量大,需要實時得到處理結(jié)果。MapReduce滿足了數(shù)據(jù)被一次寫入和多次讀取的需求,同時對與半結(jié)構(gòu)化的數(shù)據(jù)非常有效。關(guān)系型數(shù)據(jù)庫則相對更適合持續(xù)更新的數(shù)據(jù)集,即寫入的數(shù)據(jù)不斷變化,但輸入的數(shù)據(jù)要符合特定的預(yù)定義模式。另外,MapReduce還有支持PB級的數(shù)據(jù)量、支持?jǐn)?shù)據(jù)結(jié)構(gòu)的動態(tài)模式、進(jìn)行高速流讀寫等優(yōu)點。

      2.3 HDFS

      HDF是為流式數(shù)據(jù)訪問模式存儲超大文件而設(shè)計的文件系統(tǒng)。目前已經(jīng)有Hadoop集群存儲PB級的數(shù)據(jù)量。HDFS是建立在一次寫入,多次讀取模式是最高效的思想上[7]。一個數(shù)據(jù)集由數(shù)據(jù)源直接生成或者復(fù)制獲得,而后進(jìn)行相關(guān)的數(shù)據(jù)分析,所以為分析提供的數(shù)據(jù)集的讀取比第一條記錄讀取的延遲更重要。因此,HDFS建立了流式數(shù)據(jù)訪問機(jī)制。

      2.4 HBase

      HBase是一種構(gòu)建在HDFS之上的分布式、面向列的存儲系統(tǒng)。適合于需要實時讀寫、隨即訪問超大數(shù)據(jù)集的情況。HBase通過線形方式從下到上增加節(jié)點來進(jìn)行擴(kuò)展。HBase自動把表橫向切分為不同區(qū)域,每個區(qū)域包含表所有行的一個子集。初始表只包含單個區(qū)域,但隨著區(qū)域擴(kuò)大到超過設(shè)置的閥值,便以行為分界線,劃分成大小差不多的兩個新區(qū)域。因此對于任何一個服務(wù)器,再大的表都可以由服務(wù)器集群來處理。

      3 海量紡織生產(chǎn)數(shù)據(jù)存儲架構(gòu)實現(xiàn)

      3.1 紡織海量生產(chǎn)數(shù)據(jù)的存儲整體架構(gòu)

      根據(jù)紡織生產(chǎn)過程產(chǎn)生的數(shù)據(jù)及數(shù)據(jù)的使用需求[6],源數(shù)據(jù)層主要功能是數(shù)據(jù)的獲取存儲,數(shù)據(jù)處理層主要實現(xiàn)數(shù)據(jù)的并行加載存儲,數(shù)據(jù)存儲層主要實現(xiàn)為數(shù)據(jù)應(yīng)用展現(xiàn)所需數(shù)據(jù)的存儲。在該架構(gòu)中通過使用HDFS存儲海量源數(shù)據(jù),通過MapReduce處理這些海量源數(shù)據(jù),用HBase分布式數(shù)據(jù)庫存儲處理后生產(chǎn)數(shù)據(jù)。通過三個層面的數(shù)據(jù)流轉(zhuǎn)從而設(shè)計實現(xiàn)紡織海量生產(chǎn)數(shù)據(jù)的存儲系統(tǒng).具體實現(xiàn)結(jié)構(gòu)如圖1。

      3.2 HDFS讀寫數(shù)據(jù)體系

      在從生產(chǎn)過程中采集數(shù)據(jù)后如圖2為Client對HDFS讀寫數(shù)據(jù)體系。

      圖2 Client對HDFS讀寫數(shù)據(jù)體系

      HDFS Client通過調(diào)用FileSystem對象的open()來讀取文件[4]。Distributed Filesystem通過使用RPC來調(diào)用Name Node,以確定文件開頭部分的塊位置。對于每一個塊,Name Node返回具有該塊副本的數(shù)據(jù)節(jié)點。Distributed Filesystem返回一個FSData InputStream對象給Client讀取數(shù)據(jù)。FSdata Input-Stream轉(zhuǎn)而包裝一個DFSInputStream對象。Client對這個輸入流調(diào)用read()。存儲著文件開頭部分的塊的數(shù)據(jù)節(jié)點地址的DFSInputStream隨即與這些塊最近的數(shù)據(jù)節(jié)點相連接。通過在數(shù)據(jù)流中反復(fù)調(diào)用read(),數(shù)據(jù)會從不同的數(shù)據(jù)節(jié)點(如圖中的四個數(shù)據(jù)節(jié)點)返回客戶端。到達(dá)塊的末端時,DFSInputStream會close()與數(shù)據(jù)節(jié)點間的聯(lián)系,然后為下一個塊找到最佳的數(shù)據(jù)節(jié)點。Client從流中讀取data block是按照DFSInputStream與不同的數(shù)據(jù)節(jié)點的新連接順序讀取的,一旦Client讀取完成,就對File System輸入流調(diào)用close()。在整個過程中,Client只需要讀取一個連續(xù)的流即可獲得整體的需要分析的數(shù)據(jù)集。依次過程,Client對HDFS寫入數(shù)據(jù)到各個Data Node。

      3.3 MapReduce模型

      MapReduce的工作分為兩個階段:map階段和reduce階段。每個階段都有鍵/值對作為輸入和輸出,其類型可以支持自定義。在此階段定義了兩個函數(shù):map函數(shù)和reduce函數(shù)。map函數(shù)負(fù)責(zé)把單任務(wù)分解為多任務(wù),reduce函數(shù)負(fù)責(zé)把分解后多任務(wù)的處理結(jié)果匯總起來,根據(jù)需求得到需要的結(jié)果。將HDFS中的數(shù)據(jù)根據(jù)處理能力分解成小數(shù)據(jù)集,然后進(jìn)行map并行操作,map函數(shù)輸入的是前一階段Client寫入到HDFS 各個Data Node中的數(shù)據(jù)。map函數(shù)的處理的輸出結(jié)果先由MapReduce框架處理,經(jīng)過combine后發(fā)送給reduce函數(shù)。reduce函數(shù)根據(jù)需求如根據(jù)鍵來對進(jìn)行排序,然后輸出到HBase分布式數(shù)據(jù)庫中存儲。如圖3為MapReduce的數(shù)據(jù)流模型。

      圖3 MapReduce數(shù)據(jù)流模型

      由于紡織生產(chǎn)過程中產(chǎn)生的數(shù)據(jù)由結(jié)構(gòu)化的數(shù)據(jù)、半結(jié)構(gòu)畫化、非結(jié)構(gòu)化的數(shù)據(jù),并且多數(shù)為半結(jié)構(gòu)化的數(shù)據(jù)。所以在此階段用MapReduce輸入的鍵和值并不是數(shù)據(jù)固有屬性的特點,根據(jù)分析來選擇其鍵值在處理時間內(nèi)解釋數(shù)據(jù)非常有效。同時,MapReduce通過一個JobTracker的調(diào)度和管理及監(jiān)控任務(wù)的運行,通過多個TaskTracker來執(zhí)行任務(wù),有效提高系統(tǒng)執(zhí)行能力。

      3.4 HBase分布式存儲機(jī)制

      通過MapReduce模型輸出的數(shù)據(jù)被存儲在HBase分布式存儲系統(tǒng)中。HBase由一個主節(jié)點和多個服務(wù)器從節(jié)點組成。主節(jié)點負(fù)責(zé)分配區(qū)域給已經(jīng)注冊的服務(wù)器從節(jié)點,從節(jié)點故障處理;從節(jié)點負(fù)責(zé)響應(yīng)Client的讀寫請求,同時也負(fù)責(zé)通知主節(jié)點從節(jié)點的分裂、衍生信息。HBase通過HDFS的API進(jìn)行數(shù)據(jù)維護(hù)。在紡織海量生產(chǎn)數(shù)據(jù)的HBase的表中,行是經(jīng)過排序的,并且列可以被客戶端隨時增加的。該系統(tǒng)可以容納寬的、稀疏的表而不增加開銷。紡織海量生產(chǎn)數(shù)據(jù)存儲系統(tǒng)中將行輸入數(shù)據(jù)write()或copy()到HDFS上,同時運行MapReduce讀取輸入數(shù)據(jù)并寫到Hbase,所有需要的數(shù)據(jù)全部讀入后再寫入所有節(jié)點上。隨著寫入數(shù)據(jù)的增加和表的劃分,數(shù)據(jù)將被分布的不同的從節(jié)點上。

      4 總結(jié)

      該系統(tǒng)根據(jù)紡織生產(chǎn)過程的不同特點通過Hadoop實現(xiàn)了紡織海量生產(chǎn)數(shù)據(jù)的存儲。通過HDFS實現(xiàn)了數(shù)據(jù)的一次寫入,多次讀??;通過MapReduce實現(xiàn)了充分的并行性,將作業(yè)有效分布到數(shù)據(jù)上;通過HBase實現(xiàn)了隨著表空間增長的自動分區(qū)、區(qū)域自動平衡、訪問數(shù)據(jù)在毫秒范圍內(nèi)的應(yīng)用。運行表明,系統(tǒng)安全可靠、易維護(hù)、具有良好的可擴(kuò)展性。但該系統(tǒng)中也存在不足及待完善的地方:Name Node的擴(kuò)展性問題,MapReduce數(shù)據(jù)流中I/O性能優(yōu)化問題,MapReduce執(zhí)行、調(diào)度有待進(jìn)一步提高,這一系列問題未進(jìn)一步的研究提供指引。

      [1]紡織工業(yè)“十二五”發(fā)展規(guī)劃 2012年1月

      [2]于偉東,楊建國.紡織工業(yè)中的虛擬加工技術(shù)與模式.紡織導(dǎo)報,7,10-16,22(2005)

      [3]劉貴.精毛紡織品虛擬加工中的預(yù)報與反演模型研究[博士論文].上海:東華大學(xué),2010

      [4]曾大聃,周傲英譯.Hadoop權(quán)威指南(中文版).清華大學(xué)出版社,2010.5

      [5]殷祥剛,項前、呂志軍,于偉東.基于智能技術(shù)的精毛紡織品全程虛擬加工系統(tǒng).西安工程大學(xué)學(xué)報,22(4),407-411(2008)Hadoop.http://hadoop.apache.org/

      猜你喜歡
      海量分布式紡織
      一種傅里葉域海量數(shù)據(jù)高速譜聚類方法
      澳洋紡織
      紡織報告(2022年8期)2022-08-25 08:14:38
      紡織屆的“兩優(yōu)一先”
      海量快遞垃圾正在“圍城”——“綠色快遞”勢在必行
      分布式光伏熱錢洶涌
      能源(2017年10期)2017-12-20 05:54:07
      分布式光伏:爆發(fā)還是徘徊
      能源(2017年5期)2017-07-06 09:25:54
      一個圖形所蘊含的“海量”巧題
      基于DDS的分布式三維協(xié)同仿真研究
      西門子 分布式I/O Simatic ET 200AL
      基于文件系統(tǒng)的分布式海量空間數(shù)據(jù)高效存儲與組織研究
      五莲县| 搜索| 绥宁县| 安溪县| 南汇区| 阿坝县| 祁东县| 乌拉特后旗| 邵阳县| 新干县| 漳平市| 长顺县| 平南县| 海丰县| 墨江| 通山县| 内黄县| 姜堰市| 彭泽县| 溧水县| 额敏县| 安吉县| 廊坊市| 英吉沙县| 荔波县| 东台市| 玛纳斯县| 中方县| 开平市| 营口市| 治多县| 临沂市| 兴安县| 陕西省| 绍兴县| 许昌县| 英吉沙县| 襄垣县| 东乡县| 临高县| 本溪|