CN109344223B - 一种基于云计算技术的建筑信息模型管理系统及方法 - Google Patents
一种基于云计算技术的建筑信息模型管理系统及方法 Download PDFInfo
- Publication number
- CN109344223B CN109344223B CN201811085285.8A CN201811085285A CN109344223B CN 109344223 B CN109344223 B CN 109344223B CN 201811085285 A CN201811085285 A CN 201811085285A CN 109344223 B CN109344223 B CN 109344223B
- Authority
- CN
- China
- Prior art keywords
- bim
- file
- data
- information
- analysis
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/13—Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Geometry (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Architecture (AREA)
- Civil Engineering (AREA)
- Structural Engineering (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明属于云计算技术领域,涉及一种基于云计算技术的建筑信息模型BIM管理系统及方法,通过实现BIM数据的分布式解析和存储,解决了现有BIM管理平台无法抽取BIM数据并进行集成应用的问题;而且采用分布式解析方法,解决平台处理超大BIM模型时在集群单个主机内解析内存溢出的问题;并通过面向用户提供检索服务,使用户快速、直观地从多种维度获取数据分析成果,无需学习复杂的查询公式,以支持工程项目的多样化分析需求。
Description
技术领域:
本发明属于云计算技术领域,涉及一种基于云计算技术的建筑信息模型(BIM)管理系统及方法。
背景技术:
随着国内建筑信息模型(BIM)技术的不断完善,业主、开发商、设计院对数据的要求越来越高,使用这项新技术的人员在整个工作周期内会产生大量的数据,这就需要一个云数据平台来管理这些信息,保证项目中的所有人读取信息的唯一性、准确性、时效性,为其提供快速、便捷的项目协作方式。CN201610577471.8公开了基于建筑信息模型的控制系统及方法,其中基于建筑信息模型的控制系统包括存储在本地服务器上的本地数据库和存储在云端服务器上的云端数据库,本地数据库连接有用来创建完整的三维立体建筑信息模型的创建模块,用来将设计数据包读取并载入到三维立体建筑模型中的读取载入模块,用来将本地数据库中的三维立体建筑模型完整呈现并随时根据需求进行调节的形成模块,用来对人员、材料和机械设备进行定位和选择的定位选择模块,连接在本地服务器与云端服务器之间用来为云端服务器进行数据筛选的筛选模块,以及与云端服务器通过网络连接的客户端;创建模块所创建的三维立体建筑信息模型包括人员信息、材料信息和机械设备信息;CN201410348513.1公开了一种基于建筑信息模型的项目策划管理系统,所述的建筑信息模型是三维可视的建筑信息模型,所述的项目策划管理系统包括工程概况模块、数据录入模块、数据查询模块和设计方案论证模块四个功能模块,所述工程概况模块用于录入和查询建筑工程项目前期基本信息,该基本信息包括项目选址、项目规模、项目初步设想和项目周边环境信息,所述项目初步设想通过三维体量建筑信息模型展示概念设计成果,将设计师设计理念和设计思路用三维建筑信息模型进行展示,所述项目规模通过三维体量建筑模型展示概念设计结果的基本信息。
目前,建筑信息模型(BIM)管理平台主要通过建立资源管理系统来满足多用户之间的协同共享,提供BIM文件、图片、文档、视频等资源的上传、下载、以及基于元数据的文件检索,提供通过树形列表点选或封装数据查询语言等方式进行BIM数据检索。无法做到抽取BIM数据并与外部数据集成,不能支持工程项目的多样化分析需求。因此,迫切需要设计一种基于云计算技术的建筑信息模型(BIM)管理方法及系统。
发明内容:
本发明的目的在于克服现有技术存在的缺陷,寻求设计一种基于云计算技术的建筑信息模型(BIM)管理系统及方法,该方法基于云计算技术实现对BIM数据的分布式解析、分布式存储、BIM数据提取并与外部数据集成以及综合数据检索和3D展示,提供了对海量BIM数据的管理和高效数据挖掘的技术支撑。
为了实现上述目的,本发明所述基于云计算技术的建筑信息模型(BIM)管理系统的主体结构包括用户终端、Web服务器集群、分布式文件系统(HDFS)集群,其中Web服务器集群包括Web服务器、倒排索引服务器、数据库服务器、BIM检索服务器,分布式文件系统(HDFS)集群包括分布式存储系统和分布式计算系统,其中数据库服务器采用关系型数据库MYSQL,分布式存储系统采用分布式数据库HBase集群,分布式计算系统采用分布式计算框架Hadoop集群;Web服务器接收并转发用户请求,是对BIM文件解析前进行预处理的承担者,负责进行BIM文件的分割处理,然后将分割好的若干片段上传至HDFS集群进行保存;倒排索引服务器是对BIM元数据信息、BIM数据抽取信息(构件类型)建立关键词词频统计,并更新到倒排索引,方便用户检索;数据库服务器是对系统中元数据的保存,主要存储用户与BIM构件描述数据的相关信息,用户相关信息指与用户登陆及个人相关的数据信息(具体包括用户名、密码、平台访问权限),BIM构件描述数据的相关信息则是存储的关于BIM本身的元数据及其在集群中所处于的状态;BIM检索服务器接收从Web服务器转发的用户检索请求,将检索词进行同义词扩充,然后对所有的扩充词在倒排索引中全部进行检索,形成搜索列表(BIM文件列表)返回给用户;Hbase集群是BIM解析模块的底层存储,通过Hbase的JavaAPI接口采用编程的方式操作Hbase数据库,与Web和Hadoop集群进行交互,实现对于BIM文件的存储与访问;Hadoop集群负责整个解析工作中的并行解析模块,由它启动并行计算作业对已切割好的BIM文件进行并行解析,在并行解析完成后将抽取的构件信息建立倒排索引,并将解析文件写入Hbase集群进行保存。
本发明所述BIM文件采用建筑工程数据交换标准IFC格式的BIM数据。
本发明采用大数据并行处理框架MapReduce进行并行计算作业。
本发明实现基于云计算技术的建筑信息模型(BIM)管理的具体过程包括BIM解析存储和BIM检索展示两个过程,具体为:
(一)BIM解析存储
(1)用户在BIM上传页面填写BIM的关键词信息,关键词信息包括BIM名称、BIM类型、所在位置、建成时间、相关图文介绍;
(2)用户选中IFC格式的BIM文件选择上传,通过网络上传到Web服务器的缓冲区保存,同时BIM文件元数据保存到数据库中,BIM文件元数据包括BIMID、BIM名称、BIM类型、关联的各类构件;
(3)倒排索引服务器根据BIM文件元数据经过分词处理,建立关键词词频统计并更新到倒排索引,方便检索;
(4)Web服务器根据Web服务器中作业队列,对缓冲区中的BIM文件进行预处理,然后将文件分为N份(N≥1),然后将N个文件片段连同片段信息上传到HDFS集群上进行保存;
(5)Web服务器向Hadoop集群发出作业请求;Hadoop集群发起MapReduce作业;MapReduce作业将文件片段从HDFS集群上下载到各个Map任务对应的节点之上,然后Map任务负责BIM片段的解析,抽取构件的几何表达信息以及属性信息,输出成JSON数据交换格式;各个Map任务解析完成后将所有的JSON文件通过安全外壳协议(SSH)传输到Reduce节点之上,Reduce任务负责将数据进行合并处理得到合并后的文件;Reduce在处理每一个JSON文件时,会按照所抽取的构件类型统计进行关键词排序工作并更新倒排索引;
(6)最后将合并后的文件写入Hbase集群中,并更新BIM元数据信息,比如包含X个楼层等统计信息;每个楼层关联的各类构件统计信息,比如柱数、墙数、对应占比等;
(二)BIM检索展示
(1)用户在搜索页面填写检索词;
(2)Web服务器接受用户输入的检索词,并转发至BIM检索服务器,检索词经分词处理后提取关键词,再通过词向量生成模型(Word2vec)对关键词进行同义词扩充,然后对所有的扩充词进行检索,找出一组与检索词相关的BIMID集合;
(3)从数据库中读取BIMID集合的元数据信息,将相关元数据信息如BIMID、BIM名称、BIM类型、关联的各类构件统计信息形成搜索列表返回给用户;
(4)用户选择相应的BIM,Web服务器接收到用户需要展示的BIM信息,得到BIM在Hbase集群上的“行键”(关系型数据库MYSQL中的BIMID即Hbase的行键ID),基于行键在Hbase中查找到对应BIM数据并读取;
(5)将BIM数据推送到支持WEBGL3D绘图标准的浏览器,供用户进行3D交互,同时将BIM元数据显示在页面。
本发明与现有技术相比,具有以下优势:一是通过实现BIM数据的分布式解析和存储,解决了现有BIM管理平台无法抽取BIM数据并进行集成应用的问题;二是由于采用了分布式解析方法,可以解决平台处理超大BIM模型时在集群单个主机内解析内存溢出的问题;三是通过面向用户提供检索服务,使用户快速、直观地从多种维度获取数据分析成果,无需学习复杂的查询公式,以支持工程项目的多样化分析需求。
附图说明:
图1为本发明所述基于云计算技术的建筑信息模型(BIM)管理系统的主体结构原理示意框图。
图2为本发明所述基于云计算技术的建筑信息模型(BIM)管理方法的BIM解析存储流程图。
图3为本发明所述基于云计算技术的建筑信息模型(BIM)管理方法的BIM检索展示流程图。
图4为本发明实施例对BIM并行解析的工作流程示意图。
图5为本发明实施例所述编号为#1000标准梁构件IfcBeamStandardCase。
图6为本发明实施例所述BIM预处理工作流程图。
图7为本发明实施例所述以IFCWALLSTANDARDCASE为例的数据关系图。
具体实施方式:
下面通过实施例并结合附图对本发明作进一步描述。
实施例:
本实施例实现基于云计算技术的建筑信息模型(BIM)管理的具体过程为:
(一)基于云计算的BIM文件解析存储过程
BIM文件存储前进行分割预处理,只有经过分割以后,才能够通过并行的方式进行解析操作,根据分割策略,将一个完整的BIM文件按照保留其内部构件完整描述信息的原则分为若干片段,同时建立好文件的映射关系,然后将分割好的片段上传至Hadoop集群进行保存,并对BIM并行解析,如图4所示,具体实施过程如下:
1、数据模型设计:建立包括关系型数据、非关系型数据和倒排索引数据的数据模型,其中关系型数据存储于数据库服务器中,便于进行文件管理和数据检索,主要包括以下数据:
1)用户信息:用户ID、用户名、密码、姓名等;
2)BIM信息:BIM ID、上传用户、BIM名称、介绍等;
非关系型数据存储于Hbase分布式数据库中,便于进行模型3D展示加载和交互,主要包括以下数据:
构件信息表:
1)行键:BIM ID;
2)列族:{几何表达信息[版本1,版本2…]}、{属性信息},其中,几何表达信息包括几何体描述、网格类型、位置参数、放缩参数、旋转参数、材质等,属性信息包括构件名称、构件类型、全局标识等;
倒排索引数据存储于全文检索引擎(本实施例采用文本检索引擎Lucene进行具体说明)索引结构中,便于进行用户前台搜索,主要结构如下:
1)BIM模型的IFC格式文件作为文档;
2)BIM模型的构件类型作为关键词;用户上传BIM模型时输入的元数据经分词处理后作为关键词;
3)索引结构为:<关键词,BIM ID[关键词出现次数]>;2、BIM文件解析:IFC格式文件由头文件部分和数据部分组成,结构如下:
HEADER;
...
...
ENDSEC;
DATA;
...
...
ENDSEC;
其中,头文件的信息包括:IFC版本、输出IFC文件的应用程序、文件输出时间与日期、用户、企业等信息,数据部分则包含了IFC模型中的所有实体实例,以下以标准梁构件为例,数据部分每一个对象的语法表达为:#+数字编号=IFC对象类型+(属性1,属性2,...),如图5所示,图5描述了编号为#1000标准梁构件IfcBeamStandardCase,它的ObjectPlacement和Representation属性分别由编号为#1001和#1010的实体表示,标准梁构件的位置信息描述的含义如下:#1001(IfcLocalPlacement)表示标准梁坐标系的位置,以#10025(另一坐标系)为参考基准,#1002(IfcAxis2Placement3D)则作为转换坐标系,其中#1003(IfcCartesianPiont)表示相对距离,#1004(IfcDirection)和#1005(IfcDirection)表示局部坐标系方向(#1004表示局部坐标系Z轴方向,#1005表示局部坐标系X轴方向)。构件的局部坐标系确定以后,构件几何形状表现的基点以局部坐标系为参考进行定位,#1021(IfcExtrudedAreaSolid)以#1030(IfcAxis2Placement3D)即描述几何体的表现基点;
#1010(IfcProductDefinitionShape)描述了标准梁的产品形状的定义过程。IfcProductDefinitionShape定义与几何形状相关的信息,可为一个构件定义多种几何表现方式,#1020与#1050(IfcShapeRepresentation)为两种不同的几何表现方式,#1020表示应用实体拉伸的方法(#1021IfcExtrudedAreaSolid)表现模型几何特性,#120定义了拉伸截面类型,即为I型截面,#1030(IfcAxis2Placement3D)定义了几何实体的定位点,#1034(IfcDirection)表明拉伸方向(局部坐标系的Z轴正方向),拉伸距离为2000mm,而#1050则表示以三维曲线来描述模型几何形状;
IfcBeamStandardCase的材料特性通过IFC关系实体与材料进行关联,#112(IfcMaterialProfile)定义构件的材料截面属性,包含截面定义(#120,I型截面)与材料定义(#113,Steel),IfcMaterialProfileSet(图中#111实体)可含多个材料截面定义,此例只含#112,#1041(IfcMaterialProfileSetUsage)指定IfcMaterialProfileSet应用到哪些构件,通过关系对象#1040(IfcRelAssociatesMaterial)将材料定义指定给#1000(IfcBeamStandardCase),图中的#100实体是IfcBeamType,定义了梁对象的类型、材料属性、截面属性,IfcBeamStandardCase实例共享这些属性,实际上,IfcBeamType对象在建筑模型中通过IfcBeamStandardCase或IfcBeam来表述,而在结构分析模型中则通过IfcStructuralCurveMember来表述;
3、BIM预处理:分布式解析的基本思想就是“分而治之”,即将一个大的BIM文件分成几个BIM片段再进行单独片段的解析,所以首先第一步需要做的就是将BIM文件进行“分割”,所以BIM预处理模块主要进行原始BIM文件的BIM文件分割与保存BIM元数据,原始BIM文件由于存在大量上下文引用数据,无法直接拆分,通过脚本将所有引用位置采用最终内容填充,使得每一行数据都包含完整描述信息,BIM预处理的主要流程如下:
(1)Web服务器收到用户上传的BIM文件,将相应的BIM任务放到预处理队列中,根据先来先服务原则,对BIM文件进行依次的调度处理;
(2)在本实施例中采用IFC格式的BIM数据,则根据IFC数据结构(IFCSchema)编写BIM文件的“数据行”提取程序并生成预处理结果文件:
1)系统调用IFC解析库(ifcOpenShell)工具识别BIM文件中所有的构件主体,以标准墙为例:
#57=IFCWALLSTANDARDCASE('0Cv7Y4mJr6',#33,'\X\B0\X\...',$,'\X\B0\X\F2\X\A5\X\BB\X\C0\X\F0:RC\X\C0\X\F015cm:85268',#46,#56,'183203');
2)针对每个构件行数据,将每个构件的引用位置“#”以递归调用的方式在BIM文件内搜索描述数据并进行填充,
3)直至全部引用位置替换完毕,系统导出消除了全部引用位置的BIM文件(completeBIM);
(3)基于ifcOpenShell工具识别的构件列表以及completeBIM对应的数据行,启用数据分割脚本命令,将completeBIM划分为Chuck_1,…,Chuck_x等多个片段,并相应存储各个片段的元数据比如构件类型等,这些信息为集群的分布式解析提供输入信息;
4、BIM上传:当BIM经过预处理分割之后,便需要上传到Hadoop集群上进行暂存,BIM上传集群需要调用Hadoop请求发起端(Hadoop-client)的上传接口,根据指定的每个分割BIM片段的路径信息,上传Chuck_x文件到HDFS的指定路径之下,上传的同时需要将分割文件的位置与映射信息写入数据库中进行保存;
5、并行解析:
(1)数据抽取:以标准墙(IFCWALLSTANDARDCASE)为例,当得到#57数据行的完整描述信息时,通过调用ifcOpenshell工具可得到如图7所示的数据关系,从而很容易地获取到BIM内构件的全部信息,包括几何体信息、属性信息等;
(2)并行解析
BIM并行解析模块是解析系统的核心,由Hadoop集群的MapReduce作业负责对BIM片段进行并行解析,Map阶段负责从HDFS上下载BIM片段到解析节点,Reduce负责将解析后的各个BIM数据写入Hbase集群进行存储;
BIM分割片段Chuck_x在HDFS集群上进行存储,数据库服务器负责维护所有片段文件的元信息,BIM并行解析由MapReduce作业进行实现,其主要经历以下几个步骤:
1)HDFS管理节点(NameNode)启动MapReduce作业,启动任务调度工具(JobTracker)进行BIM解析任务的派发,即开启Hadoop集群解析节点的Map作业,一个Map任务对应一个BIM片段;
2)各个解析节点启动Map任务后,从HDFS集群上下载指定的BIM片段到该节点,然后通过本地命令行调用ifcOpenShell解析工具对分配到的BIM片段进行解析,此时多个解析节点是同时进行解析作业的,Map任务的主要工作如下:
#Mapper
<?php
while($line=fgets(STDIN)!==false){
/对应于构件类型,进行几何体信息抽取、属性信息抽取
if(strpos($line,"IFCWALLSTANDARDCASE(")echogetlfcWal($line);
if(strpos($line,"IFCBEAM(")echogetlfcBeam($line);
if(strpos($line,"IFCCOLUMN(")echogetlfcColumn($line);
………………
}
?>
3)在解析节点上,解析后的BIM片段Chuckm_x先暂时存储到解析节点之上;
4)当所有BIM片段的解析任务完成之时,即MapReduce作业Map阶段的结束,然后JobTracker便会启动Reduce任务,Reduce任务是在一个指定节点上进行的,先将所有解析片段由其它节点下载到Reduce节点之上,通过Reduce建立排序后进行文件合并,并将解析后的文件写入Hbase存储集群上,Reduce任务的主要工作如下:
#Reducer
<?php
/接收mapper结果并排序
$ifcObj=array();
while($line=fgets(STDIN)!==false){
$ifcObj[$number]=$line;
$number++;
}
/将结果数据存入Hbase
foreach($ifcObjas$id=>$data){
savetoHbase($data);
}
?>
5)同时,Hadoop集群所有节点删除BIM片段及解析后BIM文件,更新BIM的解析状态为已完成,实现整个Hadoop集群中的BIM并行解析工作。
(二)文件检索展示流程
1、倒排索引:作为平台一项核心的功能,检索不可缺少,根据输入的检索词定位到文件所在的位置,建立倒排索引,从而形成<BIM构件类型,构件存储位置>的映射,本实施例采用Lucene对文件的关键词描述建立倒排索引,Lucene为索引器实现了完整的方法,只需要按照Lucene需要的配置和修改想要配置的部分即可,具体为:
(1)Lucene需要指定原始文档的路径和索引保存路径,以用于索引的存储和后期的检索器的使用;
(2)对于中文来说,需要采用分词器,将文档中的语句断开,本方案将Lucene默认的IKanalyzer替换成为ansj;
(3)创建索引,Lucene中需将将ansj分词器封装成为Analyzer,直接使用ansj_lucene4_plug插件包中的AnsjAnalysis()方法即可。然后按照Lucene的标准执行即可。将IndexWriter添加document,然后commit()即可生成索引;
(4)索引建立完成后,便可生成索引文件库;
2、文件检索:采用Lucene对步骤(二)1创建的倒排索引进行检索,检索查询的具体步骤为:
(1)得到用户输入后,使用ansj用于对检索的语句实现词法分析和相关语言处理;
(2)创建查询解析器(QueryParser),然后通过QueryParser调用parser对检索的语句进行相应的语法分析,生成查询语法树,放到Query中;
(3)创建索引读取器(IndexReader),通过IndexReader将磁盘上的信息读入到内存之中。
(4)使用索引查询器(IndexSearcher)的search()方法对索引进行搜索,得到命中的构件类型;
(5)得到结果列表后,返回给前台界面;
3、3D展示:3D展示由3D展示区域canvas元素、3D展示引擎threejs以及3D模型JS交互控件三个组件构成,每个组件负责工作如下:
3D展示的实现流程如下:
(1)用户查看搜索列表,选择相应的BIM,点击“查看3D模型”;
(2)Web服务器接收到用户需要展示的BIM信息,得到BIM在Hbase集群上的“行键”,去Hbase读取BIM的几何数据、属性数据;
(3)将BIM数据推送到支持WEBGL的浏览器,供用户进行3D交互,同时将BIM元数据显示在页面。
Claims (1)
1.一种基于云计算技术的建筑信息模型管理方法,其特征在于,具体过程为:
(一)基于云计算的BIM文件解析存储
BIM文件存储前进行分割预处理,根据分割策略将一个完整的BIM文件按照保留其内部构件完整描述信息的原则分为若干片段,同时建立好文件的映射关系,然后将分割好的片段上传至Hadoop集群进行保存,并对BIM并行解析,具体实施过程如下:
1、数据模型设计:建立包括关系型数据、非关系型数据和倒排索引数据的数据模型,其中关系型数据存储于数据库服务器中,便于进行文件管理和数据检索,关系型数据包括用户信息和BIM信息,用户信息包括用户ID、用户名、密码和姓名,BIM信息包括BIM ID、上传用户、BIM名称和介绍;非关系型数据存储于Hbase分布式数据库中,便于进行模型3D展示加载和交互,包括构件信息表,具体为:1)行键:BIM ID;2)列族:{几何表达信息[版本1,版本2…]}、{属性信息},几何表达信息包括几何体描述、网格类型、位置参数、放缩参数、旋转参数和材质,属性信息包括构件名称、构件类型和全局标识;倒排索引数据存储于全文检索引擎索引结构中,便于进行用户前台搜索,其结构如下:1)BIM模型的IFC格式文件作为文档;2)BIM模型的构件类型作为关键词;用户上传BIM模型时输入的元数据经分词处理后作为关键词;3)索引结构为:<关键词,BIM ID[关键词出现次数]>;
2、BIM文件解析:IFC格式文件由头文件部分和数据部分组成,头文件的信息包括IFC版本、输出IFC文件的应用程序、文件输出时间与日期、用户和企业信息,数据部分则包含了IFC模型中的所有实体实例;
3、BIM预处理:(1)Web服务器收到用户上传的BIM文件,将相应的BIM任务放到预处理队列中,根据先来先服务原则,对BIM文件进行依次的调度处理;(2)采用IFC格式的BIM数据,根据IFC数据结构编写BIM文件的“数据行”提取程序并生成预处理结果文件:先调用IFC解析库工具识别BIM文件中所有的构件主体,再针对每个构件行数据,将每个构件的引用位置“#”以递归调用的方式在BIM文件内搜索描述数据并进行填充,直至全部引用位置替换完毕,导出消除了全部引用位置的BIM文件completeBIM;再基于ifcOpenShell 工具识别的构件列表以及completeBIM对应的数据行,启用数据分割脚本命令,将completeBIM划分为Chuck_1,…,Chuck_x多个片段,并相应存储各个片段的元数据,为集群的分布式解析提供输入信息;
4、BIM上传:当BIM经过预处理分割之后上传到Hadoop集群上进行暂存,BIM上传集群时调用Hadoop请求发起端的上传接口,根据指定的每个分割BIM片段的路径信息,上传Chuck_x文件到HDFS的指定路径之下,同时将分割文件的位置与映射信息写入数据库中进行保存;
5、并行解析:(1)数据抽取:获取到BIM内构件的全部信息,包括几何体信息和属性信息;(2)并行解析:由Hadoop集群的MapReduce作业负责对BIM片段进行并行解析,Map阶段负责从HDFS上下载BIM片段到解析节点,Reduce负责将解析后的各个BIM数据写入Hbase集群进行存储;BIM分割片段Chuck_x在HDFS集群上进行存储,数据库服务器负责维护所有片段文件的元信息,BIM并行解析由MapReduce作业进行实现,包括以下步骤:1)HDFS管理节点启动MapReduce作业,启动任务调度工具进行BIM解析任务的派发,即开启Hadoop集群解析节点的Map作业,一个Map任务对应一个BIM片段;2)各个解析节点启动Map任务后,从HDFS集群上下载指定的BIM片段到该节点,然后通过本地命令行调用ifcOpenShell解析工具对分配到的BIM片段进行解析,此时多个解析节点同时进行解析作业;3)在解析节点上,解析后的BIM片段Chuckm_x先暂时存储到解析节点之上;4)当所有BIM片段的解析任务完成之时,即MapReduce作业Map阶段的结束,然后JobTracker便会启动Reduce任务,Reduce任务是在一个指定节点上进行的,先将所有解析片段由其它节点下载到Reduce节点之上,通过Reduce建立排序后进行文件合并,并将解析后的文件写入Hbase存储集群上;5)Hadoop集群所有节点删除BIM片段及解析后BIM文件,更新BIM的解析状态为已完成,实现整个Hadoop集群中的BIM并行解析工作;
(二)文件检索展示
1、倒排索引:根据输入的检索词定位到文件所在的位置,建立倒排索引,从而形成<BIM构件类型,构件存储位置>的映射,采用Lucene对文件的关键词描述建立倒排索引,具体为:(1)Lucene指定原始文档的路径和索引保存路径,以用于索引的存储和后期的检索器的使用;(2)对于中文来说,采用分词器将文档中的语句断开,将Lucene默认的IKanalyzer替换成为ansj;(3)创建索引,Lucene中将ansj分词器封装成为Analyzer,直接使用ansj_lucene4_plug插件包中的AnsjAnalysis()方法,然后按照Lucene的标准执行即可; 将IndexWriter添加document,然后commit()即可生成索引;(4)索引建立完成后,便可生成索引文件库;
2、文件检索:采用Lucene对步骤(二)1创建的倒排索引进行检索,检索查询的具体步骤为:(1)得到用户输入后,使用ansj用于对检索的语句实现词法分析和相关语言处理;(2)创建查询解析器QueryParser,然后通过QueryParser调用parser对检索的语句进行相应的语法分析,生成查询语法树,放到Query中;(3)创建索引读取器IndexReader,通过IndexReader将磁盘上的信息读入到内存之中;(4)使用索引查询器IndexSearcher的search()方法对索引进行搜索,得到命中的构件类型;(5)得到结果列表后,返回给前台界面;
3、3D展示:3D展示由3D展示区域canvas元素、3D展示引擎threejs以及3D模型JS交互控件三个组件构成,3D展示的实现流程如下:(1)用户查看搜索列表,选择相应的BIM,点击“查看3D模型”;(2)Web服务器接收到用户需要展示的BIM信息,得到BIM在Hbase集群上的“行键”,去Hbase读取BIM的几何数据、属性数据;(3)将BIM数据推送到支持WEBGL的浏览器,供用户进行3D交互,同时将BIM元数据显示在页面。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811085285.8A CN109344223B (zh) | 2018-09-18 | 2018-09-18 | 一种基于云计算技术的建筑信息模型管理系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811085285.8A CN109344223B (zh) | 2018-09-18 | 2018-09-18 | 一种基于云计算技术的建筑信息模型管理系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109344223A CN109344223A (zh) | 2019-02-15 |
CN109344223B true CN109344223B (zh) | 2022-05-17 |
Family
ID=65305486
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811085285.8A Active CN109344223B (zh) | 2018-09-18 | 2018-09-18 | 一种基于云计算技术的建筑信息模型管理系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109344223B (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111767253B (zh) * | 2019-04-01 | 2024-02-02 | 广联达科技股份有限公司 | 一种建筑模型文件的集成方法和装置 |
CN110134724A (zh) * | 2019-05-15 | 2019-08-16 | 清华大学 | 一种建筑信息模型的数据智能提取与显示系统及方法 |
CN110175151A (zh) * | 2019-05-22 | 2019-08-27 | 中国农业科学院农业信息研究所 | 一种农业大数据的处理方法、装置、设备和存储介质 |
CN110458956A (zh) * | 2019-07-11 | 2019-11-15 | 中国铁路设计集团有限公司 | 一种基于组件库的任意截面建立bim模型的方法 |
CN110533112B (zh) * | 2019-09-04 | 2023-04-07 | 天津神舟通用数据技术有限公司 | 车联网大数据跨域分析融合方法 |
CN110769037B (zh) * | 2019-09-28 | 2021-12-07 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 嵌入式边缘计算平台资源配置方法 |
CN110879907A (zh) * | 2019-11-15 | 2020-03-13 | 上海宝冶集团有限公司 | 一种bim模型协同创建方法 |
CN111125825B (zh) * | 2019-12-27 | 2023-03-31 | 北京建筑大学 | 古木建筑遗产智能化建模方法及装置 |
CN111310260A (zh) * | 2020-01-21 | 2020-06-19 | 中国建筑股份有限公司 | 基于分布式存储架构的bim模型版本存贮转换方法 |
CN111400430A (zh) * | 2020-03-11 | 2020-07-10 | 广联达科技股份有限公司 | 数字建筑清单计价中快速组价的方法及系统 |
CN113496554A (zh) * | 2020-04-01 | 2021-10-12 | 以见科技(上海)有限公司 | 一种建筑信息模型处理的方法及设备 |
CN111767288B (zh) * | 2020-07-30 | 2022-08-30 | 杭州正策信息科技有限公司 | 一种项目申报数据处理方法及装置 |
CN112818069B (zh) * | 2021-01-27 | 2021-09-07 | 中科雨辰科技有限公司 | 一种基于动态模型的编目数据采集系统 |
CN113127662A (zh) * | 2021-04-13 | 2021-07-16 | 广联达科技股份有限公司 | 构件搜索方法、装置、电子设备及可读存储介质 |
CN112948427B (zh) * | 2021-04-15 | 2024-02-06 | 深圳赛安特技术服务有限公司 | 数据查询方法、装置、设备及存储介质 |
CN113360997A (zh) * | 2021-07-13 | 2021-09-07 | 重庆长厦安基建筑设计有限公司 | 一种云-bim集成系统 |
CN113987626A (zh) * | 2021-09-29 | 2022-01-28 | 广州市盾建建设有限公司 | 一种可扩展的建筑全生命期bim建模方法 |
CN116226037A (zh) * | 2023-05-08 | 2023-06-06 | 山东同圆数字科技有限公司 | 基于Web的IFC格式数据明细动态提取方法及系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103955511B (zh) * | 2014-04-30 | 2017-02-15 | 华南理工大学 | 一种城市3d建筑数据的云平台数据组织和检索方法 |
US10035593B2 (en) * | 2015-04-06 | 2018-07-31 | Omniscience Corporation | Distributed drone flight path builder system |
CN108427696A (zh) * | 2017-08-12 | 2018-08-21 | 中民筑友科技投资有限公司 | 一种基于bim的设计文件的获取方法及装置 |
-
2018
- 2018-09-18 CN CN201811085285.8A patent/CN109344223B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN109344223A (zh) | 2019-02-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109344223B (zh) | 一种基于云计算技术的建筑信息模型管理系统及方法 | |
US11899681B2 (en) | Knowledge graph building method, electronic apparatus and non-transitory computer readable storage medium | |
KR102089100B1 (ko) | 이미지 데이터베이스 기반 상호인식차를 최소화하는 인테리어 서비스 제공 시스템 | |
CN110019616B (zh) | 一种poi现势状态获取方法及其设备、存储介质、服务器 | |
CN112131449B (zh) | 一种基于ElasticSearch的文化资源级联查询接口的实现方法 | |
CN102236544B (zh) | 一种皮肤设计方法及装置 | |
CN104272302A (zh) | 交互式查询完成模板 | |
CN105528418B (zh) | 一种设计文档生成方法及装置 | |
CN109902126B (zh) | 支持hive自动分区的加载系统及其实现方法 | |
CN110716952A (zh) | 一种多源异构数据处理方法、装置和存储介质 | |
CN111061756B (zh) | 数据平台、数据处理方法及电子设备 | |
CN113010476B (zh) | 元数据查找方法、装置、设备及计算机可读存储介质 | |
CN105007314A (zh) | 面向海量读者阅读数据的大数据处理系统 | |
CN103914488A (zh) | 文档的采集、标识、关联、搜索及展现的系统 | |
CN115510249A (zh) | 一种知识图谱的构建方法及装置、电子设备、存储介质 | |
US10275462B2 (en) | Automatic translation of string collections | |
CN113962597A (zh) | 一种数据分析方法、装置、电子设备及存储介质 | |
CN113360473A (zh) | 一种面向医学检验图像大数据的云存储计算系统 | |
CN109063059A (zh) | 行为日志处理方法、装置及电子设备 | |
JP2016170515A (ja) | ソフトウェア自動構成装置、ソフトウェア自動構成方法およびソフトウェア自動構成プログラム | |
CN113326345A (zh) | 基于动态本体的知识图谱分析、应用方法、平台及设备 | |
CN113722337B (zh) | 业务数据确定方法、装置、设备及存储介质 | |
CN112000669B (zh) | 一种环境监测数据的处理方法、装置、存储介质及终端 | |
KR20200103133A (ko) | 하둡 기반의 빅데이터 시스템에서 etl 절차를 수행하는 방법 및 장치 | |
CN111813555B (zh) | 基于互联网技术的超融合基础架构分层资源管理系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |