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

        ?

        基于NoSQL數(shù)據(jù)庫的鐵路通信數(shù)字工程存儲研究

        2022-05-21 08:15:44武文斌
        鐵路技術(shù)創(chuàng)新 2022年1期
        關(guān)鍵詞:實體對象鐵路

        武文斌

        (中鐵第一勘察設(shè)計院集團有限公司,陜西 西安 710043)

        0 引言

        近年來,BIM技術(shù)在鐵路工程建設(shè)中起到越來越重要的作用,也是鐵路工程進行數(shù)字化轉(zhuǎn)型升級的核心技術(shù)支撐[1-2],數(shù)字工程技術(shù)在實際工程中的應用將會推動數(shù)字經(jīng)濟與實體經(jīng)濟的深度融合[3-5]。鐵路通信數(shù)字工程作為信息的載體,將鐵路工程在工程設(shè)計、工程施工、運維管理等階段全生命周期內(nèi)的信息集成在統(tǒng)一的數(shù)字化模型中,打破設(shè)計、施工、運維階段業(yè)務(wù)的信息隔離,實現(xiàn)一體化、全過程化的數(shù)字應用。鐵路通信數(shù)字工程的創(chuàng)建和存儲環(huán)節(jié)是將實體工程進行數(shù)字化的重要環(huán)節(jié)。在鐵路BIM標準相關(guān)體系框架下,研究鐵路通信數(shù)字工程創(chuàng)建和存儲技術(shù),將推動鐵路通信行業(yè)數(shù)字工程更好地服務(wù)鐵路高品質(zhì)發(fā)展,更好地融入鐵路行業(yè)的全生命周期中。

        目前常用的關(guān)系型數(shù)據(jù)庫RDBMS廣泛應用于多個領(lǐng)域,是基于關(guān)系模型存儲數(shù)據(jù)的數(shù)據(jù)庫,但當存儲數(shù)據(jù)量增加到一定量級、數(shù)據(jù)類型繁多時,若未進行及時有效的前期規(guī)劃,存儲數(shù)據(jù)時就會出現(xiàn)并發(fā)度不高、訪問查詢效率較低及擴展性差等問題[6]。NoSQL數(shù)據(jù)庫的空間索引機制和RDBMS不同,NoSQL數(shù)據(jù)庫可實現(xiàn)高并發(fā)讀寫與高效空間索引[7],以及支持系統(tǒng)在任何階段實現(xiàn)高可用性與高擴展性。探索性地在鐵路通信數(shù)字工程的存儲和查詢環(huán)節(jié)采用NoSQL數(shù)據(jù)庫并進行深入研究,實現(xiàn)鐵路通信數(shù)字工程在工程全過程的可用性與兼容性。

        1 NoSQL數(shù)據(jù)庫分析

        1.1 NoSQL數(shù)據(jù)庫優(yōu)勢

        鐵路通信數(shù)字工程在創(chuàng)建過程中會產(chǎn)生各類信息數(shù)據(jù),數(shù)字工程的模型與信息數(shù)據(jù)構(gòu)成了完整的鐵路數(shù)字工程信息模型,并且在工程全生命周期中需不斷增添各類自定義格式數(shù)據(jù)。NoSQL數(shù)據(jù)庫為非關(guān)系型數(shù)據(jù)庫,包含多種數(shù)據(jù)存儲的數(shù)據(jù)庫設(shè)計模式,可將各類信息進行有機整合,為擴展提供便利,且其結(jié)構(gòu)簡單,是高性能可適應高數(shù)據(jù)量的鐵路數(shù)字工程模型。

        鐵路通信設(shè)備及工程種類繁多,數(shù)據(jù)無法預定義統(tǒng)一的存儲結(jié)構(gòu),需在創(chuàng)建過程中不斷定義新的存儲結(jié)構(gòu)。NoSQL數(shù)據(jù)庫具有靈活輕便的數(shù)據(jù)結(jié)構(gòu)和更簡單的訪問模式,在鐵路通信數(shù)字工程存儲中很好地解決了大數(shù)據(jù)量處理問題,并且鐵路通信數(shù)字工程的數(shù)據(jù)信息需在多個平臺進行數(shù)據(jù)共享,NoSQL數(shù)據(jù)庫可建立標準數(shù)字化模型,形成可復用的標準化數(shù)字資產(chǎn)。

        1.2 NoSQL數(shù)據(jù)庫類型分析

        NoSQL數(shù)據(jù)庫主要有鍵值數(shù)據(jù)庫、列族數(shù)據(jù)庫、文檔數(shù)據(jù)庫和圖數(shù)據(jù)庫4種類型數(shù)據(jù)庫(見圖1)。鍵值數(shù)據(jù)庫是將數(shù)據(jù)存儲為鍵值的集合,是在鐵路通信數(shù)字工程存儲研究中適用性最好的數(shù)據(jù)庫類型之一,在鐵路通信數(shù)字工程中可存儲實體對象的屬性和分類信息;列族數(shù)據(jù)庫可方便存儲結(jié)構(gòu)化和半結(jié)構(gòu)化數(shù)據(jù),更方便進行數(shù)據(jù)壓縮;文檔數(shù)據(jù)庫沒有固定數(shù)據(jù)架構(gòu),可存放并獲取文檔,其格式可以是XML、JSON、BSON等,在鐵路通信數(shù)字工程中使用XML文檔格式;圖數(shù)據(jù)庫以圖論為基礎(chǔ),使用圖結(jié)構(gòu)進行語義查詢和定義,使用節(jié)點、邊和屬性來存儲數(shù)據(jù)。

        圖1 4種不同類型數(shù)據(jù)庫結(jié)構(gòu)

        2 存儲過程

        2.1 存儲內(nèi)容

        鐵路通信數(shù)字工程按照類別可分為構(gòu)件模型和單項工程模型。構(gòu)件模型是工程主體的組成部分,或獨立或與其他部分結(jié)合來完成至少1項工程主體的主要功能,如傳輸設(shè)備、接入設(shè)備等。單項工程模型是指在施工、改造等工程實施過程中,通過使用一定的建設(shè)資源(人員、材料、機械),應用技術(shù)和技能經(jīng)過一定的建設(shè)過程而形成的工作結(jié)果[8]。如鐵路通信數(shù)字工程的溝槽及管道、光(電)纜敷設(shè)及防護等相關(guān)工程。鐵路通信機械室數(shù)字工程模型見圖2。

        圖2 鐵路通信機械室數(shù)字工程模型

        2.2 數(shù)據(jù)架構(gòu)設(shè)計

        鐵路通信數(shù)字工程底層數(shù)據(jù)架構(gòu)分為前端、數(shù)據(jù)中臺和數(shù)據(jù)庫3個層次(見圖3)。

        圖3 鐵路通信數(shù)字工程數(shù)據(jù)架構(gòu)

        (1)前端為用戶提供模型創(chuàng)建功能,主要有設(shè)備布放、設(shè)備連接關(guān)系建立、邏輯關(guān)聯(lián)關(guān)系配置和系統(tǒng)圖生成、人員和項目信息管理配置等。

        (2)數(shù)據(jù)中臺主要提供模型與數(shù)據(jù)的關(guān)聯(lián)、信息處理、邏輯處理、為前端提供API等功能。

        (3)數(shù)據(jù)庫主要包括NoSQL數(shù)據(jù)庫和RDBMS數(shù)據(jù)庫。NoSQL數(shù)據(jù)庫主要存儲屬性、部件分類、空間位置、幾何信息等內(nèi)容,并使用NoSQL數(shù)據(jù)庫的MapRe-duce機制實現(xiàn)分布式數(shù)據(jù)加載過程[9];RDBMS數(shù)據(jù)庫主要存儲字典數(shù)據(jù)、工點信息、橋隧數(shù)據(jù)、斷鏈表等數(shù)據(jù)。

        2.3 實體對象定義

        鐵路通信數(shù)字工程在創(chuàng)建過程中主要存在2種類型數(shù)據(jù),一類是可以存入關(guān)系型數(shù)據(jù)庫內(nèi)的數(shù)據(jù),如設(shè)備及線纜字典、定額字典、項目工點數(shù)據(jù)、斷鏈數(shù)據(jù)等。另一類是數(shù)字工程創(chuàng)建過程中產(chǎn)生的數(shù)據(jù),如模型幾何信息、空間位置信息、數(shù)字工程分解信息及所屬關(guān)系等,在創(chuàng)建過程中按需求進行對象定義,并存入NoSQL數(shù)據(jù)庫中將模型和數(shù)據(jù)進行整合。

        鐵路通信數(shù)字工程實體是組成鐵路通信工程的基本單元,每個實體都有其特征和功能,特征指實體的靜態(tài)屬性,功能指實體的動態(tài)屬性。鐵路通信數(shù)字工程實體對象是被抽象描述的某個實體,一個鐵路通信數(shù)字工程實體包含了實體的特征和功能,數(shù)字工程在創(chuàng)建過程中需進行對象定義,并添加與其對應的屬性值,再存入NoSQL數(shù)據(jù)庫中,從而實現(xiàn)模型和數(shù)據(jù)的融合統(tǒng)一。鐵路通信數(shù)字工程設(shè)備對象定義見圖4。

        圖4 鐵路通信數(shù)字工程設(shè)備對象定義

        在設(shè)備與部件、部件與端口存在一對多的情況時,通過數(shù)組的方式定義一對多的關(guān)聯(lián)關(guān)系。設(shè)備(Device)、零件(Parts)、端口(Port)3級實體定義見表1。

        表1 設(shè)備、零件、端口3級實體定義

        2.4 實體對象存儲

        數(shù)字工程對象的存儲基于NoSQL數(shù)據(jù)庫的架構(gòu)模式,存儲數(shù)據(jù)庫采用鍵值(Key-Value)方式。NoSQL數(shù)據(jù)庫內(nèi)對象由自身的屬性數(shù)據(jù)和多個關(guān)聯(lián)或映射關(guān)系組成,其中映射關(guān)系由哈希函數(shù)來實現(xiàn)[10]。在哈希表中主要采用雙索引機制和列存儲模式,每個對象均由唯一的GUID(即Key值)和所附屬的屬性構(gòu)成(即Value)。進行實體對象查找時,以GUID為基礎(chǔ),進行實體遍歷后,通過GUID對比查找所需要的屬性值。進行實體對象存儲時,為了節(jié)約硬件緩存、提高查詢效率,可將實體對象按屬性類別進行存放,并保證同類相鄰對象存儲位置也相鄰,即可實現(xiàn)軟件高效便捷地讀取數(shù)據(jù)值,也有助于提高整個系統(tǒng)的效率。以鐵路通信10G傳輸設(shè)備為例,其在NoSQL數(shù)據(jù)庫中的存儲結(jié)構(gòu)見圖5。

        圖5 鐵路通信10G傳輸設(shè)備在NoSQL中的存儲結(jié)構(gòu)

        2.5 建立索引

        對NoSQL實體對象建立索引關(guān)系是一個重要環(huán)節(jié),建立索引能夠極大提高數(shù)字工程對象查詢的效率。鐵路通信數(shù)字工程實體對象的索引需存儲在易于遍歷讀取的獨立數(shù)據(jù)集合中,是對整個NoSQL數(shù)據(jù)庫表按照一定規(guī)律排序的特定數(shù)據(jù)結(jié)構(gòu)。

        在數(shù)字工程對象及其屬性上建立索引,首先將數(shù)字工程對象的GUID作為哈希函數(shù)的輸入,獲取數(shù)字工程對象的索引;然后用數(shù)字工程對象的GUID和屬性值進行組合,作為哈希函數(shù)的輸入,獲取屬性數(shù)組的指針,從而確定數(shù)字工程對象某個屬性的存儲位置。采用主外鍵聯(lián)合建立索引的方式,主鍵用于強制某一列的唯一性和關(guān)系表中數(shù)據(jù)的排列結(jié)構(gòu),外鍵可加快連接速度。

        在鐵路通信數(shù)字工程NoSQL數(shù)據(jù)庫中使用單索引方式和復合鍵索引方式。

        (1)單索引方式創(chuàng)建唯一索引語法為:db.Project.createIndex({deviceName:1},{unique: true}),表示在數(shù)據(jù)庫中建立集合,其中數(shù)據(jù)對象排列按device-Name的升序創(chuàng)建索引。

        (2)復合鍵方式創(chuàng)建唯一索引語法為:db.Project.createIndex({deviceName:1,Code:1},{unique:true}),表示在數(shù)據(jù)庫中建立集合,其中數(shù)據(jù)對象排列按device-Name和Code聯(lián)合創(chuàng)建索引。

        2.6 實體遍歷

        對實體對象的遍歷查找,可根據(jù)對象GUID直接定位,也可給定1個條件,如對象的某個屬性大于某個限值。查找條件由簡單的操作符(大于、小于、等于等)和操作數(shù)組成。對象遍歷可按照實體默認編碼Code由小到大依次執(zhí)行哈希函數(shù)獲取對象的存儲位置;對實體數(shù)據(jù)庫類型總表中不存在的對象類型定義為NULL,可直接跳過查找過程;對于同類對象中不連續(xù)的對象Code,則需完整執(zhí)行查找過程。

        對實體對象遍歷的基本語法為:db.Project.find().forEach(function(item){“GUID=a51bbf84-eed5-483c-8a00-a3e301194e42”}),表示遍歷符合GUID=a51bbf84-eed5-483c-8a00-a3e301194e42條件的設(shè)備。

        2.7 基本操作

        因NoSQL數(shù)據(jù)庫并不支持SQL語言,對數(shù)據(jù)庫的操作需自定義相應的函數(shù)進行數(shù)據(jù)新增、刪除、修改、查找。新增操作是把對象GUID通過哈希函數(shù)映射到對應的存儲節(jié)點并保存對象的各屬性值;刪除操作是通過GUID找到對象,并將其存儲標志設(shè)置為無效;修改操作是進行對象GUID哈希函數(shù)映射的查找,再將其屬性值進行修改;查找操作的核心是對象的遍歷和GUID值的對比,通過哈希函數(shù)獲取對象的存儲位置,從而確定所查找對象的值。

        (1)新增1個對象實體基本語法為:db.Project.insert({GUID:a51bbf84-eed5-483c-8a00-a3e301194e42,deviceName:2.5G傳輸}),表示項目數(shù)據(jù)庫中新增名稱為2.5G傳輸?shù)脑O(shè)備。

        (2)刪除1個對象實體基本語法為:db.Project.remove({GUID:a51bbf84-eed5-483c-8a00-a3e301194e 42}),表示在項目數(shù)據(jù)庫中刪除GUID為a51bbf84-eed5-483c-8a00-a3e301194e42的設(shè)備。

        (3)修改1個對象實體基本語法為:db.Project.update({GUID:a51bbf84-eed5-483c-8a00-a3e301194e42,{deviceName:10G傳輸設(shè)備}}),表示在項目數(shù)據(jù)庫中將GUID為a51bbf84-eed5-483c-8a00-a3e301194e42的設(shè)備名稱改為10G傳輸設(shè)備。

        (4)查找1個對象實體的基本語法為:db.Project.find({GUID:a51bbf84-eed5-483c-8a00-a3e301194e42}),表示在項目數(shù)據(jù)庫中查找ID為a51bbf84-eed5-483c-8a00-a3e301194e42的設(shè)備。

        3 結(jié)束語

        鐵路通信數(shù)字工程的創(chuàng)建貫穿于工程設(shè)計、施工和運維的全生命周期,遵循鐵路BIM聯(lián)盟發(fā)布的鐵路BIM標準體系,合理的數(shù)據(jù)結(jié)構(gòu)設(shè)計將大大提高數(shù)字工程在應用階段的效率。在鐵路通信數(shù)字工程存儲中采用NoSQL數(shù)據(jù)庫,可將工程基礎(chǔ)信息更好地與模型進行融合和擴展,極大提高了數(shù)字模型與數(shù)據(jù)的一致性和對高并發(fā)的處理能力。鐵路通信數(shù)字工程與其NoSQL數(shù)據(jù)庫形成的數(shù)字資產(chǎn)可滿足不同場景的應用需求,在設(shè)計期可支撐基礎(chǔ)數(shù)據(jù)的流轉(zhuǎn),進行優(yōu)化設(shè)計;在施工期可支撐數(shù)字工程的工藝工法、設(shè)備空間形態(tài)等的展示,指導施工;在運維期可支撐智能運維管理,提供運營維護的基礎(chǔ)數(shù)據(jù)。鐵路數(shù)字工程作為鐵路工程建造過程中的重要組成部分,應強化基礎(chǔ)研究,堅持創(chuàng)新驅(qū)動發(fā)展,全面實現(xiàn)工程數(shù)字化建設(shè)和物資數(shù)字化管理。在鐵路通信數(shù)字工程創(chuàng)建環(huán)節(jié)引入新理念、新方法、新模式,更好地整合數(shù)字生態(tài)中所有系統(tǒng)與數(shù)據(jù),也是實現(xiàn)數(shù)據(jù)驅(qū)動和數(shù)字仿真的基礎(chǔ)。

        猜你喜歡
        實體對象鐵路
        神秘來電
        睿士(2023年2期)2023-03-02 02:01:09
        沿著中老鐵路一路向南
        云南畫報(2021年12期)2021-03-08 00:50:54
        前海自貿(mào)區(qū):金融服務(wù)實體
        中國外匯(2019年18期)2019-11-25 01:41:54
        鐵路通信線路維護體制改革探索與實踐
        攻略對象的心思好難猜
        意林(2018年3期)2018-03-02 15:17:24
        實體的可感部分與實體——兼論亞里士多德分析實體的兩種模式
        哲學評論(2017年1期)2017-07-31 18:04:00
        兩會進行時:緊扣實體經(jīng)濟“釘釘子”
        振興實體經(jīng)濟地方如何“釘釘子”
        基于熵的快速掃描法的FNEA初始對象的生成方法
        無人機在鐵路工程建設(shè)中的應用與思考
        精品国产日韩无 影视| 国产午夜三级精品久久久| 国产一区二区三区视频了| 精品日产一区2区三区| 中文字幕精品乱码一二三区| 中文字幕日韩一区二区不卡| 亚洲精品在线视频一区二区| 国产精品天干天干| 小辣椒福利视频导航| 少妇厨房愉情理伦bd在线观看 | 四虎影视永久在线精品| 久久dvd| 一区二区av日韩免费| 色视频日本一区二区三区 | 无人区乱码一区二区三区| 精品国际久久久久999波多野| 无码国产精品一区二区免费模式| 成人做爰视频www| 亚洲国产一区二区三区亚瑟| 香蕉国产人午夜视频在线观看| 国产亚洲午夜高清国产拍精品不卡| 久久亚洲免费精品视频| 刚出嫁新婚少妇很紧很爽| 国产精品一区二区三区卡| 中文字幕在线观看| 狠狠色婷婷久久综合频道日韩| 97久久超碰国产精品2021| 国产亚洲无码1024| 日韩精品一区二区三区影音视频 | 国产青青草视频在线播放| 国产精品黄色av网站| 熟女免费视频一区二区| 国产午夜精品无码| 国产人与禽zoz0性伦| 久久亚洲AV无码一区二区综合| 日韩人妻有码中文字幕| 国产视频在线观看一区二区三区| 日本中文字幕一区二区有码在线| 手机福利视频| 亚洲日韩∨a无码中文字幕| 国产精品视频免费的|