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

        ?

        基于MongoDB的鋁合金模板設(shè)計(jì)軟件數(shù)據(jù)存儲系統(tǒng)

        2018-06-20 08:21:24
        土木建筑工程信息技術(shù) 2018年2期
        關(guān)鍵詞:分片存儲系統(tǒng)鋁合金

        (中國建筑科學(xué)研究院深圳分院,深圳 518057)

        1 引言

        我國建筑業(yè)正處在大發(fā)展、大建設(shè)階段。建筑業(yè)是資源和能源消耗大戶,其中模板消耗木材的數(shù)量非常龐大。據(jù)統(tǒng)計(jì),木模板市場占到整個模板市場的3/4之上。而木模板有效利用率只為5%。木模板系統(tǒng)的使用不僅浪費(fèi)了木材等資源,而且違背了國家產(chǎn)業(yè)政策向?qū)?,增加了碳排放,也造成了施工成本的大幅提高?/p>

        鋁合金模板作為新一代的建筑模板,具有低碳環(huán)保,無建筑施工垃圾,重量輕。拆裝靈活、剛度高、使用壽命長,澆筑的混凝土面平整光潔,施工對機(jī)械依賴程度低等優(yōu)勢。隨著建筑行業(yè)和科學(xué)技術(shù)的快速發(fā)展,低碳經(jīng)濟(jì)發(fā)展模式已經(jīng)成為全球共識,選擇鋁合金模板系統(tǒng)施工成為必然的發(fā)展趨勢。

        鋁合金模板加工完成送到現(xiàn)場之后,基本不能修改,不像木模板可以隨便切割。即使模板設(shè)計(jì)上的小小差錯,都可能需要重新深化設(shè)計(jì),加工及制作,再從廠家運(yùn)至施工現(xiàn)場。所以要求鋁合金模板設(shè)計(jì)圖紙必須要十分準(zhǔn)確。鋁合金模板設(shè)計(jì)軟件除了處理模板本身的數(shù)據(jù)信息之外,還需要處理項(xiàng)目的建筑模型信息,結(jié)構(gòu)模型信息以保證模板的對孔,漏漿,碰撞檢查等。因此,如何提升數(shù)據(jù)存儲和讀取性能同時保證系統(tǒng)服務(wù)穩(wěn)定可靠成為該軟件的焦點(diǎn)。

        2 MongoDB概述

        MongoDB是一個高性能、開源、模式自由,基于分布式文件存儲的NoSQL數(shù)據(jù)庫。MongoDb的數(shù)據(jù)模式是動態(tài)的,數(shù)據(jù)結(jié)構(gòu)非常松散,是類似json的bson格式,在同一集合內(nèi)的文檔格式可以不一致,單個文檔內(nèi)部無需考慮數(shù)據(jù)結(jié)構(gòu)及類型,可動態(tài)增加非結(jié)構(gòu)化數(shù)據(jù),還可以嵌套文檔或者數(shù)組。Mongo最大的特點(diǎn)是它支持的查詢語言非常強(qiáng)大,其語法有點(diǎn)類似于面向?qū)ο蟮牟樵冋Z言,幾乎可以實(shí)現(xiàn)類似關(guān)系數(shù)據(jù)庫單表查詢的絕大部分功能,而且還支持對數(shù)據(jù)建立索引。其主要功能特性如下:

        1)跨平臺、支持語言眾多;

        2)模式自由;

        3)支持文件存儲;

        4)易于水平擴(kuò)展;

        5)復(fù)制集機(jī)制;

        6)多級索引;

        7)面向集合存儲;

        8)豐富的查詢語句。

        3 數(shù)據(jù)存儲系統(tǒng)架構(gòu)

        數(shù)據(jù)存儲系統(tǒng)為獨(dú)立的一層,介于業(yè)務(wù)層與數(shù)據(jù)庫之間,主要用于提供給業(yè)務(wù)一個類似內(nèi)存數(shù)據(jù)集合的接口進(jìn)行領(lǐng)域?qū)ο蟮脑L問,并負(fù)責(zé)領(lǐng)域?qū)ο蟮某志没?。系統(tǒng)采用Repository模式封裝存儲,讀取和查找行為的機(jī)制。如圖1所示,將對領(lǐng)域?qū)ο髷?shù)據(jù)公共操作部分提取為IRepository接口,如常見的保存、刪除、查詢等方法,MongoRepository類來具體實(shí)現(xiàn)上面的接口的方法。MongoDB并不像關(guān)系型數(shù)據(jù)庫一樣需要定義一個ORM框架。不同的領(lǐng)域?qū)ο髮?shù)據(jù)的處理有著不同的需求,所以對應(yīng)不同的領(lǐng)域?qū)ο蠖x各自的Repository類。

        4 分片集群搭建

        結(jié)合使用MongoDB的副本集和分片集群技術(shù),使得系統(tǒng)擁有高擴(kuò)展性、高伸縮性的同時也確保集群的可用性和可靠性。利用Mongo的分片技術(shù),將數(shù)據(jù)自動的分解成多個塊,存儲在不同的服務(wù)器節(jié)點(diǎn)上,每個塊都有對應(yīng)副本集。確保有服務(wù)器宕機(jī)時,其他的副本可以立即接替壞掉的部分繼續(xù)工作。數(shù)據(jù)分片以后,可以利用多臺服務(wù)器構(gòu)建一個水平可擴(kuò)展的運(yùn)算架構(gòu),為系統(tǒng)提供強(qiáng)大的處理能力。以確保讓不停增長的數(shù)據(jù)始終如一的提供初始的訪問性能,而不會隨著數(shù)據(jù)的增長,系統(tǒng)的訪問速度越來越慢。

        如圖2所示,分片集群有四個組件:mongos、config server、shard、replica set。應(yīng)用請求mongos來操作mongoDB的增刪改查,config server存儲數(shù)據(jù)庫元信息,并且和mongos做同步,數(shù)據(jù)最終存入在shard(分片)上,為了防止數(shù)據(jù)丟失同步在副本集中存儲了一份,Arbiter仲裁在數(shù)據(jù)存儲到分片的時候決定存儲到哪個節(jié)點(diǎn)。

        圖2 分片集群

        5 海量數(shù)據(jù)并行運(yùn)算

        隨著系統(tǒng)數(shù)據(jù)量的不斷增大,對海量數(shù)據(jù)進(jìn)行快速運(yùn)算是該存儲系統(tǒng)必須解決的一個問題。MapReduce模型是解決該問題一個較為成熟的解決方案。該模型將計(jì)算任務(wù)切割并分發(fā)到計(jì)算集群的單個計(jì)算節(jié)點(diǎn)并行計(jì)算,在計(jì)算完成后,把結(jié)果返回給主服務(wù)器,主服務(wù)器匯總結(jié)果,最終完成計(jì)算任務(wù)的處理。

        MongoDB的MapReduce功能是MapReduce編程模式的簡化實(shí)現(xiàn)。主要由Map、Shuffle和Reduce組成,使用時Map和Reduce需要顯式定義,shuffle由MongoDB來實(shí)現(xiàn)。首先Map將運(yùn)算映射到文檔,生成Key-Value鍵值對,然后Shuffle按照Key進(jìn)行分組,并將key相同的Value組合成數(shù)組。最后Reduce則把Value數(shù)組化簡為單值被返回。

        如圖3所示,MapReduce在分片集群進(jìn)行并行計(jì)算時,路由節(jié)點(diǎn)mongos將客戶端發(fā)出的請求進(jìn)行暫存,并通過訪問config節(jié)點(diǎn)以獲得相關(guān)數(shù)據(jù)的位置。mongos得到數(shù)據(jù)的分布后,將請求發(fā)給相應(yīng)的分片節(jié)點(diǎn)shard,shard節(jié)點(diǎn)進(jìn)行MapReduce處理,并將處理數(shù)據(jù)返回給mongos,mongos將處理完的數(shù)據(jù)進(jìn)行運(yùn)算之后傳遞給最后的reducer。

        圖3 MapReduce在分片集群并行計(jì)算過程

        6 性能測試

        此次測試共涉及4臺服務(wù)器: 1臺Web 服務(wù)器和3臺 MongoDB 服務(wù)器。機(jī)器配置:CPU 為Intel(R)Core(TM)2 Duo CPU T6570 @ 2.10 GHz、內(nèi)存為16 G DDR2 667、硬盤為SATA 1T、操作系統(tǒng)為Windows Server 2008 R2。編寫程序進(jìn)行 MongoDB 千萬級數(shù)據(jù)量的性能測試,分別測試如下幾個項(xiàng)目。

        6.1 MongoDb數(shù)據(jù)庫性能測試

        如圖4所示,向MongoDB和MySQL數(shù)據(jù)庫插入1億條數(shù)據(jù),每條數(shù)據(jù)大小1kb的情況下,MySQL的插入速度高于MongoDB。如圖5所示,在不同大小的數(shù)據(jù)庫中查詢1 000條數(shù)據(jù),每條數(shù)據(jù)的大小1kb的情況下。MongoDB的查詢速度遠(yuǎn)超MySQL,查詢的數(shù)據(jù)量逐漸增多的時候,MySQL的查詢速度是穩(wěn)步下降的,而MongoDB的查詢速度卻有些起伏。

        圖4 插入數(shù)據(jù)對比

        圖5 查詢數(shù)據(jù)對比

        6.2 分片集群性能測試

        如圖6所示,在插入的數(shù)據(jù)每條為1 kB 的情況下,正常插入的方式在數(shù)據(jù)量小于1 000萬條時,性能是比較高效的,但之后急劇降低,通過查看任務(wù)管理器,發(fā)現(xiàn)此時的內(nèi)存占用率高于90%以上,說明數(shù)據(jù)的插入跟內(nèi)存有著直接的關(guān)系,數(shù)據(jù)量過大時,需要在磁盤和內(nèi)存間進(jìn)行大量的數(shù)據(jù)交換,因此性能下降較快。而在分片的情況下,則相對穩(wěn)定。批量操作在分片和非分片情況下差別較小。

        圖6 插入數(shù)據(jù)對比

        如圖7所示,在每次查詢100條記錄,每條數(shù)據(jù)大小1kb的情況下。分片集群與常規(guī)查詢差距不大,但分片集群的穩(wěn)定性要高于非分片查詢。在加入聚合排序條件之后,兩種情況的速度都有所下降。

        圖7 查詢數(shù)據(jù)對比

        7 總結(jié)

        利用MongoDB的模型自由性、高可用性、高可擴(kuò)展性等特點(diǎn),搭建的鋁合金模板設(shè)計(jì)軟件云端數(shù)據(jù)存儲系統(tǒng),可靈活地支持對象屬性字段的擴(kuò)展,同時MongoDB的Shading技術(shù),為突破單節(jié)點(diǎn)數(shù)據(jù)庫服務(wù)器的I/O能力限制,提供了水平擴(kuò)展的解決方案。使用MapReduce模型搭建的并行計(jì)算模型保障了大規(guī)模數(shù)據(jù)運(yùn)算、分析等處理的高效性與穩(wěn)定性。數(shù)據(jù)復(fù)制與故障切換功能,為系統(tǒng)的可靠性提供了保障。實(shí)踐表明,本系統(tǒng)的靈活度及可擴(kuò)展性良好,為建筑信息模型數(shù)據(jù)存儲提供了一種思路。

        [1] Heidemann J,Bulusu N.Using geospatial information in sensor networks[C].Proceedings of CSTB workshop on Intersection of Geospatial Information and Information Technology,Arlington,VA,USA, 2001.

        [2] MongoDB manual[EB/OL].2012.http://docs.mongodb.org/manual/sharding/.

        [3] Chodorow K,Dirolf M.MongoDB 權(quán)威指南[M].程顯峰,譯.北京:人民郵電出版社, 2011.

        [4] 姚林, 張永庫.NoSQL 的分布式存儲與擴(kuò)展解決方法[J].計(jì)算機(jī)工程, 2012, 38(6): 40-42.

        [5] Kuznetsov S D,Poskonin A V.NoSQL data management systems[J].Programming & Computer Software, 2014, 40(6): 323-332.

        [6] Copeland R.MongoDB 應(yīng)用設(shè)計(jì)模式[M].陳新,譯.北京:中國電力出版社, 2015.

        [7] 龔健雅. 空間數(shù)據(jù)庫管理系統(tǒng)的概念與發(fā)展趨勢[J].測繪科學(xué), 2001, 26(3): 4-9.

        [8] Stonebraker M.SQL databases v.NoSQL databases[J].Communications of the ACM, 2010, 53(4): 10-11.

        猜你喜歡
        分片存儲系統(tǒng)鋁合金
        上下分片與詞的時空佈局
        詞學(xué)(2022年1期)2022-10-27 08:06:12
        分片光滑邊值問題的再生核方法
        分布式存儲系統(tǒng)在企業(yè)檔案管理中的應(yīng)用
        哈爾濱軸承(2020年2期)2020-11-06 09:22:36
        CDN存量MP4視頻播放優(yōu)化方法
        天河超算存儲系統(tǒng)在美創(chuàng)佳績
        基于模糊二分查找的幀分片算法設(shè)計(jì)與實(shí)現(xiàn)
        2219鋁合金TIG焊接頭殘余應(yīng)力分布
        焊接(2016年1期)2016-02-27 12:59:14
        華為震撼發(fā)布新一代OceanStor 18000 V3系列高端存儲系統(tǒng)
        鋁合金三元?dú)怏w保護(hù)焊焊接接頭金相
        焊接(2015年8期)2015-07-18 10:59:14
        一種基于STM32的具有斷電保護(hù)機(jī)制的采集存儲系統(tǒng)設(shè)計(jì)
        日韩免费精品在线观看| 国产成人+亚洲欧洲+综合| 国产精品爆乳在线播放| 亚洲图片第二页| 日韩在线视频专区九区| 国产精品女同一区二区久| 国产免费网站在线观看不卡| 欧美成人家庭影院| 中文乱码字慕人妻熟女人妻| 久久天天躁狠狠躁夜夜爽蜜月| 狠狠色欧美亚洲综合色黑a| 亚洲粉嫩视频在线观看| 亚洲免费国产中文字幕久久久| 久久www免费人成精品| 国产午夜福利精品久久2021| 92精品国产自产在线观看48页| 亚洲av区一区二区三区| 精品国产粉嫩内射白浆内射双马尾| 国产成人亚洲综合色婷婷| 国产精品无需播放器| 免费人成视频网站在线| 日本久久精品视频免费| 色视频线观看在线网站| 激情亚洲一区国产精品| 中文字幕无码免费久久9| 日本女优久久精品久久| 久久人妻av一区二区软件| 中出内射颜射骚妇| 高清国产美女av一区二区| 狠狠久久av一区二区三区| 国产av激情舒服刺激| 无码人妻久久一区二区三区不卡 | 一区一级三级在线观看| 国产精品一区二区三区色| 日韩一级黄色片一区二区三区| 一本一道av无码中文字幕麻豆| 色狠狠一区二区三区香蕉| 亚洲成在人网av天堂| 色青青女同性恋视频日本熟女| 日韩熟女系列中文字幕 | 欧美日韩国产乱了伦|