矢量数据存储模型

2024-08-23

矢量数据存储模型(精选7篇)

矢量数据存储模型 篇1

1 引 言

随着全球信息技术的迅猛发展, 计算机网络技术越来越成熟, 网络上信息的规模正在以指数趋势上升。整个互联网每天都会产生海量的网页数据, 所以怎样高效地对海量网页数据进行存储已经成为人们越来越关注的问题。

传统的网页数据存储模型, 基于单机的或者集中式的存储方式已经不再适合于大规模网页数据存储[4]。最近几年, 云计算的概念越来越流行。云计算作为一种新的商业模式, 是由分布式处理, 并行处理和网格计算发展形成的。目前, 谷歌, 亚马逊, IBM, 微软, Sun等IT巨头都在寻求开发云计算的技术和产品[5]。例如, 谷歌一直 致力于推 动基于GFS[1]、MapReduce[2]和Bigtable[3]等的应用。

传统的集中式的存储方法由于每个存储节点的缺陷, 在存储和管理海量网页数据 ( TB级甚至是PB级) 的时候会出现很多的限制。比如用户会经常发现, 网页数据请求是很耗时的, 网页数据存储能力是有限的, 网页数据读取过程是低效率的。

为此, 本文设计并实现了一种基于云计算的存储模型, 该存储模型主要采用的技术有: Zookeeper[8]开源的同步协同系统确保文件数据写入的一致性、基于hadoop的HDFS文件系统以及基于HDFS文件系统的HBase等技术[8~10]确保实时、高效、稳定、可靠地读写和访问网页数据, 此外由于本文设计的存储模型是利用大量廉价的计算机组成的, 所以存储模型的成本较低。

2 相关的研究工作

文献[4]对海量视频网页数据的存储问题进行了研究, 提出了基于HDFS的HBase的存储框架, 也介绍了HDFS、hbase等技术的基本工作原理和工作特点; 文献[5]提出了一个基于开源的分布式网页数据库服务系统的云存储解决方案 , 它遵循一个阶层设计, 包括Web服务前端, 变换处理层和网页数据存储层; 文献[6]介绍了云计算和云存储的概念以及云存储的架构。然后, 分析了云网页数据存储技术 - GFS ( 谷歌文件系统) / HDFS ( Hadoop分布式文件系统) 应用于具体企业的例子; 文献[7]提出了一种高效的云存储模式, 用于异构云基础设施的存储; 文献[14]介绍了一个基于开源数据库的云存储系统, 阐述了相关技术和原理, 最终页实现了原型系统的架构; 文献[15]针对海量电网数据进行分析和设计出了基于hadoop的云存储模型架构; 文献[11]对Hadoop的基本原理和工作过程做了研究, 使用Hadoop分布式集群技术对分布式海量网页数据存储系统进行了相关的研究与设计, 作了一些有益的尝试和探索; 文献[12]也分析了海量网页数据存储问题, 怎样在电子商务环境下存储海量网页数据, 他们的想法是使用开源的基于Hadoop的分布式存储系统, 并在此基础上提出一种网页数据存储模型, 实现了电子商务海量网页数据的存储; 文献[13]研究并设计了海洋数据存储的一个管理系统, 使用了Hadoop技术, 同时也引入了HBase分布式网页数据库对海洋数据进行存储。

以上的这些研究者研究和分析了怎么存储海量网页数据, 并提出了一些适合各自领域的存储方法, 也对海量数据的计算问题进行了研究, 通过研究对比, 发现他们的研究中存在着一些不足:

( 1) 很多的研究者没有使用Hbase数据库, 读写效率低, 在扩展性、稳定性和可靠性方面都有所不足。

HBase是一个在HDFS文件系统之上运行的开源网页数据库, 它的优势就是能够支持海量网页数据实时高效地对其进行访问与存储, 此外它还是一个面向列的网页数据库, 具有很好的可扩展性、稳定性与可靠性。

( 2) 缺少Zookeeper同步协调工作系统, 不能保持存储节点中的数据写入的一致性。

Zookeeper是Google的Chubby一个开源的实现, 是高有效和可靠的协同工作系统, Zookeeper能够用来leader选举, 配置信息维护等, 在一个分布式的环境中, 需要一个Master实例或存储一些配置信息, 确保文件写入的一致性等。

( 3) 没有针对特定领域的海量数据进行存储的模型。

一般的存储模型都不是通用的, 设计应用到特定领域的模型才更加具有专业性和实用性。

为此, 本文在设计海量网页的云存储模型时, 引入基于HDFS的HBase数据库实现底层的存储架构, 达到高效实时有效的读写海量网页数据, 最后本文实现了一种基于云计算技术的海量网页数据存储模型。

3 存储模型的设计

海量网页数据有很多种形式, 有结构化的网页数据, 比如海量的文本数据, 还有非结构化的网页数据, 比如图片、视频、超媒体数据等等。由于HBase数据库存储的网页数据在默认的情况下都是字符串类型的, 所以对于海量结构化的文本数据, 我们就可以直接存储其对应的字符串, 以文件形式直接存储在HDFS中, 然后在Hbase中建立相应的元数据信息表和地址信息表, 这样做也是因为这样做更有利于表述内容信息和便于查询。

在此基础上, 针对不同类型的网页数据信息, 还可以对他们进行划分不同的次服务器进行存储, 例如建立专门的图片和视频次服务器、文本次服务器等。本文设计的存储模型如图1所示。

本文设计的存储模型最主要的组成部分是HDFS和HBase。

本文设计的针对海量网页数据的存储模型有一张网页数据表需要存储: 它所存储的内容包括crawldb: Nutch爬行的网页数据库, 用来存储爬虫需要爬行的URL地址、linkdb: URL超链接网页数据库, 它是用来存储每个URL超链接的链接地址, 包括初始的源地址和链接地址、segments: 被Nutch爬虫爬取的URL地址被称为一个独立的单元, 而一个segment就是一个独立的单元、indexs: 采用Lucene建立的索引、index: 建立的索引片段。

在如图2的存储模型的实现过程中, 关键的问题是如何对Nutch爬取到的网页数据进行存储、读写以及最后用户的查询。因为HDFS是擅长存储大型文件的, 所以对大量的小文件进行处理、索引和存储的效率是不高的。造成这一现象的原因是HDFS将文件系统全部存入Namenode结点的内存中, 因为每个集群中的Namenode结点只有一个, 它的内存容量是有限的, 所以如果存入的文件数目过多的话, HDFS很难及时的处理和存储。另一个问题是HDFS不允许修改文件的内容, 只能在文件中添加新的内容。

我们知道基于HDFS的HBase数据库是基于列的, 其中存储的网页数据表是由一个KEY/VALUE键值对和无限数量的列族组成的。这样的话, 在Nutch搜索引擎使用的过程中我们可以随时添加新的列, 这样就避免了修改表的结构。

综上所述, 如果我们将Nutch爬虫爬取回来的海量网页数据存入到HBase数据库中, 这样就能够有效地解决这个问题。

4 存储模型的实现

在实验室搭建了由三台相同配置的普通计算机服务器组成的Hadoop分布式集群, 经过多次实验比较了一台服务器节点组成的单机环境下运行和由三台服务器组成的三个节点hadoop分布式运行环境下写入网页数据和读取网页数据所用的时间关系。

图3显示了分别在单机运行的环境下和在三台服务器组成的hadoop集群环境下运行与不同线程个数的写入网页数据的时间关系。从图中可以看出, 集群中同时运行的线程越多, 写入网页数据所需要的时间明显低于单机情况下写入网页数据所需要的时间, 由此可见该存储模型具有高效的写入性。

图4显示了分别在单机和集群环境下同时运行的线程个数不同的情况下读取网页数据的时间关系。从图中可以看出, 随着集群中同时运行的线程数的增加, 集群的读取网页数据时间明显低于单机情况下读取网页数据的时间。由此可以发现本文设计的存储模型具有高效的读取性。

如图5所示, 读取网页数据所花的时间与集群中的节点数成反比, 计算机节点数增加, 读取网页数据的耗时减少, 由此验证了集群的扩展性比较好。

5 结束语与展望

本文设计的海量网页数据存储模型是建立在大量廉价的计算机之上的, 所以只要花很小的成本可以有效地存储海量的网页数据, 同时本文设计的存储模型有较强的扩展性, 通过增加机器节点, 可以在更大网页数据量的环境下运行。

本存储模型也有其不足之处, 整个集群的效率只有在节点数达到很庞大的时候才能真正的体现出来, 由于实验室设备的有限, 还有更多的实验需要进行测试, 这也是下一步的研究内容, 同时随着基于Hadoop平台和HBase分布式网页数据库的应用越来越多, Hadoop和HBase的存储性能方面需要进一步的改进, 这就需要我们更深入的研究和探索。

矢量数据存储模型 篇2

数据库建库过程中, ARCGIS桌面产品已经成为处理基础地理信息数据的首选工具。数据处理工作中经常涉及批量裁剪的内容, 现在处理的方法一般有几种:数据量较小时可以采取手工裁剪, 如ARCGIS编辑器里的Clip命令;单区域裁剪有ARCGIS的裁剪 (Clip) 、分割 (Split) 等工具可供使用;编写专门的脚本工具进行批量处理等。这些处理方法的主要问题是不适合海量数据作业, 而封装的脚本工具屏蔽了中间过程, 实际应用的数据都是存在一定问题并各有特点的, 如果对数据情况了解不够深入, 出现问题就不容易解决。大量的工作经验表明, 批处理+人工干预的方法既自动完成数据处理工作, 减少了大量的重复工作, 提高了工作效率, 又能全程跟踪数据情况, 处理出现的各种问题。本文提出了一种利用ARCGIS的模型构建器工具批量裁剪矢量数据的方法。

1 模型构建器的作用

ARCGIS的模型构建器 (model builder) 是一个用来创建、编辑和管理模型的应用程序, 用于创建和运行包含一系列工具的工作流。模型是将一系列地理处理工具串联在一起的工作流, 它将其中一个工具的输出作为另一个工具的输入。也可以将模型构建器看成是用于构建工作流的可视化编程语言。模型构建器除了有助于构造和执行简单工作流外, 还能通过创建模型并将其共享为工具提供扩展ARCGIS功能的高级方法。模型构建器甚至还可用于将ARCGIS与其他应用程序进行集成。ARCGIS 10及之后的版本对模型构建器做了显著的增强和长足的改进, 专门为模型构建器设计了一系列新工具, 共分为2个基本类别:迭代器工具和仅模型工具。其中新增了12个迭代器, 用于迭代模型中的重复任务, 取代了旧版本的“模型属性”中的“系列”选项, 其中10个迭代器可作为地理处理工具来实现。迭代器在批量裁剪矢量中起到了重要作用:一方面对被裁剪要素进行迭代, 无需各个图层一一裁剪;另一方面对裁剪要素 (裁剪框) 进行迭代, 无需对每个裁剪框都执行裁剪。

2 以批量裁剪地形图分幅图为例, 详解实现批量裁剪矢量数据步骤

(1) 数据准备:新建以各个图幅号命名的空数据库。

(2) 单图框裁剪:单个图框裁剪各个地形图要素图层, 并存入相应图幅号的数据库。

(3) 重复执行 (2) , 实现各个图框分别裁剪完成。具体作业过程如图1所示。

2.1 新建空数据库

为了存储后续过程产生的裁剪要素数据, 需要为每个图幅新建空数据库, 并以图幅号命名数据库。图幅号存储在裁剪字段里, 需要读出该字段值并使用。此过程用到ARCGIS工具箱的“创建文件地理数据库”工具 (Create File GDB_management) , 并指定存储图幅号的字段、新建数据库存储路径作为该工具的参数。此处用到了模型构建器的一种迭代工具:迭代要素选择。该迭代工具会遍历输入要素类的每一个要素, 对其执行创建文件地理数据库的操作, 省去选择每个要素的过程, 提高了效率。图2演示了这个过程的模型构建器设计。

2.2 单图框裁剪地形图要素数据库

各个地形图要素类存储在同一个工作空间里。对该工作空间的每个要素类用同一图框进行裁剪, 裁剪结果存储至图幅号对应的空数据库中。用模型构建器的“迭代要素类”工具遍历工作空间里的每个地形要素类进行裁剪。裁剪要素的过程利用ARCGIS工具箱的分析工具:裁剪 (Clip_analysis) , 并指定地形要素类为输入要素参数, 图框为裁剪要素参数, 存储至以图幅号命名的数据库内。裁剪后的要素的名称、属性结构、坐标系与输入工作空间完全一致。图3演示了这个过程的模型构建器设计。

2.3 各个图框分别裁剪

对每个图框重复2.2的过程, 实现对每个图幅都进行裁剪, 此时需要用到模型构建器的“迭代要素选择”工具, 各图框存储在一个要素类中, 对各个图框进行迭代, 依次对地形数据库进行裁剪, 结果存储至图幅号命名的数据库中。图4演示了这个过程的模型构建器设计, 图中“裁剪单幅图”工具即是2.2的过程, 已经被制作成了ARCGIS工具, 可以像其他工具一样被调用。

3 ARCGIS 环境下批量裁剪的具体实现

以上3个步骤可以分别单独用模型构建器实现, 直接保存为ARCGIS工具, 和其他工具箱里的工具一样使用, 也可以保存为Phthon脚本, 独立运行或者嵌入其他程序。具体实施批量裁剪时, 按顺序执行3个工具, 每一个环节出问题都可以在ARCGIS的结果对话框查看, 其中的“消息”一栏记录了工具运行的具体情况。

另一种具体实现方法是把3个过程依次连接起来, 保存为一个工具。这种方法的优点是封装流程, 无需考虑中间过程。缺点则是出现问题时不方便查看和解决。

4 工具运行中经常遇到的问题及解决方法

被裁剪的地形要素数据库、存储图框的要素类都不能存在几何问题, 包括短线段、空几何、不正确的环走向、不正确的线段方向、面自相交、非闭合环、重复折点、不连续的部分等问题。可以在批量裁剪前使用ARCGIS工具箱的检查几何工具 (Check Geometry_management) 和修复几何工具 (Repair Geometry_management) 解决这一问题, 当然也可以手工修复。如果输入数据未经修复, 会出现裁剪失败、无法输出的错误。

存储图框图幅号的字段值不能太长。新建空数据库时以图幅号作为数据库名, 不能包含以下字符:/:*?’”<>等。可以在批量裁剪前事先检查图幅号字段值, 保证其正确性。出于实际的需要, 图框要素类在裁剪前最好进行拓扑检查, 以免出现相邻图框间存在缝隙或相互压覆的情况, 这些情况虽然不影响裁剪的过程, 但裁剪结果不符合实际应用的需要。这些检查可以事先手工进行, 也可以编写工具实现。

各个输入数据的坐标系统需要保持一致, 如不一致可能导致裁剪结果为空。

5 结语

以ARCGIS模型构建器为基础建立的批量裁剪工具已经在实际工作中使用, 主要用于裁剪分幅地形图、数据分发、数据分布等, 可以裁剪点状、线状、面状、注记等要素类, 具有裁剪速度快、无碎片、日志完整可供查阅的特点。

本文的批量裁剪是以文件地理数据 (File GDB) 库为例, 实际工作中可能涉及其他数据格式, 如SHAPE、Personal GDB、栅格图像等。同样, 裁剪图框也可以是其他多种格式, 可以进一步研究其他格式数据的批量裁剪方法。

参考文献

[1]倪锡春, 范园园, 陈永良.基于Model Bulider的城市部件数据建库[J].城市勘测, 2013 (8) :45-48.

矢量数据存储模型 篇3

根据铁路工程建设信息化总体方案的部署, 以及中国铁路总公司建设管理信息化要求, 在铁路BIM标准框架指导下, 在IFC4×1的基础上进行扩展, 制定了本标准。

本标准涵盖铁路通信、信号、电力变电、接触网4个专业领域。

本标准由铁路BIM联盟负责解释。在使用本标准过程中如发现需要修改和补充之处, 请及时将意见反馈给铁路BIM联盟。

本标准主编单位及人员

中铁第一勘察设计院集团有限公司:

魏州泉、任晓春、张峰、闫鹏、李志彪、王嘉、杨长辉、朱铁栓、宋元斌、郭世勇、王朝存、肖志强、路长平、金光、郝帅、冯亦博、赵乐、宫衍圣、黄文勋、张学武、王继来、魏佳良、刘彦明、许兴旺、魏方华、王鹏、徐博、张生延、周福军、靳猛、王玮

本标准参编单位及人员

中国铁路总公司工程管理中心:

盛黎明、沈东升、刘延宏、陈亮、王江、索宁、陈云、李慧

中国铁道科学研究院:

史天运、王万齐、王辉麟、解亚龙、郭歌、卢文龙、冯云梅、梁策、王楠、牛宏睿、张松峰、郝蕊、刘北胜、钱进、张静涵、刘雨娜、朱亚静、徐晓磊、智鹏、陈杰、王超、鲍榴

中国中铁二院工程集团有限责任公司:

周建、董凤翔、李朝阳、张毅、杨佳、麦洋、王彦哲、邵岩、叶明珠、朱聪、吴桦林、郑毅、胡水、袁蕾、梁莹

铁道第三勘察设计院集团有限公司:

李华良、杨绪坤、刘航、刘新宇、车爽、郑新新、江传东、张妍君、柴天娇、张文利、辛宇、苗桦、卢静、赵飞飞、姚峰峰、苏林、武长海、侯震宇、彭良勇、马静波、陈兴强、何永发、罗健

中铁第四勘察设计院集团有限公司:

张颋、孙建明、吴华丹、吴杰、张雷、石瑞霞、刘畅、李红梅、周洁云、刘继洲、刘正自、卫旭初、沈志淩、许永宏

中建交通建设集团有限公司:

王永义、张坤、黄鑫

目录

1总则

1.1编制原则

本标准的编制遵循以下原则:

(1) 兼容性原则。本标准与building SMART组织已发布的IFC (Industry Foundation Class) 标准保持最大限度的兼容。

(2) 可移植性原则。本标准仅规范铁路四电工程领域的基础数据模型。该数据模型中的元素可以被不同技术平台的不同编码方式使用。

(3) 抽象性原则。本标准仅定义在国内外广泛应用, 且被整个领域共同认知与接受的重要铁路四电工程元素, 以使本标准的固定模型最小化。

(4) 可扩展性原则。本标准可与具体的信息分类、编码、字典相结合、对本标准定义的元素进行进一步“修饰”或限度, 而不扩大和改变元素的基本含义, 从而满足特定用户的信息存储与交换需求。

(5) 可选择性原则。本标准中定义的任何元素在信息存储与交换需求中都是可选的。

(6) 可重复性原则。本标准中定义的任何元素在数据交换与存储的应用中都是可重复的。

(7) 易用性原则。本标准提供标准作者之间、作者与软件开发人员之间描述标准的形式化文件与可读性文件, 从而不给相关人员增加过多的工作负担。

1.2编制范围

本标准目前涵盖铁路通信、信号、电力变电、接触网专业领域。

1.3适用范围

本标准适用于铁路工程BIM实施标准制定、铁路BIM软件研发和铁路BIM应用研究。

1.4引用规范

本标准引用以下标准和规范:

GB/T 16656.1—2008工业自动化系统与集成产品数据表达与交换第1部分:概述与基本原理 (ISO 10303—1:1994) 。

GB/T 16656.11—2010工业自动化系统与集成产品数据表达与交换第11部分:描述方法:EXPRESS语言参考手册 (ISO 10303—11:2004) 。

GB/T 16656.21—2008工业自动化系统与集成产品数据表达与交换第21部分:实现方法:交换文件结构的纯正文编码 (ISO 10303—21:2002) 。

ISO 16739:2013工业基础类平台规范。

building SMART Industry Foundation Classes IFC4x1。

2术语和缩略语

2.1术语

下列术语适用于本标准:

实体 (entity) :表示具有共同特性的概念或物理对象的一类集合。

属性 (attribute) :对实体特性的抽象描述。

直接属性 (direct attribute) :对实体特征进行直接描述的信息单元。

反向属性 (inverse attribute) :定义获取关联实体的信息单元, 以保证参照完整性。

衍生属性 (derived attribute) :从其他属性计算得到的信息单元。

属性集 (property set) :属性的集合。

模式 (schema) :构造部分或全部模型的数据项的集合。

信息模型 (information model) :某领域概念及关系的一种抽象的数据语言表达。

空间结构单元 (spatial structure element) :通常表示物体的空间主体及其主要组成结构。

空间组成 (spatial composition) :指空间结构单元之间部分与整体间的组成关系。

空间分解 (spatial decomposition) :指空间结构单元间整体与部分间的分解关系。

空间包含 (spatial containment) :指空间结构单元包含实体的关系。

被空间包含 (contained in spatial structure) :指实体被空间结构单元包含的关系。

实体组成 (entity composition) :指组合件包含实体的关系。

Express-G:EXPRESS语言的图形子集, 用图形化的方法描述概念与概念之间的关系。

2.2缩略语

下列缩略语适用于本标准。

AEC/FM:Architecture, Engineering, Construction and Facilities Management/建筑、设计、施工和设备管理。

BIM:Building Information Modeling/建筑信息模型。

IFC:Industry Foundation Classes/工业基础类。

HVAC:Heating, Ventilation and Air Conditioning/暖通空调。

XML:Extensible Markup Language/可扩展标记语言。

3铁路四电工程信息模型基础数据体系结构

3.1铁路四电工程信息模型基础数据体系结构

铁路四电工程信息模型基础数据体系结构是在IFC4和铁路工程信息模型数据存储标准1.0版的基础上, 根据铁路四电工程的特点及需求进行扩展。为了维持IFC标准的可延续性, 在扩充过程中遵循了以下扩展原则:

(1) 四电专业在领域层、共享层做扩展, 不增加新领域。

(2) 主要利用既有实体进行扩展。

(3) 主要通过增加属性或预定义类型来扩充实体。

(4) 当以上两点都不能满足需要时, 增加新实体, 并增加相应的通用属性类。

根据上述原则进行扩展, 如图3.1所示。在资源层 (Resource Layer) 、核心层 (Core Layer) 没有扩展。在领域层 (Domain Layer) 的电气领域 (Electrical Domain) 和建筑控制领域 (Building Controls Domain) 、共享层 (Interop Layer) 根据四电专业特点新增和扩展了一些实体。

3.2铁路四电工程空间结构组成

铁路四电工程空间结构组成如图3.2所示。在铁路车站 (IfcRailway Sation) 下面包含多个配送系统 (Ifc Distribution System) 。配送系统可以是通信、信号、接触网、电力或者变电系统。

图3.3是IFC4中一个配电系统的电路图, 铁路四电系统基本上和该系统类似。一个配送系统 (Ifc Distribution System) 通过Ifc Rel Aggregates包含多个子配送系统, 配送系统内部通过Ifc Rel Assigns To Group包含多个设备、接线盒和线缆, 设备和线缆通过Ifc Rel Nests包含多个端口;端口之间通过Ifc Rel Connects Ports关联。

4铁路四电工程公用

铁路四电工程信息模型基础数据架构由配送系统 (Ifc Distribution System) 、配送构件 (Ifc Distribution Element) 以及配送接口 (Ifc Distribution Port) 等组成。

其中, 部分铁路四电工程公用构件或零部件采用原IFC4中已有类型或已有类型的枚举项, 部分构件通过增加类型或枚举项的方式进行扩展, 具体如下:

(1) 铁路四电工程公用部分参见本标准第4章节。

(2) 灯具采用IFC4中Ifc Lamp和Ifc Light Fixture类型。

(3) 电容采用IFC4中Ifc Electric Flow Storage Device类型。

(4) 继电器采用IFC4中Ifc Electric Time Control类型。

(5) 报警器采用IFC4中Ifc Alarm类型。

(6) 接线盒/箱采用IFC4中Ifc Junction BoxDATA或POWER。

(7) 端口采用IFC4中Ifc Distribution Port类型。

(8) 电缆井采用IFC4中Ifc Distribution Chamber ElementMANHOLE。

(9) 基础采用IFC4中Ifc Footing类型。

(10) 立柱采用IFC4中Ifc Column类型。

(11) 电缆槽采用IFC4中Ifc Cable Carrier SegmentCABLETRUNKINGSEGMENT。

(12) 过轨管采用IFC4中Ifc Cable Carrier SegmentCONDUITSEGMENT。

(13) 桥架采用IFC4中Ifc Cable Carrier SegmentCABLELADDERSEGMENT。

(14) 走线架采用IFC4中Ifc Cable Carrier SegmentCABLETRAYSEGMENT。

(15) 配线模块采用IFC4中Ifc Cable Fitting, 并新增预定义类型。

(16) 电缆段、绞线段、贯通地线采用IFC4中Ifc Cable Segment, 并增加预定义类型。

(17) 熔断器、断路器采用IFC4中Ifc Protective Device, 并增加预定义类型。

(18) 配电箱、配电板采用IFC4中Ifc Electric Distribution Board, 并增加预定义类型。

(19) 变压器、整流器采用IFC4中Ifc Transformer类型, 并增加预定义类型。

(2 0) 不间断电源设备采用I F C 4中采用I f c E l e c t r i c F l o w S t o r a g e D e v i c eU P S, 蓄电池采用Ifc Electric Flow Storage DeviceBATTERY, 并增加预定义类型。

(21) 开关电源采用IFC4中Ifc Electric Flow Storage Device类型, 并增加预定义类型。

(22) 设备柜 (Ifc Device Cabinet) 为新增实体, 继承自流终端 (Ifc Flow Terminal) 。主要包括:箱合、方向盒、防护盒、分线盘、接口柜、轨道柜、通信机柜等。

(23) 绝缘装置 (Ifc Insulation Device) 为新增实体, 继承自流处理设备 (Ifc Flow Treatment Device) 。

(24) 防雷设施 (Ifc Lightning Protection) 为新增实体, 继承自流控制器 (Ifc Flow Controller) 。

(25) 接地装置 (Ifc Ground Device) 为新增实体, 继承自流控制器 (Ifc Flow Controller) 。

电缆槽、电缆井和过轨管的连接关系示意如图4.1所示, 电缆槽、电缆井与过轨管配送系统的连接关系如图4.2所示, 四电公用EXPRESS-G如图4.3所示。

4.1公用类型

4.1.1电缆桥架段类型 (Ifc Cable Carrier SegmentType Enum)

Ifc Cable Carrier Segment Type Enum是电缆桥架段类型枚举, 从功能的角度定义电缆桥架段的类型。该类是IFC4的现有类, 四电专业在现有的基础上进行扩充。

现有枚举项定义:

CABLELADDERSEGMENT:电缆梯架段;

CABLETRAYSEGMENT:电缆托架段;

CABLETRUNKINGSEGMENT:电缆槽段;

CONDUITSEGMENT:导管段 (过轨管) ;

USERDEFINED:用户自定义;

NOTDEFINED:未定义。

新增枚举项定义:

CANTILEVER:腕臂;

SUPPORTOR:肩架。

EXPRESS描述:

TYPE Ifc Cable Carrier Segment Type Enum=ENUMERATION OF

(CABLELADDERSEGMENT,

CABLETRAYSEGMENT,

CABLETRUNKINGSEGMENT,

CANTILEVER,

CONDUITSEGMENT,

SUPPORTOR,

USERDEFINED,

NOTDEFINED) ;

END_TYPE;

4.1.2电缆段类型 (Ifc Cable Segment Type Enum)

Ifc Cable Segment Type Enum是电缆段类型枚举, 从功能的角度定义电缆段的类型。该类是IFC4的现有类, 四电专业在现有的基础上进行扩充。

现有枚举项定义:

BUSBARSEGMENT:母线段;

CABLESEGMENT:电缆段;

CONDUCTORSEGMENT:导体段;

CORESEGMENT:核心段;

USERDEFINED:用户自定义;

NOTDEFINED:未定义。

新增枚举项定义:

INTEGRATEDGROUNDINGWIRESEGMENT:综合贯通地线;

STRANDEDSEGMENT:绞线段。

EXPRESS描述:

TYPE Ifc Cable Segment Type Enum=ENUMERATION OF

(BUSBARSEGMENT,

CABLESEGMENT,

CONDUCTORSEGMENT,

CORESEGMENT,

INTEGRATEDGROUNDINGWIRESEGMENT,

STRANDEDSEGMENT,

USERDEFINED,

NOTDEFINED) ;

END_TYPE;

4.1.3保护设备类型 (Ifc Protective Device Type Enum)

Ifc Protective Device Type Enum是保护设备类型枚举, 从功能的角度定义保护设备的类型。该类是IFC4的现有类, 四电专业在现有的基础上进行扩充。

现有枚举项定义:

CIRCUITBREAKER:断路器;

EARTHLEAKAGECIRCUITBREAKER:地漏断路器;

EARTHINGSWITCH:接地开关;

FUSEDISCONNECTOR:熔断器;

RESIDUALCURRENTCIRCUITBREAKER:漏电断路器;

RESIDUALCURRENTSWITCH:漏电开关;

VARISTOR:变阻器 (防雷单元) ;

USERDEFINED:用户自定义;

NOTDEFINED:未定义。

新增枚举项定义:

POINTMACHINEPROTECTION:转辙机保护器;

RESISTOR:电阻;

SWITCHINGCABINET:开关柜。

EXPRESS描述:

TYPE Ifc Protective Device Type Enum=ENUMERATION OF

(CIRCUITBREAKER,

EARTHLEAKAGECIRCUITBREAKER,

EARTHINGSWITCH,

FUSEDISCONNECTOR,

POINTMACHINEPROTECTION,

RESIDUALCURRENTCIRCUITBREAKER,

RESIDUALCURRENTSWITCH,

RESISTOR,

VARISTOR,

SWITCHINGCABINET,

USERDEFINED,

NOTDEFINED) ;

END_TYPE;

4.1.4配电板卡类型 (Ifc Electric Distribution Board Type Enum)

Ifc Electric Distribution Board Type Enum是配电板卡类型枚举, 从功能的角度定义配电板的类型。该类是IFC4的现有类, 四电专业在现有的基础上进行扩充。

现有枚举项定义:

CONSUMERUNIT:配电箱;

DISTRIBUTIONBOARD:配电板;

MOTORCONTROLCENTRE:电机控制中心;

SWITCHBOARD:开关板;

USERDEFINED:用户自定义;

NOTDEFINED:未定义。

新增枚举项定义:

POWERBOARD:电源板卡;

DATABOARD:数据板卡。

EXPRESS描述:

TYPE Ifc Electric Distribution Board Type Enum=ENUMERATION OF

(CONSUMERUNIT,

DATABOARD,

DISTRIBUTIONBOARD,

MOTORCONTROLCENTRE,

POWERBOARD,

SWITCHBOARD,

USERDEFINED,

NOTDEFINED) ;

END_TYPE;

4.1.5电缆配件类型 (Ifc Cable Fitting Type Enum)

Ifc Cable Fitting Type Enum是线缆配件设备类型枚举, 从功能的角度定义各类线缆配件设备的类型。该类是IFC4的现有类, 四电专业在现有的基础上进行扩充。

现有枚举项定义:

CONNECTOR:用户自定义;

ENTRY:用户自定义;

EXIT:用户自定义;

JUNCTION:用户自定义;

TRANSITION:用户自定义;

USERDEFINED:用户自定义;

NOTDEFINED:未定义。

新增枚举项定义:

TERMINALMOUDULE:配线模块。

EXPRESS描述:

TYPE Ifc Cable Fitting Type Enum=ENUMERATION OF

(CONNECTOR,

ENTRY,

EXIT,

JUNCTION,

TERMINALMOUDULE,

TRANSITION,

USERDEFINED,

NOTDEFINED) ;

END_TYPE;

4.1.6变压器类型 (Ifc Transformer Type Enum)

Ifc Transformer Type Enum是保护设备类型枚举, 从功能的角度定义电能变换设备的类型。该类是IFC4的现有类, 四电专业在现有的基础上进行扩充。

现有枚举项定义:

CURRENT:变流器;

FREQUENCY:变频器;

INVERTER:逆变器;

RECTIFIER:整流器;

VOLTAGE:变压器;

USERDEFINED:用户自定义;

NOTDEFINED:未定义。

新增枚举项定义:

LIGHTINGUNIT:点灯单元。

EXPRESS描述:

TYPE Ifc Transformer Type Enum=ENUMERATION OF

(CURRENT,

FREQUENCY,

INVERTER,

LIGHTINGUNIT,

RECTIFIER,

VOLTAGE,

USERDEFINED,

NOTDEFINED) ;

END_TYPE;

4.1.7设备柜 (Ifc Device Cabinet Type Enum)

Ifc Device Cabinet Type Enum是设备柜类型枚举, 从功能的角度定义设备柜的类型。

新增枚举项定义:

BOX:箱盒;

CABINET:机柜;

USERDEFINED:用户自定义;

NOTDEFINED:未定义。

EXPRESS描述:

TYPE Ifc Device Cabinet Type Enum=ENUMERATION OF

(BOX,

CABINET,

USERDEFINED,

NOTDEFINED) ;

END_TYPE;

4.1.8绝缘装置类型 (Ifc Insulation Device Type Enum)

Ifc Insulation Device Type Enum是绝缘装置类型枚举, 从功能的角度定义绝缘装置的类型。

新增枚举项定义:

AIRCORECOIL:空心线圈;

INSULATEDJOINT:绝缘节;

INSULATIONEQUIPMENT:绝缘器件;

INSULATOR:绝缘子;

USERDEFINED:用户自定义;

NOTDEFINED:未定义。

EXPRESS描述:

TYPE Ifc Insulation Device Type Enum=ENUMERATION OF

(AIRCORECOIL,

INSULATEDJOINT,

INSULATIONEQUIPMENT,

INSULATOR,

USERDEFINED,

NOTDEFINED) ;

END_TYPE;

4.1.9防雷设施类型 (Ifc Lightning Protection Type Enum)

Ifc Lightning Protection Type Enum是防雷设施类型枚举, 从功能的角度定义防雷设施的类型。

新增枚举项定义:

LIGHTNINGROD:避雷针;

LIGHTNINGSTRIP:避雷带;

USERDEFINED:用户自定义;

NOTDEFINED:未定义。

EXPRESS描述:

TYPE Ifc Lightning Protection Type Enum=ENUMERATION OF

(LIGHTNINGROD,

LIGHTNINGSTRIP,

USERDEFINED,

NOTDEFINED) ;

END_TYPE;

4.1.10接地装置类型 (Ifc Ground Device Type Enum)

Ifc Ground Device Type Enum是接地装置类型枚举, 从功能的角度定义接地装置的类型。

新增枚举项定义:

EARTHELECTRODE:接地极;

GROUNDBUS:接地母线;

GROUNDINGMODULE:接地模块;

IONELECTROD:离子接地极;

USERDEFINED:用户自定义;

NOTDEFINED:未定义。

EXPRESS描述:

TYPE Ifc Ground Device Type Enum=ENUMERATION OF

(EARTHELECTRODE,

GROUNDBUS,

GROUNDINGMODULE,

IONELECTROD,

USERDEFINED,

NOTDEFINED) ;

END_TYPE;

4.1.11报警设备类型 (Ifc Alarm Type Enum)

Ifc Alarm Type Enum是指不同种类报警设备的集合。该类是IFC4的现有类, 四电专业在现有的基础上进行扩充。

现有枚举项定义:

BELL:警铃;

BREAKGLASSBUTTON:击碎玻璃报警按钮;

LIGHT:视觉报警装置;

MANUALPULLBOX:手拉报警装置;

SIREN:声音报警装置;

WHISTLE:警笛;

USERDEFINED:用户自定义;

NOTDEFINED:未定义。

新增枚举项定义:

ALARMBUTTON:紧急报警装置。

EXPRESS描述:

TYPE Ifc Alarm Type Enum=ENUMERATION OF

(BELL,

BREAKGLASSBUTTON,

LIGHT,

MANUALPULLBOX,

SIREN,

WHISTLE,

ALARMBUTTON,

USERDEFINED,

NOTDEFINED) ;

END_TYPE;

4.1.12电流存储设备 (Ifc Electric Flow Storage Device Type Enum)

Ifc Electric Flow Storage Device Type Enum电流存储装置类型枚举。该类是IFC4的现有类, 四电专业在现有的基础上进行扩充。

现有枚举项定义:

BATTERY:电池;

CAPACITORBANK:电容器组;

HARMONICFILTER:谐波滤波器;

INDUCTORBANK:电感组;

UPS:不间断电源;

USERDEFINED:用户自定义;

NOTDEFINED:未定义。

新增枚举项定义:

SWITCHPOWERSUPPLY:开关电源。

EXPRESS描述:

TYPE Ifc Electric Flow Storage Device Type Enum=ENUMERATION OF

(BATTERY,

CAPACITORBANK,

HARMONICFILTER,

INDUCTORBANK,

UPS,

SWITCHPOWERSUPPLY,

USERDEFINED,

NOTDEFINED) ;

END_TYPE;

4.2公用实体

4.2.1流终端 (Ifc Flow Terminal)

4.2.1.1实体定义

由于在流终端下需要新增信号终端实体 (Ifc Signaling Terminal) 、设备柜实体 (Ifc Device Cabinet) 和信号机机构实体 (Ifc Signal Mechanisms) , 因此流终端需要被重新描述。

4.2.1.2属性定义

流终端保持原有的属性不做改变。

4.2.1.3 EXPRESS描述

ENTITY Ifc Flow Terminal

SUPERTYPE OF (ONEOF

(Ifc Air Terminal,

Ifc Audio Visual Appliance,

Ifc Communications Appliance,

Ifc Device Cabinet

Ifc Electric Appliance,

Ifc Fire Suppression Terminal,

Ifc Lamp,

Ifc Light Fixture,

Ifc Medical Device,

Ifc Outlet,

Ifc Sanitary Terminal,

Ifc Signal Mechanisms,

Ifc Signaling Terminal,

Ifc Space Heater,

Ifc Stack Terminal,

Ifc Waste Terminal) )

SUBTYPE OF (Ifc Distribution Flow Element) ;

END_ENTITY;

4.2.2设备柜 (Ifc Device Cabinet)

4.2.2.1实体定义

设备柜 (Ifc Device Cabinet) 是用于摆放设备的流终端设备。

4.2.2.2属性定义

Pre Defined Type:预定义类型。从功能类型上将设备柜进一步细分为机柜、箱盒等。

4.2.2.3 EXPRESS描述

ENTITY Ifc Device Cabinet

SUBTYPE OF (Ifc Flow Terminal) ;

Pre Defined Type:OPTIONAL Ifc Device Cabinet Type Enum;

WHERE

Correct Predefined Type:

NOT (EXISTS (Predefined Type) )

OR (Predefined Type<>Ifc Device Cabinet Type Enum.USERDEFINED)

OR

( (Predefined Type=Ifc Device Cabinet Type Enum.USERDEFINED)

AND EXISTS (SELFIfc Object.Object Type) ) ;

Correct Type Assigned:

(SIZEOF (Is Type By) =0)

OR

(‘IFCELECTRICALDOMAIN.IFCDEVICECABINETTYPE’

IN TYPEOF (SELFIfc Object.Is Type By[1].Relating Type) ) ;

END_ENTITY;

4.2.3流控制器 (Ifc Flow Controller)

4.2.3.1实体定义

由于在流控制器下需要新增信号中继器实体 (Ifc Signaling Relay) 、防雷设施 (Ifc Lightning Protection) 、接地装置 (Ifc Ground Device) , 因此流控制器需要被重新描述。

4.2.3.2属性定义

流控制器保持原有的属性不做改变。

4.2.3.3 EXPRESS描述

ENTITY Ifc Flow Controller

SUPERTYPE OF (ONE OF

(Ifc Air Terminal Box,

Ifc Damper,

Ifc Electric Distribution Board,

Ifc Electric Time Control,

Ifc Flow Meter,

Ifc Ground Device,

Ifc Lightning Protection,

Ifc Protective Device,

Ifc Signaling Relay,

Ifc Switching Device,

Ifc Valve) )

SUBTYPE OF (Ifc Distribution Flow Element) ;

END_ENTITY;

4.2.4流处理设备 (Ifc Flow Treatment Device)

4.2.4.1实体定义

由于在流处理设备下需要新增绝缘装置实体 (Ifc Insulation Device) , 因此流处理设备需要被重新描述。

4.2.4.2属性定义

流处理设备保持原有的属性不做改变。

4.2.4.3 EXPRESS描述

ENTITY Ifc Flow Treatment Device

SUPERTYPE OF (ONEOF

(Ifc Duct Silencer,

Ifc Filter,

Ifc Interceptor,

Ifc Insulation Device) )

SUBTYPE OF (Ifc Distribution Flow Element) ;

END_ENTITY;

4.2.5绝缘装置 (Ifc Insulation Device)

4.2.5.1实体定义

绝缘装置 (Ifc Insulation Device) 定义了接触网系统中带电体与其他设备或接地体保持电气绝缘的重要部件或构件。

4.2.5.2属性定义

Pre Defined Type:预定义类型。从结构形式上将绝缘装置进一步细分为空心线圈、绝缘节、绝缘器件、绝缘子、绝缘套管等。

4.2.5.3 EXPRESS描述

ENTITY Ifc Insulation Device

SUBTYPE OF (Ifc Flow Treatment Device) ;

Pre Defined Type:OPTIONAL Ifc Insulation Device Type Enum;

WHERE

Correct Predefined Type:

NOT (EXISTS (Predefined Type) )

OR (Predefined Type<>Ifc Insulation Device Type Enum.USERDEFINED)

OR

( (Predefined Type=Ifc Insulation Device Type Enum.USERDEFINED)

AND EXISTS (SELFIfc Object.Object Type) ) ;

Correct Type Assigned:

(SIZEOF (Is Type By) =0)

OR

(‘IFCELECTRICALDOMAIN.IFCINSULATIONDEVICETYPE’

IN TYPEOF (SELFIfc Object.Is Type By[1].Relating Type) ) ;

END_ENTITY;

4.2.6防雷设施 (Ifc Lightning Protection)

4.2.6.1实体定义

防雷设施 (Ifc Lightning Protection) 是用于减少闪击击于建 (构) 筑物上或建 (构) 筑物附近造成的物质性损害和人员伤亡的设施。

4.2.6.2属性定义

Pre Defined Type:预定义类型。从功能类型上将防雷设施进一步细分为避雷带、避雷针等。

4.2.6.3 EXPRESS描述

ENTITY Ifc Lightning Protection

SUBTYPE OF (Ifc Flow Controller) ;

Pre Defined Type:OPTIONAL Ifc Lightning Protection Type Enum;

WHERE

Correct Predefined Type:

NOT (EXISTS (Predefined Type) )

OR (Predefined Type<>Ifc Lightning Protection Type Enum.USERDEFINED)

OR

( (Predefined Type=Ifc Lightning Protection Type Enum.USERDEFINED)

AND EXISTS (SELFIfc Object.Object Type) ) ;

Correct Type Assigned:

(SIZEOF (Is Type By) =0)

OR

(‘IFCELECTRICALDOMAIN.IFCLIGHTNINGPROTECTIONTYPE’

IN TYPEOF (SELFIfc Object.Is Type By[1].Relating Type) ) ;

END_ENTITY;

4.2.7接地装置 (Ifc Ground Device)

4.2.7.1实体定义

接地装置 (Ifc Ground Device) 是接地体和接地线的总合, 用于传导雷电流并将其流散入大地。

4.2.7.2属性定义

Pre Defined Type:预定义类型。从功能类型上将接地装置进一步细分为接地母线、接地极、接地模块、离子接地极等。

4.2.7.3 EXPRESS描述

ENTITY Ifc Ground Device

SUBTYPE OF (Ifc Flow Controller) ;

Pre Defined Type:OPTIONAL Ifc Ground Device Type Enum;

WHERE

Correct Predefined Type:

NOT (EXISTS (Predefined Type) )

OR (Predefined Type<>Ifc Ground Device Type Enum.USERDEFINED)

OR

( (Predefined Type=Ifc Ground Device Type Enum.USERDEFINED)

AND EXISTS (SELFIfc Object.Object Type) ) ;

Correct Type Assigned:

(SIZEOF (Is Type By) =0)

OR

(‘IFCELECTRICALDOMAIN.IFCGROUNDDEVICETYPE’

IN TYPEOF (SELFIfc Object.Is Type By[1].Relating Type) ) ;

END_ENTITY;

4.3公用属性集

4.3.1 Pset_Device Cabinet Common

属性集名称:Pset_Device Cabinet Common。

适用的实体:Ifc Device Cabinet。

描述:设备柜通用属性集。

属性列表:见表4.1。

4.3.2 Pset_Electri Distribution Board Type Power Board

属性集名称:Pset_Electri Distribution Board Type Power Board。

适用的实体:Ifc Electri Distribution Board。

描述:电源板卡属性集。

属性列表:见表4.2。

4.3.3 Pset_Ground Device Type Common

属性集名称:Pset_Ground Device Type Common。

适用的实体:Ifc Ground Device。

描述:接地装置通用属性集。

属性列表:见表4.3。

4.3.4 Pset_Chainage Common

属性集名称:Pset_Chainage Common。

适用的实体:四电室外部分设备或基础。

描述:里程通用属性集。

属性列表:见表4.4。

4.3.5 Pset_Ifc Lightning Protection

属性集名称:Pset_Lightning Protection。

适用的实体:Ifc Lightning Protection。

描述:防雷设施属性集。

属性列表:见表4.5。

4.3.6 Pset_Ifc Lightning Protection Type Lightning Rod

属性集名称:Pset_Lightning Protection Type Lightning Rod。

适用的实体:Ifc Lightning Protection。

描述:避雷针属性集。

属性列表:见表4.6。

4.3.7 Pset_Ifc Distribution System Type Rail System

本标准引用IFC4中配送系统 (Ifc Distribution System) 来表达铁路四电工程中系统的定义, 并新定义“Pset_Distribution System Type Rail System”属性集, 使用该属性集中的Type属性进一步说明系统的类型。

属性集名称:Pset_Distribution System Type Rail System。

适用的实体:Ifc Distribution System。

描述:配送系统铁路子系统类型。

属性列表:见表4.7。

5通信

本标准中通信定义了铁路通信、信息、自然灾害监测及异物侵限3部分的内容。

通过引用IFC4中配送系统 (Ifc Distribution System) 、配送构件 (Ifc Distribution Element) 以及配送接口 (Ifc Distribution Port) 来构成通信的定义。图5.1以铁路车站票务系统为例, 展示了构件、端口的连接关系。

其中, 部分通信构件或零部件采用IFC4中已有类型或已有类型的枚举项, 部分构件通过增加枚举项的方式进行扩展, 具体如下:

(1) 路由器采用IFC4中Ifc Communications ApplianceROUTER。

(2) 采用IFC4中Ifc Communications Appliance类型, 并新增预定义类型TRANSMISSIONEQUIPMENT (传输设备) 、A C C E S S N E T W O R K E Q U I P M E N T (接入网设备) 、E X C H A N G E E Q U I P M E N T (交换设备) 、N E T W O R K S W I T C H (网络交换机) 、S Y N C H R O N I Z A T I O N N E T W O R K E Q U I P M E N T (同步设备) 、EMERGENCYHANDLINGEQUIPMENT (应急处理设备) 、MONITORHANDLEEQUIPMENT (监控设备) 、CONVERTER (转换器) 、WIRELESSCOMMUNICATIONEQUIPMENT (无线通信设备) 、LOCOMOTIVEEQUIPMENT (车载设备) 、PORTABLEDEVICES (便携设备) 、DATA STORAGE (数据存储设备) 。

(3) 天线采用IFC4中Ifc Communications ApplianceANTENNA。

(4) 风速风向计采用IFC4中Ifc SensorWINDSENSOR。

(5) 采用IFC4中Ifc Sensor类型, 并新增预定义类型PLUVIOGRAPH (雨量计) 、SNOWMETER (雪深仪) 、SEISMOMETER (地震仪) 、CLEARANCEINTRUSIONMONITORINGDEVICE (异物侵限监测装置) 。

(6) 数据或语音插座采用IFC4中Ifc OutletDATAOUTLET或TELEPHONEOUTLET。

(7) 摄像头采用IFC4中Ifc Audio Visual ApplianceCAMERA。拾音器采用IFC4中Ifc Audio Visual ApplianceMICROPHONE。

(8) 时钟采用IFC4中Ifc Electric Time ControlTIMECLOCK。

(9) 各类信息查询、办公、管理终端采用IFC4中Ifc Communications ApplianceCOMPUTER。

(10) 客运信息显示屏采用IFC4中Ifc Communications ApplianceDISPLAY。

(11) 扬声器采用I F C4中I f c A u d i o V i s u a l A p p l i a n c eS P E A K E R, 噪声探测器采用I F C4中I f c S e n s o rSOUNDSENSOR, 无线呼叫站采用IFC4中Ifc Audio Visual ApplianceRECEIVER, 广播主机采用IFC4中Ifc Audio Visual AppliancePLAYER, 广播功放采用IFC4中Ifc Audio Visual ApplianceAMPLIFIER。

(12) 声光报警器采用IFC4中Ifc AlarmLIGHT、BELL。

(13) 采用IFC4中Ifc Sensor类型, 并增加预定义类型INTRUSIONDETECTOR (入侵探测器) 。

(14) 采用IFC4中Ifc Alarm类型, 并增加预定义类型ALARMBUTTON (紧急报警装置) 。

(15) 采用I F C4中I f c A u d i o V i s u a l A p p l i a n c e类型, 并增加预定义类型R E C O R D E R (记录仪) 、CONFERENCEEQUIPMENT (会议设备) 、CONSOLE (监控台) 。

(1 6) 自动售票机采用I F C 4中I f c E l e c t r i c A p p l i a n c eV E N D I N G M A C H I N E, 人工售票机采用Ifc Communications ApplianceCOMPUTER, 票据打印机采用Ifc Communications AppliancePRINTER。

(17) 不间断电源设备采用Ifc Electric Flow Storage DeviceUPS, 蓄电池采用Ifc Electric Flow Storage DeviceBATTERY。

(18) 开关电源设备采用IFC4中Ifc Electric Flow Storage Device类型, 并增加预定义类型SWITCHPOWERSUPPLY (开关电源) 。

(19) 线缆、防雷、接地、沟槽管井参见四电公用部分。

5.1类型定义

5.1.1视听设备类型枚举 (Ifc Audio Visual Appliance Type Enum)

Ifc Audio Visual Appliance Type Enum是指不同种类视听设备的集合。

现有枚举项定义:

AMPLIFIER:放大器;

CAMERA:摄像机;

DISPLAY:显示器;

MICROPHONE:麦克风;

PLAYER:播放器;

PROJECTOR:幻灯机;

RECEIVER:接收器;

SPEAKER:扬声器;

SWITCHER:转接器;

TELEPHONE:电话;

TUNER:调节器;

USERDEFINED:用户自定义;

NOTDEFINED:未定义。

新增枚举项定义:

RECORDER:记录仪;

CONFERENCEEQUIPMENT:会议设备;

CONSOLE:监控台。

EXPRESS描述:

TYPE Ifc Audio Visual Appliance Type Enum=ENUMERATION OF

(AMPLIFIER,

CAMERA,

CONFERENCEEQUIPMENT,

CONSOLE,

DISPLAY,

MICROPHONE,

PLAYER,

PROJECTOR,

RECEIVER,

RECORDER,

SPEAKER,

SWITCHER,

TELEPHONE,

TUNER,

USERDEFINED,

NOTDEFINED) ;

END_TYPE;

5.1.2通信设备类型枚举 (Ifc Communications Appliance Type Enum)

Ifc Communications Appliance Type Enum是指不同种类通信设备的集合。

现有枚举项定义:

ANTENNA:天线;

COMPUTER:电脑;

FAX:传真机;

GATEWAY:网关;

MODEM:调制解调器;

NETWORKAPPLIANCE:网络设备;

NETWORKBRIDGE:网桥;

NETWORKHUB:网络集线器;

PRINTER:打印机;

REPEATER:中继器;

ROUTER:路由器;

SCANNER:扫描仪;

USERDEFINED:用户自定义;

NOTDEFINED:未定义。

新增枚举项定义:

TRANSMISSIONEQUIPMENT:传输设备;

ACCESSNETWORKEQUIPMENT:接入网设备;

EXCHANGEEQUIPMENT:交换设备;

NETWORKSWITCH:网络交换机;

SYNCHRONIZATIONNETWORKEQUIPMENT:同步设备;

EMERGENCYHANDLINGEQUIPMENT:应急处理设备;

MONITORHANDLEEQUIPMENT:监控设备;

CONVERTER:转换器;

WIRELESSCOMMUNICATIONEQUIPMENT:无线通信设备;

LOCOMOTIVEEQUIPMENT:车载设备;

PORTABLEDEVICES:便携设备;

DATA STORAGE:数据存储设备。

EXPRESS描述:

TYPE Ifc Communications Appliance Type Enum=ENUMERATION OF

(ACCESSNETWORKEQUIPMENT,

ANTENNA,

COMPUTER,

CONVERTER,

DATA STORAGE,

EMERGENCYHANDLINGEQUIPMENT,

EXCHANGEEQUIPMENT,

FAX,

GATEWAY,

LOCOMOTIVEEQUIPMENT,

MODEM,

MONITORHANDLEEQUIPMENT,

NETWORKAPPLIANCE,

NETWORKBRIDGE,

NETWORKHUB,

NETWORKSWITCH,

PRINTER,

REPEATER,

PORTABLEDEVICES,

ROUTER,

SCANNER,

SYNCHRONIZATIONNETWORKEQUIPMENT,

TRANSMISSIONEQUIPMENT,

WIRELESSCOMMUNICATIONEQUIPMENT,

USERDEFINED,

NOTDEFINED) ;

END_TYPE;

5.1.3传感器类型枚举 (Ifc Sensor Type Enum)

Ifc Sensor Type Enum是指不同种类传感器的集合。

现有枚举项定义:

CO2SENSOR:CO2传感器;

CONDUCTANCESENSOR:电导传感器;

CONTACTSENSOR:接触传感器;

FIRESENSOR:火传感器;

FLOWSENSOR:流传感器;

FROSTSENSOR:霜传感器;

GASSENSOR:气体传感器;

HEATSENSOR:热量传感器;

HUMIDITYSENSOR:湿度传感器;

IDENTIFIERSENSOR:识别传感器;

IONCONCENTRATIONSENSOR:离子浓度传感器;

LEVELSENSOR:填充传感器;

LIGHTSENSOR:灯光传感器;

MOISTURESENSOR:水分传感器;

MOVEMENTSENSOR:移动传感器;

PHSENSOR:p H传感器;

PRESSURESENSOR:压力传感器;

RADIATIONSENSOR:辐射传感器;

RADIOACTIVITYSENSOR:无线传感器;

SMOKESENSOR:烟感器;

SOUNDSENSOR:声音传感器;

TEMPERATURESENSOR:温度传感器;

WINDSENSOR:风速传感器;

USERDEFINED:用户自定义;

NOTDEFINED:未定义。

新增枚举项定义:

CLEARANCEINTRUSIONMONITORINGDEVICE:异物侵限监测装置;

GLASSBREAKSENSOR:玻璃破碎传感器;

INFRAREDSENSOR:红外传感器;

SEISMOMETER:地震仪;

SNOWMETER:雪深仪;

PLUVIOGRAPH:雨量计;

WATERLOGGINGSENSOR:水浸传感器;

INTRUSIONDETECTOR:入侵探测器。

EXPRESS描述:

TYPE Ifc Sensor Type Enum=ENUMERATION OF

(CO2SENSOR,

CONDUCTANCESENSOR,

CONTACTSENSOR,

FIRESENSOR,

FLOWSENSOR,

FROSTSENSOR,

GASSENSOR,

HEATSENSOR,

HUMIDITYSENSOR,

IDENTIFIERSENSOR,

IONCONCENTRATIONSENSOR,

LEVELSENSOR,

LIGHTSENSOR,

MOISTURESENSOR,

MOVEMENTSENSOR,

PHSENSOR,

PRESSURESENSOR,

RADIATIONSENSOR,

RADIOACTIVITYSENSOR,

SMOKESENSOR,

SOUNDSENSOR,

TEMPERATURESENSOR,

WINDSENSOR,

CLEARANCEINTRUSIONMONITORINGDEVICE,

GLASSBREAKSENSOR,

INFRAREDSENSOR,

SEISMOMETER,

SNOWMETER,

PLUVIOGRAPH,

WATERLOGGINGSENSOR,

INTRUSIONDETECTOR,

USERDEFINED,

NOTDEFINED) ;

END_TYPE;

5.1.4电气设备类型枚举 (Ifc Electric Appliance Type Enum)

Ifc Electric Appliance Type Enum是指不同种类电气设备的集合。

现有枚举项定义:

DISHWASHER:洗碗机;

ELECTRICCOOKER:电灶具 (烤箱等) ;

FREESTANDINGELECTRICHEATER:可移动电暖气;

FREESTANDINGFAN:可移动电风扇;

FREESTANDINGWATERHEATER:可移动热水器;

FREESTANDINGWATERCOOLER:可移动冷水器;

FREEZER:冷柜;

HANDRYER:干手机;

KITCHENMACHINE:厨房器械 (如搅拌机) ;

MICROWAVE:微波炉;

PHOTOCOPIER:复印机;

REFRIGERATOR:冰箱;

TUMBLEDRYER:烘干机;

VENDINGMACHINE:自动贩卖机;

WASHINGMACHINE:洗衣机;

USERDEFINED:用户自定义;

NOTDEFINED:未定义。

新增枚举项定义:

AUTOMATICGATEMACHINE:自动检票机;

LUGGAGEINSPECTION:安检仪;

PERSONNELSCREENING:安检门。

EXPRESS描述:

TYPE Ifc Electric Appliance Type Enum=ENUMERATION OF

(DISHWASHER,

ELECTRICCOOKER,

FREESTANDINGELECTRICHEATER,

FREESTANDINGFAN,

FREESTANDINGWATERHEATER,

FREESTANDINGWATERCOOLER,

FREEZER,

HANDRYER,

KITCHENMACHINE,

MICROWAVE,

PHOTOCOPIER,

REFRIGERATOR,

TUMBLEDRYER,

VENDINGMACHINE,

WASHINGMACHINE,

AUTOMATICGATEMACHINE,

LUGGAGEINSPECTION,

PERSONNELSCREENING,

USERDEFINED,

NOTDEFINED) ;

END_TYPE;

5.2属性集定义

5.2.1 Pset_Audio Visual Appliance Type Recorder

属性集名称:Pset_Audio Visual Appliance Type Recorder。

适用的实体:Ifc Audio Visual Appliance。

描述:记录仪属性集。

属性列表:见表5.1。

5.2.2 Pset_Audio Visual Appliance Type Conference Equipment

属性集名称:Pset_Audio Visual Appliance Type Conference Equipment。

适用的实体:Ifc Audio Visual Appliance。

描述:会议设备属性集。

属性列表:见表5.2。

5.2.3 Pset_Audio Visual Appliance Type Console

属性集名称:Pset_Audio Visual Appliance Type Console。

适用的实体:Ifc Audio Visual Appliance。

描述:监控台属性集。

属性列表:见表5.3。

5.2.4 Pset_Communications Appliance Type Transmission Equipment

属性集名称:Pset_Communications Appliance Type Transmission Equipment。

适用的实体:Ifc Communications Appliance。

描述:传输设备属性集。

属性列表:见表5.4。

5.2.5 Pset_Communications Appliance Type Access Network Equipment

属性集名称:Pset_Communications Appliance Type Access Network Equipment。

适用的实体:Ifc Communications Appliance。

描述:接入网设备属性集。

属性列表:见表5.5。

5.2.6 Pset_Communications Appliance Type Exchange Equipment

属性集名称:Pset_Communications Appliance Type Exchange Equipment。

适用的实体:Ifc Communications Appliance。

描述:交换设备属性集。

属性列表:见表5.6。

5.2.7 Pset_Communications Appliance Type Network Switch

属性集名称:Pset_Communications Appliance Type Network Switch。

适用的实体:Ifc Communications Appliance。

描述:网络交换机属性集。

属性列表:见表5.7。

5.2.8 Pset_Communications Appliance Type Synchronization Network Equipment

属性集名称:Pset_Communications Appliance Type Synchronization Network Equipment。

适用的实体:Ifc Communications Appliance。

描述:同步设备属性集。

属性列表:见表5.8。

5.2.9 Pset_Communications Appliance Type Emergency Handling Equipment

属性集名称:Pset_Communications Appliance Type Emergency Handling Equipment。

适用的实体:Ifc Communications Appliance。

描述:应急处理设备属性集。

属性列表:见表5.9。

5.2.10 Pset_Communications Appliance Type Monitor Handle Equipment

属性集名称:Pset_Communications Appliance Type Monitor Handle Equipment。

适用的实体:Ifc Communications Appliance。

描述:监控设备属性集。

属性列表:见表5.10。

5.2.11 Pset_Communications Appliance Type Converter

属性集名称:Pset_Communications Appliance Type Converter。

适用的实体:Ifc Communications Appliance。

描述:转换器属性集。

属性列表:见表5.11。

5.2.12 Pset_Communications Appliance Type Wireless Communication Equipment

属性集名称:Pset_Communications Appliance Type Wireless Communication Equipment。

适用的实体:Ifc Communications Appliance。

描述:无线通信设备属性集。

属性列表:见表5.12。

5.2.13 Pset_Communications Appliance Type Portable Devices

属性集名称:Pset_Communications Appliance Type Portable Devices。

适用的实体:Ifc Communications Appliance。

描述:便携设备属性集。

属性列表:见表5.13。

5.2.14 Pset_Communications Appliance Type Data Storage

属性集名称:Pset_Communications Appliance Type Data Storage。

适用的实体:Ifc Communications Appliance。

描述:数据存储设备属性集。

属性列表:见表5.14。

5.2.15 Pset_Sensor Wind Sensor Snow Meter Pluvio Graph Interface Type Common

属性集名称:Pset_Sensor Wind Sensor Snow Meter Pluvio Graph Interface Common。

适用的实体:Ifc Sensor。

描述:雪深仪、风速计、雨量计接口通用属性集。

属性列表:见表5.15。

5.2.16 Pset_Insulation Device Type Common

属性集名称:Pset_Insulation Device Type Common。

适用的实体:Ifc Insulation Device。

描述:绝缘装置属性集。

属性列表:见表5.16。

6信号

铁路信号系统是统一调度指挥列车运行、保证行车安全、提高运输效率、改善劳动强度的重要行车装备, 主要包括行车指挥系统、列控系统、区间及闭塞系统、车站联锁系统、信号集中监测系统、电源系统等系统。

通过引用IFC4中Ifc Shared Bldg Service Elements模式中Ifc Distribution System (分布系统) 表达信号系统及其各子系统。

信号信息模型基础数据架构由构件 (Ifc Element) 和端口 (Ifc Port) 组成。其中, 部分信号构件或零部件采用IFC4中已有类型或已有类型的枚举项, 部分构件通过增加类型或枚举项的方式进行扩展, 具体如下:

(1) 铁路四电公用部分参见本标准第4章节。

(2) 继电器采用IFC4中Ifc Electric Time ControRELAY。

(3) 断路器采用IFC4中Ifc Protective DeviceCIRCUITBREAKER。

(4) 熔断器采用IFC4中Ifc Protective DeviceFUSEDISCONNECTOR。

(5) 防雷单元采用IFC4中Ifc Protective DevicVARISTOR。

(6) 电阻采用IFC4中Ifc Protective Device, 并新增预定义类型RESISTOR (电阻) 。

(7) 隔离单元采用IFC4中Ifc Protective Devic, 并新增预定义类型ISOLATIONUNIT (隔离单元) 。

(8) 交流限时断相保护器、直流限时保护器采用I F C4中I f c P r o t e c t i v e D e v i c e, 并新增预定义类型POINTMACHINEPROTECTION (转辙机保护器) 。

(9) 直流限时报警器、灯丝断丝报警器、熔丝断丝报警器、排架报警器等报警器采用IFC4中Ifc AlarmBELL或Ifc AlarmLIGHT。

(10) 电容采用IFC4中Ifc Electric Flow Storage DeviceCAPACITORBANK。

(11) 变压器采用IFC4中Ifc TransformerVOLTAGE。

(12) 整流器采用IFC4中Ifc TransformerRECTIFIER。

(13) 扼流变压器采用IFC4中Ifc Transformer, 并新增预定义类型IMPEADANCEBOND (扼流变压器) 。

(14) 点灯单元采用IFC4中Ifc Transformer, 并新增预定义类型LIGHTINGUNIT (点灯单元) 。

(15) 方向盒、终端盒、电子接线盒采用IFC4中Ifc Junction BoxPOWER或Ifc Junction BoxDATA。

(16) 端子板采用IFC4中Ifc Cable Fitting, 并新增预定义类型TERMINALBOARD (端子板) 。

(17) 接线端子采用IFC4的Ifc Distribution PortCABLE。

(18) 信号电缆、计轴电缆、应答器电缆、信号室内软线采用IFC4中CABLESEGMENT。

(1 9) 综合贯通地线采用I F C 4中I f c C a b l e S e g m e n t T y p e E n u m, 并新增预定义类型INTEGRATEDGROUNDINGWIRESEGMENT (综合贯通地线) 。

(20) 绝缘节采用新增实体Ifc Insulation Device, 并新增预定义类型INSULATEDJOINT (绝缘节) 。

(21) 空心线圈绝缘节采用新增实体Ifc Insulation Device, 并新增预定义类型AIRCORECOIL (空心线圈) 。

(22) 箱盒基础采用IFC4中Ifc FootingSTRIP_FOOTING。

(23) 高柱信号机机柱采用IFC4中Ifc ColumnCOLUMN。

(24) 组合柜、轨道柜、分线盘、接口柜、移频柜、综合柜、机柜、变压器箱、双体防护盒使用在铁路四电公用部分新增的实体Ifc Device Cabinet。

(25) 机柜中各种电路板 (如计算机联锁机柜中联锁逻辑部二重系、电子终端、光分路器、UPS电源、逻辑24 V电源、接口24 V电源) 采用IFC4中Ifc Electric Distribution Board, 并新增预定义类型POWERBOARD (电源板) 或DATABOARD (数据板) 。

(26) 信号机、应答器、计轴器、转辙机、道岔安装装置、密贴检查器、锁闭器采用新增实体信号终端 (Ifc Signaling Terminal) , 信号终端 (Ifc Signaling Terminal) 继承自流终端 (Ifc Flow Terminal) 。

(27) 发送器、接收器、衰耗器、功放器、应答器编码单元、采集器、电缆模拟网络盘, 25 Hz相敏轨道电路防护盒 (FH-25) 采用新增实体信号中继器 (Ifc Signaling Relay) , 信号中继器 (Ifc Signaling Relay) 继承自流控制 (Ifc Flow Controller) 。

(28) 信号机机构采用新增实体信号机机构 (Ifc Signal Mechanisms) , 信号机机构 (Ifc Signal Mechanisms) 继承自流终端 (Ifc Flow Terminal) 。

CTC中心设备、CTC车站分机、计算机联锁机、列控中心、临时限速服务器、RBC设备、轨道电路维护机、微机监测中心设备、微机监测车站分机, 轨道电路送电端、轨道电路受电端等设备采用IFC4中的Ifc Distribution SystemDATA。

信号构件Express-G如图6.1所示。

信号系统由各种构件 (Ifc Element) 和端口 (Ifc Port) 连接实现, 图6.2、图6.3以信号联锁子系统为例体现了信号构件及端口连接关系。图6.2为信号联锁子系统室内设备连接关系, 图6.3为信号联锁子系统室外设备连接关系, 室内设备与设备设通过室外电缆连接。

新增信号终端 (Ifc Signaling Terminal) 继承自流终端 (Ifc Flow Terminal) ;新增信号中继器 (Ifc Signaling Relay) 继承自流控制器 (Ifc Flow Controller) ;新增信号机机构 (Ifc Signal Mechanisms) 继承自流终端 (Ifc Flow Terminal) 。

6.1类型定义

6.1.1信号终端类型 (Ifc Signaling Terminal Type Enum)

Ifc Signaling Terminal Type Enum是信号终端类型枚举, 从功能的角度定义信号终端的类型。

新增枚举项定义:

SIGNAL:信号机;

AXLECOUNTER:计轴器;

BALISE:应答器;

ENDPOSITIONDETECTOR:密贴检测器;

LOCKSTRETECHER:锁闭器;

POINTMACHINE:转辙机;

MOUNTEDDEVICE:道岔安装装置;

USERDEFINED:用户自定义;

NOTDEFINED:未定义。

EXPRESS描述:

TYPE Ifc Signaling Terminal Type Enum=ENUMERATION OF

(SIGNAL

AXLECOUNTER,

BALISE,

ENDPOSITIONDETECTOR,

LOCKSTRETECHER,

MOUNTEDDEVICE,

POINTMACHINE,

USERDEFINED,

NOTDEFINED) ;

END_TYPE;

6.1.2信号中继器类型 (Ifc Signaling Relay Type Enum)

Ifc Signaling Relay Type Enum是信号中继器类型枚举, 从功能的角度定义信号中继器的类型。

新增枚举项定义:

ACQUISITION:采集器 (CP) ;

AMPLIFIER:功放器;

ATTENUATOR:衰耗器 (SH) ;

LEU:应答器编码单元;

RECEIVER:接收器;

SENDER:发送器;

SIMULATOR:模拟网络盘;

25HZTRACKCIRCUITPROTECTIONBOX:25 Hz轨道电路防护盒;

USERDEFINED:用户自定义;

NOTDEFINED:未定义。

EXPRESS描述:

TYPE Ifc Signaling Relay Type Enum=ENUMERATION OF

(ACQUISITION,

AMPLIFIER,

ATTENUATOR,

LEU,

RECEIVER,

SENDER,

SIMULATION,

25HZTRACKCIRCUITPROTECTIONBOX:

USERDEFINED,

NOTDEFINED) ;

END_TYPE;

6.1.3信号机机构类型 (Ifc Signal Mechanisms Type Enum)

Ifc Signal Mechanisms Type Enum是信号机机构类型枚举, 从信号机灯位结构数量的角度定义信号机机构的类型。

新增枚举项定义:

SINGLEMECHANISMS:一灯位;

DOUBLEMECHANISMS:二灯位;

TRIPLEMECHANISMS:三灯位;

QUADRUPLEMECHANISMS:四灯位;

USERDEFINED:用户自定义;

NOTDEFINED:未定义。

EXPRESS描述:

TYPE Ifc Signal Mechanisms Type Enum=ENUMERATION OF

(SINGLEMECHANISMS,

DOUBLEMECHANISMS,

TRIPLEMECHANISMS,

QUADRUPLEMECHANISMS,

USERDEFINED,

NOTDEFINED) ;

END_TYPE;

6.2实体定义

6.2.1信号终端 (Ifc Signaling Terminal)

6.2.1.1实体定义

信号终端 (Ifc Signaling Terminal) 继承自流终端 (Ifc Flow Terminal) , 定义了信号系统中的终端设备。

6.2.1.2属性定义

Pre Defined Type:预定义类型。从功能类型上将信号终端进一步细分为信号机、计轴器、应答器、密贴检查器、转辙机、锁闭器、道岔安装装置等。

6.2.1.3 EXPRESS描述

ENTITY Ifc Signaling Terminal

SUBTYPE OF (Ifc Flow Terminal) ;

Pre Defined Type:OPTIONAL Ifc Signaling Terminal Type Enum;

WHERE

Correct Predefined Type:

NOT (EXISTS (Predefined Type) )

OR (Predefined Type<>Ifc Signaling Terminal Type Enum.USERDEFINED)

OR

( (Predefined Type=Ifc Signaling Terminal Type Enum.USERDEFINED)

AND EXISTS (SELFIfc Object.Object Type) ) ;

Correct Type Assigned:

(SIZEOF (Is Type By) =0)

OR

(‘IFCELECTRICALDOMAIN.IFCSIGNALINGTERMINALTYPE’

IN TYPEOF (SELFIfc Object.Is Type By[1].Relating Type) ) ;

END_ENTITY;

6.2.2信号中继器 (Ifc Signaling Relay)

6.2.2.1实体定义

信号中继器 (Ifc Signaling Relay) 定义了信号系统中对信号进行接收、发送、处理等操作的非整机设备。

6.2.2.2属性定义

Pre Defined Type:预定义类型。从功能类型上将信号中继器进一步细分为功放器、衰耗器、采集器、模拟网络盘、接收器、发送器、25 Hz相敏轨道电路防护盒等。

6.2.2.3 EXPRESS描述

ENTITY Ifc Signaling Relay

SUBTYPE OF (Ifc Flow Controller) ;

Pre Defined Type:OPTIONAL Ifc Signaling Relay Type Enum;

WHERE

Correct Predefined Type:

NOT (EXISTS (Predefined Type) )

OR (Predefined Type<>Ifc Signaling Relay Type Enum.USERDEFINED)

OR

( (Predefined Type=Ifc Signaling Relay Type Enum.USERDEFINED)

AND EXISTS (SELFIfc Object.Object Type) ) ;

Correct Type Assigned:

(SIZEOF (Is Type By) =0)

OR

(‘IFCELECTRICALDOMAIN.IFCSIGNALINGRELAYTYPE’

IN TYPEOF (SELFIfc Object.Is Type By[1].Relating Type) ) ;

END_ENTITY;

6.2.3信号机机构 (Ifc Signal Mechanisms)

6.2.3.1实体定义

信号机机构 (Ifc Signal Mechanisms) 继承自流终端 (Ifc Flow Terminal) , 信号机构是信号机组成的一个部件, 从信号机机构灯位结构的角度定义信号机机构的设备。

6.2.3.2属性定义

Pre Defined Type:预定义类型。从信号机机构灯位结构类型上将信号机机构进一步细分为一灯位、二灯位、三灯位、四灯位等。

6.2.3.3 EXPRESS描述

ENTITY Ifc Signal Mechanisms

SUBTYPE OF (Ifc Flow Terminal) ;

Pre Defined Type:OPTIONAL Ifc Signal Mechanisms Type Enum;

WHERE

Correct Predefined Type:

NOT (EXISTS (Predefined Type) )

OR (Predefined Type<>Ifc Signal Mechanisms Type Enum.USERDEFINED)

OR

( (Predefined Type=Ifc Signal Mechanisms Type Enum.USERDEFINED)

AND EXISTS (SELFIfc Object.Object Type) ) ;

Correct Type Assigned:

(SIZEOF (Is Type By) =0)

OR

(‘IFCELECTRICALDOMAIN.IFCSIGNALMECHANISMSTYPE’

IN TYPEOF (SELFIfc Object.Is Type By[1].Relating Type) ) ;

END_ENTITY;

6.3属性集定义

6.3.1 Pset_Signal Terminaland Processor Common

属性集名称:Pset_Signal Terminaland Processor Common。

适用的实体:Ifc Signaling Terminal/Ifc Signaling Relay。

描述:信号终端设备和信号中继器通用属性集。

属性列表:见表6.1。

6.3.2 Pset_Signal Terminal PHistory

属性集名称:Pset_Signal Terminal PHistory。

适用的实体:Ifc Signaling Terminal。

描述:信号终端表现历史属性集。

属性列表:见表6.2。

6.3.3 Pset_Signal Terminal Occurrence

属性集名称:Pset_Signal Terminal Occurrence。

适用的实体:Ifc Signaling Terminal。

描述:信号终端环境属性集。

属性列表:见表6.3。

6.3.4 Pset_Signal Terminal Type Signal

属性集名称:Pset_Signal Terminal Type Signal。

适用的实体:Ifc Signaling Terminal。

描述:信号机属性集。

属性列表:见表6.4。

6.3.5 Pset_Signal Terminal Type Balise

属性集名称:Pset_Signal Terminal Type Balise。

适用的实体:Ifc Signaling Terminal。

描述:应答器属性集。

属性列表:见表6.5。

6.3.6 Pset_Signal Terminal Type Point Machine

属性集名称:Pset_Signal Terminal Type Point Machine。

适用的实体:Ifc Signaling Terminal。

描述:转辙机属性集。

属性列表:见表6.6。

6.3.7 Pset_Signal Terminal Type End Position Detector

属性集名称:Pset_Signal Terminal Type End Position Detector。

适用的实体:Ifc Signaling Terminal。

描述:密贴检查器属性集。

属性列表:见表6.7。

6.3.8 Pset_Signal Processor PHistory

属性集名称:Pset_Signal Processor PHistory。

适用的实体:Ifc Signaling Relay。

描述:信号中继器表现历史属性集。

属性列表:见表6.8。

6.3.9 Pset_Signal Processor Type Acquisition

属性集名称:Pset_Signal Processor Type Acquisition。

适用的实体:Ifc Signaling Relay。

描述:采集器属性集。

属性列表:见表6.9。

6.3.10 Pset_Signal Mechanisms Common

属性集名称:Pset_Signal Mechanisms Common。

适用的实体:Ifc Signal Mechanisms。

描述:信号机机构通用属性集。

属性列表:见表6.10。

7电力变电

电力变电模型基础数据架构由构件 (Ifc Element) 和端口 (Ifc Port) 组成。

其中, 部分电力变电构件或零件采用原IFC4中已有类型或已有类型的枚举项, 部分构件通过增加类型或枚举项的方式进行扩展, 具体如下:

(1) 铁路四电公用部分参见本标准第4章节。

(2) 灯具采用原IFC4中Ifc Lamp和Ifc Light Fixture类型。

(3) 发电机采用原IFC4中Ifc Electric Generator类型。

(4) 光伏电池板采用原IFC4中Ifc Solar Device类型。

(5) 变压器、电压互感器、电流互感器分别采用IFC4中Ifc TransformerVOLTAGE、Ifc TransformerVOLTAGE和Ifc TransformerCURRENT。

(6) 滤波装置采用IFC4中Ifc Electric Flow Storage DeviceHARMONICFILTER。

(7) 隔离开关、负荷开关分别采用IFC4中Ifc Switching DeviceSWITCHDISCONNECTOR和Ifc Switching DeviceLOADSWITCH。

(8) 交直流屏采用IFC4中Ifc Electric Distribution BoardDISTRIBUTIONBOARD。

(9) 补偿装置、抗雷线圈分别采用I F C4中I f c E l e c t r i c F l o w S t o r a g e D e v i c eC A P A C I T O R B A N K、Ifc Electric Flow Storage DeviceINDUCTORBANK。

(10) 端子箱、集中接地箱均采用IFC4中Ifc Junction BoxPOWER。

(11) 断路器、避雷器、熔断器分别采用IFC4中Ifc Protective DeviceCIRCUITBREAKER、Ifc Protective DeviceVARISTOR、Ifc Protective DeviceFUSEDISCONNECTO, 并在Ifc Protective Device类型中增加开关柜预定义类型。

(12) 二次屏采用IFC4中Ifc Unitary Control Element类型, 并增加预定义类型。组合电器 (Ifc Composite Apparatus) 为新增实体, 继承自能量转换装置 (Ifc Energy Conversion Device) 。

(13) 箱式所 (Ifc Box Type Substation) 为新增实体, 继承自能量转换装置 (Ifc Energy Conversion Device) 。

(14) 火灾自动报警探测器采用IFC4中Ifc Sensor类型。

(15) 火灾自动报警监控主机利用Ifc Communications Appliance新增枚举MONITORHANDLEEQUIPMENT:监控设备 (详见上文) 。

(16) BAS (Building Automation System) 楼宇自动化系统监控主机利用Ifc Communications Appliance新增枚举MONITORHANDLEEQUIPMENT:监控设备 (详见上文) 。

电力变电EXPRESS-G如图7.1所示, 电力变电逻辑关系如图7.2所示。

7.1类型定义

7.1.1组合电器类型 (Ifc Composite Apparatus Type Enum)

Ifc Composite Apparatus Type Enum是组合电器类型枚举, 从功能的角度定义组合电器的类型。

新增枚举项定义:

GIS:GIS组合电器;

HGIS:HGIS组合电器;

USERDEFINED:用户自定义;

NOTDEFINED:未定义。

EXPRESS描述:

TYPE Ifc Composite Apparatus Type Enum=ENUMERATION OF

(GIS,

HGIS,

USERDEFINED,

NOTDEFINED) ;

END_TYPE;

7.1.2箱式所类型 (Ifc Box Type Substation Type Enum)

Ifc Box Type Substation Type Enum是箱式所类型枚举, 从功能的角度定义箱式所的类型。

新增枚举项定义:

SUBSTATION:变电所;

SECTIONPOST:分区所;

SUBSECTIONPOST:开闭所;

USERDEFINED:用户自定义;

NOTDEFINED:未定义。

EXPRESS描述:

TYPE Ifc Box Type Substation Type Enum=ENUMERATION OF

(SECTIONPOST,

SUBSECTIONPOST,

SUBSTATION,

USERDEFINED,

NOTDEFINED) ;

END_TYPE;

7.1.3统一控制类型 (Ifc Unitary Control Element Type Enum)

Ifc Unitary Control Element Type Enum是统一控制类型枚举, 从功能的角度定义统一控制的类型。该类是IFC4的现有类, 本专业在现有的基础上进行扩充。

现有枚举项定义:

ALARMPANEL:报警面板;

CONTROLPANEL:控制面板;

GASDETECTIONPANEL:气体监测面板;

INDICATORPANEL:指示器面板;

MIMICPANEL:模拟面板;

HUMIDISTAT:温度调节器;

THERMOSTAT:温控器;

WEATHERSTATION:气象站;

USERDEFINED:用户自定义;

NOTDEFINED:未定义。

新增枚举项定义:

SECONDARYDEVICECABINET:二次屏。

EXPRESS描述:

TYPE Ifc Unitary Control Element Type Enum=ENUMERATION OF

(ALARMPANEL,

CONTROLPANEL,

GASDETECTIONPANEL,

INDICATORPANEL,

MIMICPANEL,

HUMIDISTAT,

SECONDARYDEVICECABINET,

THERMOSTAT,

WEATHERSTATION,

USERDEFINED,

NOTDEFINED) ;

END_TYPE;

7.2实体定义

7.2.1能量转换装置 (Ifc Energy Conversion Device)

7.2.1.1实体定义

由于在能量转换装置下需要新增能量转换实体, 因此能量转换装置需要被重新描述。

7.2.1.2属性定义

能量转换装置保持原有的属性不做改变。

7.2.1.3 EXPRESS描述

ENTITY Ifc Energy Conversion Device

SUPERTYPE OF (ONE OF

(Ifc Air To Air Heat Recovery,

Ifc Boiler,

Ifc Box Type Substation,

Ifc Burner,

Ifc Chiller,

Ifc Coil,

Ifc Composite Apparatus,

Ifc Condenser,

Ifc Cooled Beam,

Ifc Cooling Tower,

Ifc Electric Generator,

Ifc Electric Motor,

Ifc Engine,

Ifc Evaporative Cooler,

Ifc Evaporator,

Ifc Heat Exchanger,

Ifc Humidifier,

Ifc Motor Connection,

Ifc Solar Device,

Ifc Transformer,

Ifc Tube Bundle,

Ifc Unitary Equipment) )

SUBTYPE OF (Ifc Distribution Flow Element) ;

END_ENTITY;

7.2.2组合电器 (Ifc Composite Apparatus)

7.2.2.1实体定义

组合电器 (Ifc Composite Apparatus) 定义了变电系统中的组合电器设备。

7.2.2.2属性定义

Pre Defined Type:预定义类型。从功能类型上将组合电器进一步细分为GIS组合电器、HGIS组合电器等。

7.2.2.3 EXPRESS描述

ENTITY Ifc Composite Apparatus

SUBTYPE OF (Ifc Energy Conversion Device) ;

Pre Defined Type:OPTIONAL Ifc Composite Apparatus Type Enum;

WHERE

Correct Predefined Type:

NOT (EXISTS (Predefined Type) )

OR (Predefined Type<>Ifc Composite Apparatus Type Enum.USERDEFINED)

OR

( (Predefined Type=Ifc Composite Apparatus.Type Enum.USERDEFINED)

AND EXISTS (SELFIfc Object.Object Type) ) ;

Correct Type Assigned:

(SIZEOF (Is Type By) =0)

OR

(‘IFCELECTRICALDOMAIN.IFCCOMPOSITEAPPARATUSTYPE’

IN TYPEOF (SELFIfc Object.Is Type By[1].Relating Type) ) ;

END_ENTITY;

7.2.3箱式所 (Ifc Box Type Substation)

7.2.3.1实体定义

箱式所 (Ifc Box Type Substation) 定义了变电系统中的箱式所设备。

7.2.3.2属性定义

Pre Defined Type:预定义类型。从功能类型上将信号终端进一步细分为变电所、分区所、开闭所等。

7.2.3.3 EXPRESS描述

ENTITY Ifc Box Type Substation

SUBTYPE OF (Ifc Energy Conversion Device) ;

Pre Defined Type:OPTIONAL Ifc Box Type Substation Type Enum;

WHERE

Correct Predefined Type:

NOT (EXISTS (Predefined Type) )

OR (Predefined Type<>Ifc Box Type Substation Type Enum.USERDEFINED)

OR

( (Predefined Type=Ifc Box Type Substation Type Enum.USERDEFINED)

AND EXISTS (SELFIfc Object.Object Type) ) ;

Correct Type Assigned:

(SIZEOF (Is Type By) =0)

OR

(‘IFCELECTRICALDOMAIN.IFCBOXTYPESUBSTATIONTYPE’

IN TYPEOF (SELFIfc Object.Is Type By[1].Relating Type) ) ;

END_ENTITY;

7.3属性集定义

7.3.1 Pset_Composite Apparatus Type Common

属性集名称:Pset_Composite Apparatus Type Common。

适用的实体:Ifc Composite Apparatus。

描述:组合电器通用属性集。

属性列表:见表7.1。

7.3.2 Pset_Box Type Substation Type Common

属性集名称:Pset_Box Type Substation Type Common。

适用的实体:Ifc Box Type Substation。

描述:箱式所属性集。

属性列表:见表7.2。

7.3.3 Pset_Box Type Substation Type Substation

属性集名称:Pset_Box Type Substation Type Substation。

适用的实体:Ifc Box Type Substation。

描述:箱式变电所属性集。

属性列表:见表7.3。

7.3.4 Pset_Box Type Substation Type Sub Section Post

属性集名称:Pset_Box Type Substation Type Sub Section Post。

适用的实体:Ifc Box Type Substation。

描述:箱式开闭所属性集。

属性列表:见表7.4。

7.3.5 Pset_Box Type Substation Type Section Post

属性集名称:Pset_Box Type Substation Type Section Post。

适用的实体:Ifc Box Type Substation。

描述:箱式分区所属性集。

属性列表:见表7.5。

7.3.6 Pset_Ifc Protective Device Type Switching Cabinet

属性集名称:Pset_Protective Device Type Switching Cabinet。

适用的实体:Ifc Protective Device。

描述:开关柜属性集。

属性列表:见表7.6。

7.3.7 Pset_Ifc Unitary Control Element Type Secondary Device Panel

属性集名称:Pset_Unitary Control Element Type Secondary Device Panel。

适用的实体:Ifc Unitary Control Element。

描述:二次屏属性集。

属性列表:见表7.7。

7.3.8 Pset_Ifc Electric Distribution Board Type Distribution Board

属性集名称:Pset_Electric Distribution Board Type Distribution Board。

适用的实体:Ifc Electric Distribution Board。

描述:配电屏新增属性集。

属性列表:见表7.8。

8接触网

接触网模型基础数据架构由构件 (Ifc Element) 和端口 (Ifc Port) 组成。

其中, 部分接触网构件采用IFC4中已有类型或已有类型的预定义类型, 其余构件通过增加类型或预定义类型的方式进行扩展, 具体如下:

(1) 铁路四电公用部分参见本标准第4章节。

(2) 接触导线、电缆分别采用IFC4中Ifc Cable SegmentCONDUCTORSEGMENT、Ifc Cable SegmentC A B L E S E G M E N T;承力索、附加导线等各类绞线采用I F C4中I f c C a b l e S e g m e n t类型, 并新增预定义类型STRANDEDSEGMENT (绞线段) 。

(3) 接触网腕臂、附加导线肩架采用IFC4中Ifc Cable Carrier Segment类型, 并新增预定义类型CANTILEVER (腕臂) 、SUPPORTOR (肩架) 。

(4) 接触网支柱基础、拉线基础采用IFC4中Ifc Footing类型。

(5) 接触网支柱采用IFC4中Ifc ColumnCOLUMN。

(6) 硬横梁采用IFC4中Ifc Element AssemblyBEAM_GRID;大限界框架采用IFC4中Ifc Element AssemblyBRACED_FRAME。

(7) 电缆接头及终端、线缆类金具采用IFC4中Ifc Cable Fitting类型。

(8) 接触网隔离开关采用IFC4中的Ifc Switching DeviceSWITCHDISCONNECTOR。

(9) 避雷器采用IFC4中Ifc Protective DeviceVARISTOR。

(10) 线缆附属构件 (Ifc Cable Auxiliary) 为新增实体, 继承自流配件 (Ifc Flow Fitting) 。其预定义类型包括下锚补偿装置、拉线、吊弦、电连接及中心锚结。

接触网构件EXPRESS-G如图8.1所示;牵引变电—接触网—电力机车—回流配送关系如图8.2所示;接触网系统结构组成如图8.3所示。

8.1类型定义

8.1.1线缆附属构件类型 (Ifc Cable Auxiliary Type Enum)

Ifc Cable Auxiliary Type Enum是线缆附属构件类型枚举, 从功能的角度定义线缆附属构件的类型。

新增枚举项定义:

ANCHORCOMPENSITON:下锚补偿装置;

BRACINGWIRE:拉线;

DROPPER:吊弦;

ELECTRICCONNECTION:电连接;

MIDPOINTANCHOR:中心锚结;

USERDEFINED:用户自定义;

NOTDEFINED:未定义。

EXPRESS描述:

TYPE Ifc Cable Auxiliary Type Enum=ENUMERATION OF

(ANCHORCOMPENSATION,

BRACINGWIRE,

DROPPER,

ELECTRICCONNECTION,

MIDPOINTANCHOR,

USERDEFINED,

NOTDEFINED) ;

END_TYPE;

8.2实体定义

8.2.1流配件 (Ifc Flow Fitting)

8.2.1.1实体定义

由于在流配件下需要新增线缆附属构件实体 (Ifc Cable Auxiliary) , 因此流配件需要被重新描述。

8.2.1.2属性定义

流配件保持原有的属性不做改变。

8.2.1.3 EXPRESS描述

ENTITY Ifc Flow Fitting

SUPERTYPE OF (ONEOF

(Ifc Cable Auxiliary,

Ifc Cable Carrier Fitting,

Ifc Cable Fitting,

Ifc Duct Fitting,

Ifc Junction Box,

Ifc Pipe Fiiting) )

SUBTYPE OF (Ifc Distribution Flow Element) ;

END_ENTITY;

8.2.2线缆附属构件 (Ifc Cable Auxiliary)

8.2.2.1实体定义

线缆附属构件 (Ifc Cable Auxiliary) 定义了线缆系统中, 安装于线缆间或线缆两端, 起到连接、固定及提高载流性能等作用的线缆附属装置。

8.2.2.2属性定义

Pre Defined Type:预定义类型。从功能上将线缆附属构件进一步细分为下锚补偿装置、拉线、吊弦、电连接、中心锚结等。

8.2.2.3 EXPRESS描述

ENTITY Ifc Cable Auxiliary

SUBTYPE OF (Ifc Flow Fitting) ;

Pre Defined Type:OPTIONAL Ifc Cable Auxiliary Type Enum;

WHERE

Correct Predefined Type:

NOT (EXISTS (Predefined Type) )

OR (Predefined Type<>Ifc Cable Auxiliary Type Enum.USERDEFINED)

OR

( (Predefined Type=Ifc Cable Auxiliary Type Enum.USERDEFINED)

AND EXISTS (SELFIfc Object.Object Type) ) ;

Correct Type Assigned:

(SIZEOF (Is Type By) =0)

OR

(‘IFCELECTRICALDOMAIN.IFCCABLEAUXILIARYTYPE’

IN TYPEOF (SELFIfc Object.Is Type By[1].Relating Type) ) ;

END_ENTITY;

8.3属性集定义

8.3.1 Pset_Cable Carrier Segment Type Cantilever

属性集名称:Pset_Cable Carrier Segment Type Cantilever。

适用的实体:Ifc Cable Carrier Segment/CANTILEVER。

描述:腕臂属性集。

属性列表:见表8.1。

8.3.2 Pset_Cable Carrier Segment Type Supportor

属性集名称:Pset_Cable Carrier Segment Type Supportor。

适用的实体:Ifc Cable Carrier Segment/SUPPORTOR。

描述:肩架属性集。

属性列表:见表8.2。

8.3.3 Pset_Cable Segment Type Stranded Segment

属性集名称:Pset_Cable Segment Type Stranded Segment。

适用的实体:Ifc Cable Segment/STRANDEDSEGMENT。

描述:绞线段属性集。

属性列表:见表8.3。

8.3.4 Pset_Insulation Device Type Insulation Equipment

属性集名称:Pset_Insulation Device Type Insulation Equipment。

适用的实体:Ifc Insulation Device/INSULATIONEQUIPMENT。

描述:绝缘器件属性集。

属性列表:见表8.4。

8.3.5 Pset_Insulation Device Type Insulatorltage P_SINGLEVALUE/Ifc Ele stance P_SINGLEVALUE/Ifc Po

属性集名称:Pset_Insulation Device Type Insulator。

适用的实体:Ifc Insulation Device/INSULATOR。

描述:绝缘子属性集。

属性列表:见表8.5。

8.3.6 Pset_Cable Auxiliary Type Common

属性集名称:Pset_Cable Auxiliary Type Common。

适用的实体:Ifc Cable Auxiliary。

描述:线缆附属构件通用属性集。

属性列表:见表8.6。

8.3.7 Pset_Cable Auxiliary Type Anchor Compensation

属性集名称:Pset_Cable Auxiliary Type Anchor Compensation。

适用的实体:Ifc Cable Auxiliary/ANCHORCOMPOSATION。

描述:下锚补偿装置通用属性集。

属性列表:见表8.7。

8.3.8 Pset_Cable Auxiliary Type Bracing Wire

属性集名称:Pset_Cable Auxiliary Type Bracing Wire。

适用的实体:Ifc Cable Auxiliary/BRACINGWIRE。

描述:拉线属性集。

属性列表:见表8.8。

8.3.9 Pset_Cable Auxiliary Type Dropper

属性集名称:Pset_Cable Auxiliary Type Dropper。

适用的实体:Ifc Cable Auxiliary/DROPPER。

描述:吊弦属性集。

属性列表:见表8.9。

8.3.10 Pset_Cable Auxiliary Type Electrical Connection

属性集名称:Pset_Cable Auxiliary Type Electrical Connection。

适用的实体:Ifc Cable Auxiliary/ELECTRICCONNECTION。

描述:电连接属性集。

属性列表:见表8.10。

8.3.11 Pset_Cable Auxiliary Type Mid Point Anchor

属性集名称:Pset_Cable Auxiliary Type Mid Point Anchor。

适用的实体:Ifc Cable Auxiliary/MIDPOINTANCHOR。

描述:中心锚结属性集。

属性列表:见表8.11。

一种动漫游数据库存储模型设计 篇4

动漫游(Animation Comics Game-ACG),就是对动画(Animation)、漫画(Comics)、游戏(Game)三者的简称。而由于电脑技术的发展,主要的动漫游产品便是动画片和动漫游戏。它们虽然不是同一时期的产物,并且单独出现时,还未能显现改写时代文化的巨大能力,但是在本质上他们有着高度的统一,那就是对于虚拟角色和虚拟环境的创造,在他们的受众之间建立了精神上的沟通渠道。在上世纪90年代的日本,此三项产业已经紧密的结合,而现在的中国,动漫游(ACG)相关产业还有待发展。

本文尝试从数据库的底层开始,重新构造数据库存储模型。建立一种适用于动漫游并且对多媒体数据进行实时操作的数据库存储模型。在本文数据模型设计中,主要涉及到的是Hash桶存储技术和T树索引技术。

1 需求分析

1.1 数据实时性需求

动漫游中数据大多数为多媒体数据,并且主要是图像、声音和动作,数据的大小从几十k到上百兆不等。而人肉眼认为对于在0.6秒内的图片切换是连续变化的,同时在游戏方面来说,玩家对于游戏人物操作,有许多外部的指令。每个动漫游的角色是由图像、动作和声音组成,在600毫秒之内,需要完成从发出指令到指令执行、编译以及最后到数据查找和读取,然而留给数据操作的时间在其中是很少的。

1.2 数据和表的需求

基于动漫游数据特点的分析,在数据库存储模型中,主要需要一个角色实体和多媒体数据的三类数据实体。

对于一个角色实体来说,它需要角色ID、角色名称、角色图片、角色声音、角色动作这几个属性。

一个多媒体数据实体需要数据名称、数据大小、数据类型、数据文件扩展名、在磁盘文件中的存储位置以及额外信息说明等属性。

角色与数据实体之间的关系为:角色调用多媒体数据。具体如图1所示。

如此则需要一个角色表和针对多媒体数据的数据说明信息表。角色表依次调用数据说明信息表中的图像说明信息,声音说明信息以及动作说明信息。最后通过数据说明信息表来具体调用磁盘上相应的多媒体数据。

1.3 内存信息表与磁盘数据映射需求

动漫游数据库存储模型中的多媒体数据是存储在磁盘的数据存储文件中,而有关于多媒体数据信息数据说明信息表则运行在内存中。在数据说明信息中查询数据信息,比如获取所需数据存储位置,再对磁盘数据进行实际的存取操作。如此,就需要建立数据说明信息表与磁盘存储的数据文件之间的映射关系,进而实现对原始数据的快速读取与维护操作,提高游戏的响应速度。同时可以通过数据说明信息表与原始数据的映射关系,快速定位相关多媒体数据的存储位置,便于开发人员通过数据说明信息表直接管理相关多媒体数据。

2 数据库存储模型设计

2.1 数据表设计

数据说明信息表:数据名,类型,大小,扩展名,存储位置,数据描述。

考虑到多媒体数据的特点,为了满足游戏的实时性需求,在数据库存储模型设计中,结合了内存数据库的设计,分别在数据库中建立图像、声音、视频等数据的原始数据存储区,同时在内存中建立一个针对图像、声音、视频等数据的数据信息表,每一条在该表中的元组代表了这一类的一个多媒体数据并且具有详细的描述,具体包括了数据名称、数据大小、数据类型、数据扩展名、在磁盘上的存储位置以及对于原始存储数据的描述信息。通过这个数据信息说明表,应用程序对与数据的查询、存储等过程将会直接在内存中进行,甚至于数据操作的中间结果也会保存在内存中。这样一来,减少了大量的磁盘I/O操作,同时提高了对于数据库的访问速度。通过数据说明信息表,有利于游戏开发人员对于相关地多媒体数据进行直接地管理。数据库存储模型中数据说明信息表的结构如图2所示。

2.2 表存储结构设计

设计一个结构体,成员包括个属性的元组值,将这一结构体对象作为一条记录。一个数据表中有多条记录,将这些记录设计成为成一个链表存储结构。当有新的记录需要添加时,只要重新生成一个关于该结构的新的对象,将该对象的各个成员变量进行赋值,然后将新的对象记录添加到链表的尾部即可。举例数据说明信息表存储结构如图3所示。

2.3 存储结构设计

由于多媒体数据是以“桶”式存储,分为三个目录,X个桶,Y个数据块。数据文件命名为三级命名“类型名_分类名_角色名”,在这里Hash函数是使用除留余数法来设计。同时对于文件名的数值转换,本文利用hashcode来实现,并保障数值的唯一性。由于用hashcode转化后的值有可能是负数,所以对于用hashcode转换的数值需要保证为正整数,即是用0x7FFFFFFF与转换值做与操作。

具体Hash函数设计如下:

(1)确定多媒体文件的类型:查找“类型名_分类名_角色名.jpg”,“目录”分为图片、声音、动作。根据“目录名”来确定多媒体存储文件的目录。

(2)一级Hash函数:

H1(分类名)=(hash(分类名)&0x7FFFFFFF)mod X=x

所以该文件存储在x号桶。

(3)二级Hash函数:

H2(含义名)=(hash(角色名)&0x7FFFFFFF)mod Y=y

所以该文件存储在x号桶中的的第y个数据块。

该文件的存储地址是Addr(文件名)=Addr(x桶)+y*Size(数据块)。

最后将该地址结果保存在相应多媒体的数据说明信息表中,作为该表的存储位置属性值,以后在存取操作是可以方便地查找。

对于Hash方法来说,最理想的是“一次性定位到关键词对应的地址”。但是利用Hash方法最常见的缺点就是对于不同关键字有可能产生冲突,就是当:

如此,产生冲突的key1和key2关键字被称为同义词。然而在Hash函数设计中,冲突的发生是无法避免的,所以只能尽量减少冲突发生的概率。

2.4 索引设计

对于数据的查找,主要是通过数据说明信息表的查找,而索引时数据说明信息表主要查找方式。索引与数据说明信息表如图4所示。

传统的T-树由插入算法实现,而T-树索引主要的挑战是结点操作时的平衡操作。快速构建是对原有算法的改进,其不需要多次旋转。快速构建算法:

(1)取出表中索引列和对应的行号,将其放入临时数组。

(2)按索引列增序对临时数组进行排序。

(3)去掉临时数组中的重复数据或其它的处理。

(4)将就序列分块并且将平均分配关键码到每块,有序块形成新的序列。

(5)按层构建T-树索引。先中间,在左子树,最后右子树。

该方法有利于按给定序列得到T-树,旋转起来更适合于只在已有树上的操作。

2.5 内存信息表与硬盘数据的映射

在内存中建立一个针对各类多媒体数据的数据说明信息表,该表保存了原始存储数据的说明信息数据,具体包括了数据名称、数据大小、数据类型、数据扩展名、在磁盘上的存储位置、以及对于原始存储数据的描述信息。在数据库存储模型底层,以图片文件为例,针对图片数据的插入、删除和查询操作,建立与存储在Resource目录下的资源文件如下的映射关系。最终实现通过数据库功能来保存和管理游戏需要的大量多媒体素材,使得游戏具有可伸缩性和变化性,以增强游戏的互动效果。因此,需要在数据库存储模型中建立多媒体数据和数据信息表的映射关系,具体映射关系如图5所示。

3 模型实现

3.1 索引实现

对于T_tail索引来说,其具体的操作交由T_tail类中的成员函数来实现,主要操作包括:添加(索引生成)、查询、删除以及平衡旋转操作。

查询操作算法包括对关键字的查询以及对界限结点的查询操作。平衡旋转操作包括对T_tail索引结点的平衡性检查以及相应的旋转操作。而旋转操作包括左旋与右旋。

(1)索引添加算法

(1)获取经过Hash后的数据文件名以及其所在数据说民信息表中的元组记录指针,转步骤(2)。

(2)建立由获取的两个值为成员的关键类对象作为关键值,转步骤(3)。

(3)如果索引为空,将新建的关键值添加到索引,结束算法否则转步骤(4)。

(4)查找界限结点。

(5)如果没有找到界限结点,转步骤(6)否则转步骤(9)。

(6)判断查找路径上最后一个结点中是否有空间,如果有转步骤(7)否则转步骤(8)。

(7)将关键值升序插入此结点,转步骤(10)。

(8)重新生成新节点(针对步骤(5))或者Tail结点(针对步骤(9)),升序插入关键值,进行平衡性检查以及旋转,转步骤(10)。

(9)找到界限结点N,转步骤(6)。

(10)结束算法。

(2)界限结点查询算法(递归)

(1)获取关键字以及要查询的起始结点指针(初始值为头指针),转步骤(2)。

(2)若指针为空值,返回NULL,转步骤(5),否则转步骤(3)。

(3)当关键字小于当前结点的最小关键字时,对左孩子进行查找,转步骤(1),否则转步骤(4)。

(4)当关键字大于当前结点的最大关键字时,对右孩子进行查找,转步骤(1),否则转步骤(5)。

(5)当关键字大于当前结点的最小关键字并且大于当前结点的最大关键字时,找到界限节点,返回当前结点指针。

(6)结束算法。

(3)关键字查询算法

(1)获取关键字,转步骤(2)。

(2)若索引头指针为空值,返回NULL,转步骤(7),否则转步骤(3)。

(3)查找界限结点,转步骤(4)。

(4)如果没有找到界限结点,返回NULL,转步骤(7),否则转步骤(5)。

(5)在当前界限结点中查找关键字,如果指向当前结点的tail结点的指针不为NULL,则还要在当前结点的tail结点中查找,转步骤(6)。

(6)找到关键字,返回关键字所在数据说明信息表中的元组记录的指针,否则返回NULL,转步骤(7)。

(7)结束算法。

(4)索引删除算法

(1)获取关键字,查找界限结点转步骤(2)。

(2)如果没有找到界限结点,转步骤(10),否则转步骤(3)。

(3)在当前界限结点中查找关键字,转步骤(4)。

(4)如果没有找到关键字,转步骤(10),否则转步骤(5)。

(5)找到关键字,删除关键字所在关键值,转步骤(6)。

(6)若删除后,T节点为空,转步骤(7)否则转步骤(8)。

(7)t_ptr不为空,将tail节点中最大值移入T结点,转步骤(10)。

(8)删除此界限结点,进行平衡性检查以及旋转,转步骤(9)。

(9)若tail节点为空,将t_ptr赋值NULL转步骤(10)。

(10)结束算法。

3.2 界面管理系统实现

对于管理界面的开发工具,使用Visual Studio,开发语言为C++,工程项目为MFC。使用MFC对话框设计界面。管理界面主要功能有数据信息显示、添加数据、查询数据以及删除数据。所以对界面功能的实现主要集中于数据信息显示、添加数据、查询数据以及删除数据四个方面的实现。

(1)信息显示

通过MFC的List Control控件实现数据说明信息表的显示。在CpjlDlg::OnInitDialog()函数中对List Control控件进行初始化,将数据说明信息表的属性列初始化到List Control控件中。使用InsertColumn()函数添加列:Name、Size、Type、Extension、Path以及Describe。

(2)添加数据

在界面上添加Button1控件,将其命名为“添加”按钮。当单击“添加”按钮事件发生后,调用MFC自带的打开文件对话框。通过此对话框选择需要存储的原始数据打开,则通过Get PathName()函数立即获取原始数据文件的路径。并通过Manage类的对象将获得的原始数据文件的路径传入到Manage类的存储函数进行数据的存储操作。

(3)查询数据

在界面上添加Button2控件,将其命名为“查找”按钮;添加Edit Control控件,作为查找条件输入框,设为不可见;添加Button3控件,将其命名为“开始查询”按钮,设为不可见。当单击“查找”按钮事件发生后,显示Edit Control查找输入框以及“查找”按钮,当在查找输入框中输入文件名后,通过Get WindowText()函数获取输入值。然后点击“开始查询”按钮,就会通过Manage类的对象调用Manage类的查找函数进行数据的查询读取操作。

(4)删除数据

在界面上添加Button4控件,将其命名为“删除”按钮。当选择List Control控件中显示的某条数据说明信息表的元组记录,并且单击“删除”按钮时,通过GetSelectionMark()函数获取所选择Lis Control控件中记录行的行号,GetItemText()函数获取此行的第一列的数据,即数据文件名。然后通过Manage类的对象调用Manage类的删除函数进行数据的删除操作。

4 结束语

本文根据动漫游的特点,从数据库放入底层入手,进行数据库的物理结构设计,建立有关动漫游(ACG)的多媒体数据存取模型。该数据库存储模型的主要关注点以及设计特点就是一个字“快”,在运行于数据说明信息表上建立T-树索引,以实现对多媒体数据的快速定位工作;通过内存数据说明信息表与磁盘存储数据之间的映射机制实现多媒体数据的可视化操作,优化数据信息在磁盘中的组织方式、存储方式以及采用的相应的数据结构等实现数据的快速存取。

数据库管理界面主要是实现模型的可视化操作,主要实现的界面功能是添加、删除以及查询操作。经过界面的具体实现,与模型各功能相应的结合调试以及相关功能测试工作,已基本实现界面功能以及相应的模型功能。

参考文献

[1]黄金敢,潘敏.基于文件名的多媒体数据库管理系统开发[J].计算机工程与设计,2005,26(4):1048-1050.

[2]林肠,李航,徐学洲.关键业务中内存数据库的T树索引优化[J].计算机工程,2004,30(17):75-76.

[3]Domenico Beneventano,PSonia Bergamaschi,PClaudio Sartori.Description logics for semantic query optimization in object-oriented database systems[J].ACM Transactions on Database Systems,2003,28(1):1-50.

[4]王珊,肖艳芹,刘大为,等.内存数据库关键技术研究[J].计算机应用,2007,27(10):2353-2357.

矢量数据存储模型 篇5

半结构化数据是指那些结构隐含或无规则、不严谨的自我描述型数据,介于严格结构化数据(如关系数据库和对象数据库中的数据)和完全无结构的数据(如声音、图像文件)之间[1]。由于半结构化数据缺乏类型信息,只有有效地将其存储之后,才能对其进行索引及查询处理,从而方便管理,因此,半结构化数据存储策略将是一个十分重要的研究课题。

近年来大量国内外相关研究机构致力于半结构化数据的存储与查询处理的研究。目前,提出并实现了的存储技术主要有:文本文件方式、RDB方式及OODB等方式。其中,文本文件的存储方式存储难度较大,不利于数据的检索和管理。RDB存储方式运算效率低,即使一个非常简单的查询也将会产生较多的联结。OODB存储方式在事先不知道数据的类型信息时,数据加载的代价可能会很高,并且一旦类型发生了变化,将会导致代价更高的模式更新,而半结构化数据正是一种缺乏类型信息,并且数据类型和模式不固定的数据,因此也不适合用OODB方式存储。

针对以上各种方式的局限性,本文提出一种动态树结构的半结构化数据存储模型,以有效解决半结构化数据类型和模式不断变化的问题,并将此模型映射到关系表中,实现了半结构化数据在关系数据库中的存储与查询。

1 半结构化数据描述模型

在将半结构化数据存储之前,首先要找到一个高度灵活的数据模型,它能够表达不同类型数据,并对半结构化数据的模式进行描述。而对此目前已经提出了多种描述形式,有基于图的描述形式和基于逻辑的描述形式。在这里采用比较有代表性的基于图的OEM模型。

OEM是斯坦福大学Serge Abiteboul教授等提出的用来描述半结构化数据的描述模型。该模型中所有的实体均为对象,由表示对象的结点和带标签(label)的有向边构成[2]。每个OEM对象都可用一个4元组表示:(oid,label,type,value)。其中oid是对象的唯一标识。label是对象的标签描述,为一字符串表达对象的含义。type是对象类型,OEM对象类型有两类:原子对象和复杂对象。原子对象是不可再分的基本类型,具有integer、string等类型的值。复杂对象是对象引用的集合,每一个对象引用指向另一个对象,不失一般性。

现结合村镇土地审批流程处理中的相关数据,在分析了流程数据具有半结构性的基础上,构造出一个有关宅基地的OEM描述模型。

由于村镇土地流转业务复杂、审批处理流程标准不统一,会使相同的土地审批处理在各村镇间有着各异的流程,甚至因为某项政策的改变,同一个村镇的某项审批处理流程也会随之发生变动。比如同样一个关于宅基地申请的处理流程,有的村镇只需“农民申请”、“村委审议”和“乡镇政府审批”三个业务点组成,有的村镇还需“实地调查审核”这个业务点,即相同的流程数据可能具有不规则的结构,并可能随时处于变化之中,从而说明土地审批处理中涉及的流程数据具有半结构性。为简单起见,在一定程度上简化了对宅基地的描述,只对其部分主要属性进行了OEM模型表达,如图1所示,认为它由用户标识符、所有者、面积、宅基地申请审批流程以及宅基地建房审批流程描述,并且每个流程业务点也只列出其中比较重要的几个属性,例如规划主体(Subject)、规划操作(Operation)、规划客体(Object)等。其中,用户标识符由用户根据其不同的含义进行定义,例如此块宅基地记为zjd1。

2 半结构化数据的动态树存储模型

半结构化数据的模式是用于描述数据结构信息的,而不是对数据结构进行强制约束[3],但由于半结构化数据的模式与数据是混淆在一起的,为此模式抽取就成为找到半结构化数据中的结构,发现数据对象间关系,从而将其存储到关系数据系统中的首要步骤。基于这样的思想,本研究提出一种动态树存储模型,此模型可体现半结构化数据的模式信息,方便我们发现半结构化数据的结构。下面仍以图1为例,首先对半结构化数据的模式进行定义,明确模式抽取的目标对象,然后详细介绍如何利用层次结构思想和累加计数原则,生成具有半结构化数据模式的动态树存储模型。

2.1 模式的定义

模式定义的提出需要引入一些OEM相关概念知识,现结合图1给出几个定义和符号表示如下:

定义1 简单路径表达式spe 令li是对象引用中的一个标签,其中i=1,…,n( n≥1),则spe=l1, l2,…,ln就是一个长度为n的简单路径表达式。

定义2 最大简单路径表达式mpe 若有一个简单路径表达式集合{spe1,spe2,…,spen},对于某个spei在集合中不存在任何spei的超集,则称spei是该集合中的最大spe,记作mpe

例:ShengQ.PlanPoint.Subject是一个长度为3的简单路径表达式;集合S={ spe1=ShengQ.PlanPoint ;spe2=ShengQ.PlanPoint.Subject},则spe2即为该集合的mpe,ShengQspe1与spe2的共享前缀。

定义3 频繁简单路径表达式fpe spe出现在OEM模型中的个数,称作spe的支持度计数,记作sup(spe)。当sup(spe)≥min_sup(最小支持度阈值)时,spe就为频繁的spe,记作fpe

定义4 数据路径表达式dp 令Oi是一个对象i=0,1,…,n,对象Oi和标签li以逗号为间隔并交替出现的序列,即dp=O0, l1,O1,l2, …, ln, On, dp就称为一个源于O0的止于On的长度为n的数据路径表达式。

例:dp={1.ShengQ.4.PlanPoint.6.Subject.17},是一个源于1的止于17的长度为3的数据路径表达式。

半结构化数据的模式抽取是为了找到数据中的结构,发现数据对象间关系,因此对OEM模型中的连接对象要比对象本身更感兴趣。而根据上面的概念可知,spe要比dp更能反映半结构化数据的一般结构。为此,将待抽取的数据模式定义为OEM中所有频繁的最大简单路径表达式(mpe)[4]。

2.2 生成具有层次结构的最大简单路径表达式集合

为了找到OEM中所有频繁的mpe,本文需首先试图生成一个由所有mpe构成的集合。由于OEM模型具有层次性,所以可充分利用深度优先遍历的优势,对图1中的OEM模型进行深度优先遍历,找出所有mpe并生成集合。借鉴文献[4]提出的分层结构的思想,可有效解决OEM模型的分支问题。因此本文同样采用此思想,将遍历得到的mpe添加层次标记,从而生成一个具有层次结构的mpe集合,记作S。这样,图1中的OEM模型经深度优先遍历之后,即可生成集合S{uid1-1,Area1-2,Owner1-3,ShengQ1-4.PlanPoint2-1.Subject3-1……}。

2.3 构造动态树结构的存储模型

得到集合S之后,便期望从中找到所有频繁的mpe,即提取出半结构化数据的模式。为此本研究提出一种累加计数原则,将S中各个元素mpe依次作为树的分支,最终生成一个动态树。由于通过此原则生成的树可方便地对数据的模式进行提取,找到半结构化数据的隐含结构,发现对象间的关系,从而将半结构化数据进行存储,于是本文提出将此树结构作为半结构化数据的存储模型。

根据OEM模型的基本特点并结合图1,可对树的结构进行如下定义:

接下来,根据上述结构定义,开始构造动态树。其中根节点的level-codecount都为0,label记为“ZJD”,id记录该宅基地的oid信息。而在将集合S中的各个元素mpe作为分支依次添加到树中时,需依据累加计数原则,以便日后提取数据的模式信息。即:添加mpe元素时,判断此元素所含的节点与当前树中的前一个节点之间是否有共享前缀,即它们的label是否相同。若无共享前缀(label不同),则创建新的分支,即直接将此元素添加到树中;若有共享前缀(label相同),则需再进一步判断它们的level-code的值是否相同。若level-code的值相同,则说明此时在添加的是OEM模型中的一个分支,即只需在原有节点下添加一个分支即可。例如:在添加元素ShengQ1-3.PlanPoint2-1.Object3-3时,因为当前树中的前一个元素为ShengQ1-3.PlanPoint2-1.Operation3-2,判断出它们的label (ShengQ.PlanPoint)以及level-code(1-3和2-1)值都相同,说明此时添加的是PlanPoint节点的一个分支,只需在原有节点PlanPoint:2-1:16:1下添加Object:3-3:19:1这一分支。若判断它们的level-code值不同,则说明此时添加的元素与之前节点不是兄弟节点,则count值加1,并将此元素涉及到的每个节点添加一条新纪录,记录保存着labellevel- codeidcount的新值,进而转入开始处理新的分支。例如:在添加元素ShengQ1-3.PlanPoint2-2.Subject3-4时,判断出其与当前树中的前一个元素ShengQ1-3.PlanPoint2-1.Object3-3的label值相同,但level-code值不同,因此说明此时在添加的是一个新的分支,需要为PlanPoint节点添加一条PlanPoint:2-2:7:2的新纪录。依此类推,直至集合S中的所有元素添加完毕,此时一个由mpe构成的树就构造完成。

为了节省空间,对构造出的树又做了进一步的改进:将每个结构节点的定义信息level-codeid以及count等作为一个元素依次链成一个以各相应节点label为名字的队列。具体改进过的树结构如图2所示。

根据累加计数原则可知,通过此树各节点的count值即可方便地找出所有频繁的mpe,抽取出半结构化数据的模式,发现数据的结构。

该存储模型除了可方便我们提取数据的结构信息以外,还有着动态性,可随时方便地进行更新,以适应半结构化数据的高度灵活扩展和不规则性。比如从图2可以看出,此时的宅基地建房审批流程是由“农民申请宅基地使用权”、“村委会对农民提交材料复核”、“镇土地管理所现场勘测宅基地”以及最终的“县级政府正式批准宅基地建房”这4个业务点组成。但若某村镇的宅基地建房申请审批处理中,又规定建设单位或个人必须在用地经批准后,要由镇土地管理所现场验线,核实无误后方可施工,为此需要对宅基地建房申请审批流程增加“镇土地管理所现场验线”这个业务点,则只需在图2所示的树结构基础上,对JianF下的PlanPoint节点及其分支节点各添加一条记录:{PlanPoint:2-8:38:5;Subject:3-22:39:5;Operation:3-23:40:5;Object:3-24:41:5},而无需改变整个树结构。

由此可见,借助此动态树的存储模型,即可方便地发现半结构化数据的结构,又可实现半结构化数据的动态存储,解决其往往不规则,并且经常处于变化之中的问题。

3 半结构化数据的存储与查询

3.1 半结构化数据的存储

生成存储模型后,下一步需要解决的问题就是半结构化数据如何进行物理存储。由于关系数据库技术已发展成为一种成熟的数据库技术,所以若能利用关系数据库来存储半结构化数据,就可重用关系数据库的查询优化器和事务处理机制,以保证半结构化数据的一致性和完整性[5]。为此,本研究继续提出将生成的动态树存储模型映射到关系表中,以实现半结构化数据的存储。

首先,根据存储模型中节点的性质,将各节点划分为两类:模式节点和数据节点,对这两类节点将分别采用不同的方式映射到关系数据库中。为此,需要对存储模型中各节点的属性数据所具有的结构程度进行简单的判断,即根据节点出现的数目决定将该节点转化数据节点或模式节点。当节点数目大于某个阈值T1时,则将其定义为模式节点;否则,视为数据节点。阈值T1的确定必须合理,如果T1的取值太小,有可能形成大量元组数目较小的关系,从而影响数据存储和处理的效率;T1的取值过大,则不能充分地发挥出这种存储模型的优势。

判断出节点类型后,就可对这两类节点将分别采用不同的方式映射到关系数据库中。其中,由于数据节点和OEM描述模型中的数据节点类似,用来表示源数据中结构松散的数据。所谓“松散”是指这类节点常以属性值的形式出现在OEM描述模型中,而在存储模型中,也表现为叶节点,用来描述模式节点,因此它们大多数可以作为属性保存在对应模式节点的主关系表中。

根据节点划分规则可知,模式节点可理解为OEM描述模型中由类型相近的数据节点组成的集合,对于模式节点的存储是本研究存储映射工作中的难点和重点。每个模式节点都有一个对应的主关系表和从属关系表,用来保存集合中各源数据节点的相关信息。

在模式节点主关系表中,由于源数据节点在主关系表中唯一对应一个元组,因此可以用源数据节点的本身id作为主键。而该表中的其他属性域用来保存集合中多数节点的共有属性值,即某属性出现的次数较频繁,就将其作为一个属性域,这样可以保证表中大多数的元组具有该属性域,避免存储的浪费。为此,本研究设定一个阈值T2,并设定T2=0.5,如果具有某属性值的节点数目与总的节点数目的比值较大(大于T2),即该集合中有过半的节点都有该属性,则在主关系表中添加此属性域;而对于那些少量节点独有的属性域则需要创建单独的属性从属关系表。在该属性从属关系表中除了要保存那些少量节点的值和类型信息以外,还要根据节点队列中保存的child指针所指向的节点,保存这些节点的父节点id

模式节点从属关系表,用来保存模式节点之间的从属关系,即该表的属性域为连接模式节点的边的开始节点id和目标节点id。通常情况下,主关系表中的一个节点可对应其他主关系表中的多个节点,因此,在模式节点从属关系表中,源数据节点的id是该表的外键。节点id作为主关系表和从属关系表的主键和外键,在数据查询时,经常用来确定关系元组,因此可在主关系表和从属关系表的ID属性域上建立哈希索引。

根据以上的映射思想,并结合图2生成的存储模型,具体的映射过程及生成的表结构如下:

(1) 节点类型的划分 宽度优先遍历图2的存储模型,根据规则找出模式节点ZJD(宅基地)、Yewu_SQ(申请业务点)和Yewu_JF(建房业务点),其他节点视为数据节点。如表1、表2和表3所示。

(2) 模式节点主关系表和属性从属关系表的生成 分别对ZJDYewu_SQYewu_JF这三个模式节点生成各自的主关系表:ZJD_mainYewu_SQ_main以及Yewu_JF_main。在生成模式节点主关系表时,关键的步骤就是确定关系表的属性域,以Yewu_JF模式节点为例简略说明Yewu_JF_main属性域的确定过程。由于JianF分支下的PlanPoint模式节点的总节点数目为4,而Objectcount为3,判断具有此属性值的节点数目与总的节点数目的比值,显然3/4大于本研究设定的阀值T2(T2=0.5),则将Object添加到PlanPoint的主关系表的属性域中。而对于Date属性,其count为1,由于1/4小于0.5,则Date的值将保存在PlanPoint的属性从属关系表Yewu_JF_AttSub中,并根据图2中节点PlanPointDate保存的child指针,存储属性域YuanIdToId的值,以便日后能够对少量节点独有的属性进行查询。如表7所示。

(3) 模式节点从属关系表的生成 结合图2生成的存储模型,确定三个模式节点ZJDYewu_SQYewu_JF之间的从属关系,从而生成模式节点从属关系表ZJD_SubSQ_Sub以及JF_Sub。如表4、表5和表6所示。

(4) 建立索引 分别在ZJDYewu_SQYewu_JF的主关系表和从属关系表的ID属性域上建立哈希索引,方便数据的查询。

用关系表来存储半结构化数据必须保证不破坏或丢失原来数据的结构信息和数据信息,因此,除了要存储节点对象值之外,还要存储对象之间的关系。本研究在上述的存储映射规则中也注意了这方面的内容。从上面的存储映射规则可以看出,其中,模式节点的主关系表就是用来对节点对象的存储,而模式节点从属关系表和属性从属关系表都是对对象间关系的存储。

综上所述,本研究提出的这种存储方法将半结构化数据在很大程度上转化为关系数据,在转化的过程中既保证了半结构化数据的完整性,又没有对半结构化数据结构复杂、灵活易变的特点进行过多的限制,为利用半结构化数据的结构信息提供了有效途径。

3.2 半结构化数据的查询

通过上面的存储映射,已将半结构化数据存储到关系数据库中,因此日后对半结构化数据的查询就可转化为我们所熟知的关系表的查询,同时,也可应用传统的关系查询优化的思想和查询技术来选择具体的查询执行计划。

例如,要查询此块宅基地(uidzjd1)建房的流程,只需写基于关系的SQL查询语句:select Subject,Operation,Object from Yewu_JF_main where ID in (select SubId from JF_Sub where ID in (select SubId from ZJD_Sub where ID in (select ID from ZJD_main where uid=zjd1)))即可查询到此块宅基地的所有建房流程。同样,也可以对宅基地的其他属性信息进行查询。

由此可见,将此动态树结构的存储模型映射到关系表中之后,即可利用关系数据库系统对半结构化数据实现查询与分析处理。

4 应用实现

将本研究提出的动态树存储模型应用到村镇土地审批处理系统中,可有效地对土地审批处理过程中涉及的各流程数据进行动态存储,实现流程的动态定制。该实例系统的具体实现技术路线包括以下几步:首先,借助OEM模型针对不同村镇的实际情况进行流程数据的动态定义,以解决流程数据的描述问题。然后,利用本研究提出的思想,生成一个具有流程数据模式信息的动态存储模型。最后,将模型映射到关系表中,实现流程数据的动态存储。以此技术路线为准则,制定了系统流程图,如图3所示。

5 结束语

本研究遵循着从概念模型到逻辑模型,再到具体物理存储的思路,逐步研讨如何实现半结构化数据的存储与查询。首先借助OEM模型(概念模型),并结合模式的定义,构造出半结构化数据的动态树存储模型(逻辑模型),然后根据一定的映射规则,将生成的存储模型映射到关系数据库中,实现了半结构化数据在计算机内部的物理存储。该存储模型不仅能够体现半结构化数据的模式信息,方便抽取数据结构,还可针对半结构化数据类型信息缺乏、描述结构不严格且不断变化等特点,随时灵活地进行更新,克服了半结构化数据存储的不确定性。另外,将此模型应用到村镇土地审批处理系统中,有效解决了个性化流程数据的动态存储问题,实现了审批处理流程的灵活定制,通过实践证明此模型的可行性和有效性。下一步工作的重点将是半结构化数据的增量更新。

参考文献

[1]Stefankis E.Modelling semi-structured geographical data[J].Interna-tional Journal of Geographical Information Science,2003,17(6):517-546.

[2]Abiteboul S.Querying Semi-structured Data[C]//Proc.of ICDT Del-phi,Greece:[s,n.],1997.

[3]吕橙,魏楚元,张瀚韬.基于OEM模型的半结构化数据的模式发现[J].计算机工程与应用,2006,34:162-165,181.

[4]叶飞跃,蒙德龙,员红娟.一种用于存储与查询半结构化数据的新方法[J].计算机工程,2006,32(19):91-93.

矢量数据存储模型 篇6

为提高云存储数据中心的信息安全性, 并保证一定的可用性, 本文提出了一种动态分块的数据存储服务模型。

1.1 模型说明

(1) 模型中的各个数据中心可以是采用云存储技术的同一大型数据中心的不同存储区域, 也可以是在整个云资源池中不同地域但通过网络连接的各个相对独立的数据中心。

(2) 该模型认为一个独立的数据存储区域 (或数据中心) 是不安全的。将用户的私有数据进行重新编码, 并随机分出1/n部分数据, 存储在异地存储区域, 剩余部分存储在本地。若本地存储区域数据泄露, 则无法获得全部数据内容;泄露数据经过了重编码, 在缺少部分数据的情况下无法对原始数据还原。

(3) 数据中心之间建立两条双向的传输链路, 业务链路进行相互间业务需求的传输, 包括私有数据分出的数据块, 以及相互间业务请求的认证信息;数据传输链路进行不同数据中心备份数据的传输, 本地数据在异地数据中心进行n:1数据备份, n≥1。设立两条传输链路的目的是为了提高数据传输速率, 防止在业务高峰期产生数据拥塞。业务链路进行各数据中心间的业务请求及数据传输, 建立专用的数据传输链路。

(4) 各数据中心拥有不同的编码方式, 一个数据中心不知道另外一个数据中心的编码及存储机制;本地数据中心只对本地数据进行编码, 只负责管理存储在本地的各类数据。

(5) 本地数据中心在向异地数据中心请求获取存储在异地的本地数据块, 需要进行身份验证。若未通过身份验证, 则认为对方处于不安全状态。

(6) 各数据中心存储区域分为私有数据存储区、公共数据存储区、异地分块数据存储区和异地备份数据存储区。公共数据存储区为存储对各个用户都可见的数据存储区域;私有数据存储区存储本地数据中心客户的私有数据;异地分块数据存储区存储的是异地私有数据拆分出来的数据块;异地备份数据存储区为异地数据进行备份。

1.2 客户终端写信息过程

(1) 身份认证和数据拆分。数据中心A的客户通过身份认证后, 将要存储的私有数据发送到数据中心, 数据中心A首先将数据进行编码和数据拆分。拆分出的1/m数据块通过业务链路分别传送到数据中心B和数据中心C, 并建立路由信息。

(2) 数据备份和数据传输。数据中心B和数据中心C将该数据块存储到本地的异地分块数据存储区, 两者互为备份。拆分后剩余的 (m-1) /m部分数据, 存储在本地私有数据存储区, 并通过数据传输链路传输到数据中心D进行备份。备份数据可以在n处数据中心进行备份, 但不能在存有拆分出的1/m数据块在同一数据中心中。

1.3 客户终端读信息过程

(1) 公共数据的读取。数据中心A的客户在读取其公共数据时, 首先由客户发送数据读取请求。客户请求通过验证后, 将请求发送到公共数据存储区, 并将请求读取的数据发送给客户终端。

(2) 私有数据的读取。数据中心A的客户在读取客户私有数据时, 由客户发送私有数据读取请求。客户请求通过验证后, 一是将请求发送到本地私有数据存储区, 读取存储在本地的私有数据;二是通过异地存储的分块数据路由信息, 向数据中心B发送读取异地分块数据的请求, 通过数据中心间的身份认证后, 数据中心B将存储在本地的1/m数据块经由业务链路发送到数据中心A。数据中心A通过将本地的 (m-1) /m的本地存储数据块和1/m的异地存储数据块进行数据整合, 经过解码后发给客户终端。

2、存储模型的性能分析

2.1 安全性分析

该存储模型的安全性能提升主要在于客户数据分为了两部分, 存储在不同的数据中心中, 若一个数据中心发生数据泄露, 则泄露出的数据是不完整的, 其数据还原仅仅利用泄露的部分数据是无法实现的。

若要获得全部信息, 必须获得被拆分出去的部分数据块。假设各个数据中心被攻破的难度一样, 整个云环境下的数据中心有n个, 分出的数据块有k个备份, 为满足上述安全模型, n≥4, k≥2。在最好的情况下, 第一次就攻破含有拆分出去的数据块的数据中心, 其几率为k/n。一般情况下, 在攻破i (i≥2) 个数据中心能够获得所需数据块的概率为p (i) :

则在一个云存储环境下, 在上述模型中, 在攻破一个数据中心的情况下, 要获得完整的数据信息, 还要再攻破云中数据中心的平均个数为M:

根据式 (2) , 取几组 (n, k) 取值进行分析比较如下:

表1不同 (n, k) 取值分析对比

由表可以看出, 当n一定, k越小, M越大;当k一定, n越大, M越大。即在上述云存储环境模型中, 数据中心越多, 客户私有数据异地存储数据块的备份数越少, 则其安全性就越高。

2.2 可用性分析

在上述模型中, 数据中心可以进行数据的冗余备份, 当本地数据中心遇到故障或误删除等操作失误时, 可以从异地的备份数据进行读取。但必须注意的是, 由于信息安全性要求, 备份的同一私人数据分出的本地存储数据块和异地存储数据块不能在同一数据中心中备份。

2.3 数据服务性能

矢量数据存储模型 篇7

桌面级关系数据库引擎是一面向桌面级应用的、基于文件型存储的跨平台关系数据库系统。

数据存储模块由磁盘数据存储管理和内存临时数据存储管理组成。其中的磁盘数据管理又包括基本数据存储管理和大二进制数据存储管理两个子部分, 负责数据在磁盘存储中的存取:内存临时数据存储管理则黄鹂查询计算时的内存管理。

二、磁盘数据存储管理

1、磁盘数据存储管理实现的功能主要包括:

·在数据层次上管理数据库文件

·实现基本数据类型 (INTEGER、BIG INTEGER、DOUBLE、DECIMAL、CHAR、VARCHAR) 的存储, 而且需与操作系统平台无关

·实现大二进制数据类型 (BLOB) 的存储

·建立与维护数据库模式

·有较高的数据存储效率

2、数据库的组织

XSQL数据库引擎在磁盘上的数据存储采用如下设计:

1、一个数据库对应一个目录, 目录里存放数据库的各个文件;

2、一个数据库中所有系统表集中存储在一个基本数据文件中, 而用户自定义的表则是一张表对应一个基本数据文件 (存储基本数据类型的数据) ;

3、如果用户表中存在BLOB类型的字段, 则每个BLOB字段对应一个BLOB数据文件。

3、基本数据类型的存储管理

基本数据类型的存储管理是整个存储系统的核心部分, 需要处理数据库的建立与初始化、系统表的维护、用户表模式的建立与维护、用户表的打开与关闭和用户表的数据维护等核心的数据管理功能。由于功能实现起来相当复杂, 因此在这一部分中采用了分层的思想进行处理, 先实现一个基于文件的数据存储层, 负责底层的单一文件中的数据存储, 只支持基本的数据类型和表模式定义;在此基础上再将该种数据文件组织起来, 实现用户表的管理 (由类XSql Real Tabel实现) 和友好的用户接口等功能。限于篇幅关系, 这里着重叙述基于文件数据存储层的设计。

(1) 、数据文件格式

数据文件采用的存储方式是按列 (Column) 存储而不是传统的按行存储, 同时实现了高效的按行 (Row) 访问的接口, 兼顾了内部存储的灵活性需要和使用上的方便性需要。

(2) 、空间管理、错误恢复与原始表模式的更改

数据文件除了包含上述信息外, 没有额外的信息用于空间管理, 因为上述信息已经足以描述整个数据文件占用了多少空间, 同时文件也没有类似“空间值”那样的空闲空间管理机制。这样的简化设计好处很明显———减少信息冗余、增强鲁棒性、访问效率更高。

为了尽可能减少发生错误时导致整个数据文件损坏的可能性发生, 系统在更新数据时采用了两步做法来达到目的:首先的所有改动都在内存中保存, 只有当客户程序调用“commit”方法时才写入文件:修改的数据写入到数据文件时, 并不直接覆盖原有的数据, 而是写入到其它空余的空间中 (文件可以根据需要增长) 。通过这样的设计, 最大限度地降低了文件损坏的可能性 (我们在开发该模块时做了大量断电实验, 无一例出现文件内容损坏) 对于可能带来的空间冗余, 该模块提供了“com-pact”的方法用于瞬间完成。

(3) 、基本性能评估

由于数据文件的设计出发点是简单、快速和安全;没有类似B+树那样复杂的索引机制;只实现简单有效的CACHE机制;实现代码也尽可能短小, 因此整个模块的访问效率非常高。

三、内存临时数据存储管理

内存临时数据存储管理主要完成查询时中间临时表及最终查询结果的管理。由于在执行查询语句时对计算的效率要求很高, 而且有可能消耗大量内存, 因此有必要设计和实现一个高效的、可以控制内存消耗的临时数据存储管理模块, 文集部分完成的功能主要为:

·支持建立和维护表的结构

·能控制内存的消耗量, 当内存使用达到指定的定阈值时, 能自动换出到二级存储上;在需要时又能将二级的数据换入到内存中

·支持对记录的直接定位和随机访问

·支持对记录进行GROUP BY操作和ORDER BY操作

1、内存表的构成

内存表存储结构的实现上借鉴了虚拟存储系统的许多设计思想, 包括页表机制、页面调度机制以及地址变换机制等。同时, 内存表对用户屏蔽了分页请求机制, 提供了一个抽象基于游标的、线性的地址系统, 并提供方便的顺序和随机访问接口。

内存表是一个非常重要的基础设施, 作为聚集计算使用的元组容器, 通过构造分页式的二级存储结构, 从而达到聚集计算子系统绝对资源消耗的可控制、可配制性。

内存表内部维护一个指向当前记录的游标结构, 通过对游标的顺序、随机移动实现对记录的顺序、随机访问。当游标移动到一个位于外存上的Slot Set中的记录时, 内存表将自动把该Slot Set对换到内存中, 以提高访问的效率。

另外, 内存表内部需维护一个聚集函数表, 每个表项包括聚集函数名和聚集函数作用的字段的索引两部分。在Group By之后, 内存表将根据这个聚集函数表—进行聚集函数的计算。

2、Slot Set的构成

Slot Set由一组相邻的同, 长度一致的Slot组成。意为槽, 每个Slot由一个标识该Slot是否为空的状态位以及一段连续的内存区域构成。Slot的大小及个数可以在构造的时候加以指定。Slot可以用来, 但不局限于, 存放记录。

Slot Set支持对换操作, 即通过指定一个文件和偏移位置, 把一个Slot Set对换到外存上。

Slot Set支持对Slot的分配回收。为了实现空Slot和回收, Slot Set内部维护了一条空槽链表, 便于添加分配时复用空的Slot。

3、记录的构成

每条记录由紧凑存储的各个字段组成, 以定长格式存储。对于字符串类型的字段, 以最大长度存储。在实现的时候, 务必保证数据类型的平台独立性。记录存放于Slot中。

4、排序考虑

对元组依据属性分组, 是聚集计算的一个重要步骤。在一般的数据库中管理系统中, 如果在相应分组属性上建有簇集索引, 则对元组的分组就非常方便了。如果没有簇集索引, 大多数的DBAS也可以利用索引或者是哈希的函数把相同值的元组排列在一起, 实现对元组的分组。然而, 在本系统中, 系统对元组的索引缺乏支持, 另一方面, 数据库的属性字段类型众多, 要寻找一个对于各类类型均能达到较高效率 (冲突率较低) 的哈然函数非常困难, 而且这样哈希函数往往比较复杂, 哈希运算的效率反而降低了。

基于以上考虑, 在考虑聚焦计算时, 选择了使用对元组属性排序的方法来将它们分组, 并且, 这样的排序算法是独立的, 抽象的, 并且可以在需要对结果集进行ORDER BY操作时重用。由于内存资源是有限的, 在排序过程中对内存的消耗也不应该超过用户指定的范围。

四、小结

由上所述, 该模型在数据的存储、错误恢复、存储效率等方面已经可以基本满足桌面级应用的中小数据量 (≤10 万条记录) 的要求, 但是由于整个系统还缺少索引机制, 因此计算查询语句时, 如果数据量进一步增大和连接的表数目增多, 在没有索引的情况下反复进行顺序扫描, 会使用时间消耗就会激增, 性能将不可以接受。为此, 我们计划下一步的首要工作就是在该存储模型中增加和使用索引机制, 使得整个系统的效率得到质的提高。

摘要:本文介绍了一个自主设计的桌面级关系数据库引擎 (XSQL) 的数据存储模型, 该模型包括基本数据存储管理, 大二进制存储管以及用于查询计算机的内存临时存储管理等几部分, 该存储模型及整个关系数据库引擎已基本实现。

关键词:关系数据库,数据存储

参考文献

[1]王能斌数据库系统原。中国, 电子工业出版, 2000, 107-185

上一篇:招投标标下一篇:提高教学的有效性