APP下载

BIM 设计成果的存储研究

2021-05-12张海兵段高博许永宏

中国管理信息化 2021年8期
关键词:分片文档成果

张海兵,操 锋,段高博,许永宏,乔 俊

(中铁第四勘察设计院集团有限公司,武汉 430063)

0 引言

随着铁路和城市轨道交通行业建筑信息模型(Building Information Modeling,BIM)应用的不断推进,在BIM 应用项目中均会引用BIM 平台,以实现多单位间工程协作、施工过程管理或运维管理等,众多的管理平台均需要完善的存储机制为前端的管理业务做支撑。随着BIM 项目的日益增多,BIM 文件数据量、体量越来越大。同时,铁路和城市轨道交通行业BIM设计成果具有专业多、体量大、阶段性的特征,采用什么存储机制,以支撑铁路和城市轨道交通BIM 项目的设计成果文件的管理、高效检索和文件的扩展存储是亟须解决的问题。良好的存储机制也将为实现专业间协作平台、专业间提资平台、项目成果管理平台建设打下良好的基础。

1 BIM 设计成果的存储研究

针对BIM 设计成果的存储策略有很多,有基于文件传输协议(File Transfer Protocol,FTP)服务器的文件存储,但是存在难以扩容、服务器负载不均衡,缺乏文件备份与恢复机制等问题。有基于Hadoop 分布式文件系统(Hadoop Distributed File System,HDFS)的存储,但是无法高效地对构件(如族Rfa、ipt)、设计参数文档(xls、doc)等小文件进行存储。Mongo DB 可用于文件数据的存储,具有可扩展、高可用的特性。本文提出基于MongoDB的BIM 设计文件的存储机制,实现不同格式、不同大小的设计成果的可扩展、高可用存储,并提供检索机制便于数据的检索。

1.1 BIM 设计文件存储系统的架构设计

为实现管理平台中海量、类型复杂、文件体量跨度大的文件的存储且兼顾高扩展性、高伸缩性和数据高可用,本文采用MongoDB 的分片加副本机制,并引用GridFS 存储机制,建立BIM 设计文件的存储集群,如图1 所示。

(1)Mongos 即集群请求的入口,所有的请求都通过Mongos进行协调,Mongos 是一个请求分发中心,负责把对应的数据请求转发到对应的Shard 服务器上。在生产环境通常有多个Mongos 作为请求的入口,防止入口挂掉的问题。

(2)Config Server 即配置服务器,存储所有数据库元信息(路由、分片)的配置。Mongos 本身没有物理存储分片服务器和数据路由信息,只是缓存在内存里,配置服务器则实际存储这些数据。

(3)分片(Sharding)是指将数据拆分,将其分散在不同的机器上。将数据分散到不同的机器上,不需要功能强大的服务器就可以存储更多的数据和处理更大的负载。将集合切成小块,这些块分散到若干片里,每个片只负责总数据的一部分,最后通过一个均衡器来对各个分片进行均衡(数据迁移)。Shard机制的存在支持了BIM 设计文件的横向扩展存储。

(4)Replica set 即副本集,其实就是Shard 的备份,防止Shard 挂掉之后数据丢失。复制提供了数据的冗余备份,并在多个服务器上存储数据副本,提高了BIM 设计成果文件的可用性,并可以保证数据的安全性。

(5)GridFS 即MongoDB 的一个子模块,使用GridFS 可以辅助管理BIM 设计成果的大文件,如大体量的BIM 模型。它使用两个集合(Collection)存储文件,一个集合是Chunks,用于存储文件内容的二进制数据;另一个集合是Files,用于存储文件的元数据。如果文件大于Chunksize,会先将文件按照Chunk的大小分割成多个Chunk 块,最终将Chunk 块的信息存储在fs.chunks 集合的多个文档中。然后将文件信息存储在fs.files集合的唯一一份文档中。其中fs.chunks 集合中多个文档中的file_id 字段对应fs.files 集中文档“_id”字段。

图1 基于MongoDB 的BIM 设计文件的存储架构

基于本文的存储架构便于文件存储的横向扩展,增加存储节点可扩充存储容量,达到存储的高可扩展,解决传统存储方式存储容量不够的问题。基于副本集各节点会通过心跳算法来检测各自的健康状况,当主节点出现故障时,多个从节点会触发一次新的选举操作,并选举其中一个作为新的主节点,从而确保系统的高可用性。基于GridFS 机制可支持存储量小的设计成果如普通的文档、Excel 表格、Rfa 族文件、ipt 构件等,也可支持成百上千兆字节的BIM 模型成果。

1.2 BIM 设计文件元数据模型设计

MongoDB 存储文件元数据包含两部分,默认元数据和自定义元数据,默认元数据包含文档ID、名称、长度、块长度、文件md5 和上传时间。本文设计BIM 设计文件自定义元数据包含以下字段,如表1 所示,可根据项目需要额外进行扩充,基于元数据模型,配合具体项目的业务逻辑,实现高效检索。

表1 自定义元数据字段

2 成果应用

如图2 所示,在本次研究的课题成果应用于基于轨道交通的BIM+GIS 的集成系统中,采用3 台服务器搭建了最小的高可用、可扩展的存储集群,用于该系统的BIM 设计成果数据的存储和管理,便于数据的下载和利用。

图2 基于轨道交通的BIM+GIS 的集成系统

猜你喜欢

分片文档成果
上下分片與詞的時空佈局
浅谈Matlab与Word文档的应用接口
有人一声不吭向你扔了个文档
分片光滑边值问题的再生核方法
CDN存量MP4视频播放优化方法
工大成果
基于模糊二分查找的帧分片算法设计与实现
“走出去”成果斐然
“健康照明”成果聚焦
基于RI码计算的Word复制文档鉴别