面向数据的体系结构

2024-10-12

面向数据的体系结构(共12篇)

面向数据的体系结构 篇1

数据结构是一门重要的专业基础课,在计算机相关专业的教学体系中处于核心地位,是学习操作系统、数据库、编译原理、软件工程等课程的基础。早期的数据结构一般采用面向过程的程序设计语言描述,例如C语言或者Pascal语言。由于面向对象的方法能够更好地描述现实世界,因而面向过程的程序设计已逐步被面向对象的程序设计所取代。数据结构的描述也逐步采用面向对象的C++语言或Java语言。数据结构中涉及线性表、栈和队列、字符串、树和二叉树、图等诸多逻辑结构,每种逻辑结构具有特定的操作,并且元素的类型不确定,更适合使用面向对象的思想描述。由于数据结构理论性强,涉及大量的算法,学生普通反映较难,往往不能深刻理解各种算法的思想,不能根据实际需求设计并实现相应的算法。

针对上述问题,结合多年的教学经验,提出了面向对象的数据结构教学的一些改革方法,实践证明,这些方法可以有效地解决上述问题。

1 现状分析

数据结构是一门理论性很强的课程,在学习数据结构之前,学生一般只学习了计算机文化基础、C++语言等基础课程,对数据结构的作用理解的不够深刻,体会不到其重要性。课程中所涉及数据结构和算法较多,抽象性强,学习效果达不到理想要求,并且会直接影响到后序课程的学习。目前,数据结构的教学中存在的问题主要有以下几点:

1.1 前导课程的基础薄弱

在C++程序设计语言的学习过程中,由于受学时所限,一般会把教学重点放到基本的数据类型(例如整数、浮点数、字符等)、类和对象的特性、继承和派生等内容上。学生对指针、模板类等知识点掌握的不够熟练,而这些又恰好是描述数据结构的重点,导致有的学生看不懂类的ADT定义,无法读懂包括指针或模板类的算法[1]。

1.2 对数据结构的作用理解模糊,学习积极性不高

因为程序设计语言的教学重点一般为基本语法,所涉及的例子比较简单,使用的数据有时是简单的数据类型,有时是数组或结构体等。这些数据结构理解起来比较简单,学生体会不到复杂的数据结构的重要性。

1.3 对实践环节的重视不够

目前,数据结构的教学仍然采用传统的模式。教师讲授,学生听讲。每周安排一定的课时实践练习。教师在课堂上安排的实践作业,学生独立完成可能会存在困难。学生的自我约束力差,并且实践环节一般难于考核,导致理论和实践出现脱节的现象,同时实践环节不能正常完成会影响课堂讲授的效果,学生对算法的认识只停留在理论阶段,不能通过具体的实例与理论知识相互印证[2]。

1.4 面向对象的数据结构的学习资料缺乏

数据结构的学习资料绝大部分是使用面向过程的语言描述的,例如C语言。虽然面向对象的程序设计的学习资料较多,但和数据结构相相关的资料较少。目前面向对象的数据结构的教材主要为使用C++语言描述和使用Java语言描述的[3]。

2 面向对象的数据结构的教学方法

2.1 重点复习相关的基础知识

在课程正式开始之前,先了解学生对指针和模板类的掌握情况。针对学生掌握的比较薄弱的知识点,进行重点复习,并说明指针和模板类用于描述数据结构的重要作用。可以接合实例说明,例如顺序表对应的模板类Seq List的设计与实现。

2.2 将对象和数据结构相结合

每种逻辑结构都有相应的存储结构,例如线性表可采用顺序表或链表进行存储。而顺序表和链表都具有各自的属性和操作集合。此特点与类的对象的特点相统一。线性表中的元素具有相同的类型,但是并没有限定使用何种具体的类型。C++语言中的模板类可以描述类中元素类型不确定的类。使用模板类描述物理结构,能更好地体现面向对象的思想。例如使用模板类描述单链表结构[4],代码如下:

2.3 使用实例引导算法

数据结构涉及算法较多。如果直接讲解复杂算法的思想,学生会感觉到困难,不易理解。怎样引导学生带着兴趣和问题去学习是值得思考的问题。可以使用实例引导算法,例如快速排序算法,使用一个待排序序列进行快速排序,在排序过程时,将排序算法的思想穿插其中。然后再使用伪代码引入算法的描述。此方法可以降低授课难度,提高学生的学习积极性,改善授课效果。

2.4 使用对比分析法梳理相关的知识点

数据结构中有许多相关的知识点,在授课的过程中要引导学生进行对比和分析。例如,由于单链表从结点p出发无法访问到其前驱,因而引入了循环链表;由于循环链表从结点p出发访问其前驱的时间复杂度为O(n),因而引入了双向链表;双向链表从结点p出发访问其前驱的时间复杂度为O(1)。例如,在排序算法中,希尔排序可以看作是对直接插入排序的改进,快速排序是对冒泡排序的改进,堆排序是对简单选择排序的改进。

2.5 小作业和大作业相结合

作业是检验并加强听课效果的重要手段。每一节完成后,应该给学生布置比较容易实现的小作业。每一章完成后,给学生布置较有难度的大作业,并给予必要的指导。可将学生分成不同的小团队,进行协同开发。避免因为作业难度太大,学生无法独立完成的情况。

3 结束语

数据结构是计算机相关专业的核心的专业基础课,面向对象的程序设计已逐步替代了面向过程的程序设计。面向对象的语言更适用于描述数据结构。通过分析教学现状,提出了使用知识框图、实例引导算法、对比分析法、小作业和大作业相结合的几种教学方法。这些方法在授课的过程中明显改善了教学效果,具有一定的参考价值。

摘要:数据结构是一门核心的计算机专业基础课,其主要的描述语言已由C语言逐渐转变成C++。通过对课程教学现状的分析,将面向对象的思想融入数据结构的教学中,提出了教学改革的几个方法。通过使用对比分析法、实例引导算法、重视课程设计等,使学生更深刻地理解数据结构,有效地改善了教学效果。

关键词:面向对象,数据结构,C++

参考文献

[1]钟美.以培养应用型人才为目标的数据结构教学改革[J].计算机教育,2014(14):26-29.

[2]吕雅丽.面向对象的数据结构教学改革的研究与探索[J].现代企业教育,2012(10):123-124.

[3]王淮亭.数据结构实践教学探讨与实践[J].计算机教育,2009(12):133-134

[4]王红梅,胡明,王涛.数据结构(C++版)[M].2版.北京:清华大学出版社,2011:32.

面向数据的体系结构 篇2

在分析了现有典型空间数据模型的基础上,提出了一种面向生产的一体化空间数据模型.该模型将实体的几何和拓扑信息紧密联系在一起,具有较强的.空间表现力,能够实现空间数据的几何、属性和拓扑关系一致性的实时维护,并能支持GIS数据和制图数据的一体化生产.实践表明,采用该数据模型,有效地提高了空间数据生产的质量和效率.

作 者:徐立 刘海砚 黄海文 XU Li LIU Hai-yan HUANG Hai-wen  作者单位:徐立,刘海砚,XU Li,LIU Hai-yan(信息工程大学,测绘学院,河南,郑州,450052)

黄海文,HUANG Hai-wen(73615部队,江苏,南京210000)

刊 名:测绘与空间地理信息 英文刊名:GEOMATICS & SPATIAL INFORMATION TECHNOLOGY 年,卷(期):2009 32(4) 分类号:P208 关键词:空间数据模型   一致性维护   一体化生产   拓扑更新  

★ 一种基于人机结合思想的书本式地方文献索引编制方法

★ 面向对象的嵌入式系统设计方法

★ 面向对象的软件开发方法分析论文

★ 面向应用的地理空间数据整合方法研究

★ 阅读教学的一种好方法

★ 面向持续战域感知的近空间飞行器技术

★ 一种“假中断”现象及处理方法

★ 一种面向研究生的复合型实验平台设计与实现论文

★ 大气数值模式空间分辨率的确定方法

面向大数据的校园社交平台 篇3

课程格子是一款面向校园、基于课程表的移动社交产品,目前已经突破1300万注册用户。课程格子在帮助学生们了解课程安排的同时,还可以展开各种社交功能:除编辑创建课程表外,可以添加课程笔记、评价老师;与同学打招呼、聊天,认识更多新朋友;查看其他学校的课程安排,更容易蹭课;校园社区格子BBS,支持匿名发表内容,提供更多隐私保护等。李天放介绍说,在课程格子之前,没有类似的商业模式可以借鉴,因此很多功能都得靠自己研发,“必须要找到自己的方向”。课程格子有两个特色,一个是同学们很方便添加课程表后那种“WOW”的体验,一个是校园社交BBS。

其中,校园社交BBS是课程格子目前重点打造的特色功能。为什么BBS社区反而回归了90后的校园?李天放解释说,现在的90后反而更喜欢匿名社交,因为对于90后大学生来说,有的时候做自己很累,因此需要一个匿名的地方,展开校园社交。在内容审核方面,由于课程格子是开放注册,但只有提供实名认证的VIP用户才可以匿名发帖,因此BBS里不会出现比较乱的内容。

课程格子通过“课程表”这个校园的刚需吸引学生用户注册,提供便捷的用户体验,让用户在30秒即可定制自己的课程表,获得“WOW”的用户体验,再通过校园BBS黏住用户,吸引用户不断回头全用课程格子。“可能学生一周只有一半的时间在使用课程表,但使用校园BBS的可能性高达八九成。”李天放说。

接下来,课程格子准备提供校园O2O功能,作为课程表、校园社交BBS的下一步。

宋师伟新近加入课程格子,成为公司的CTO,课程格子的研发实力得到了强化。目前,课程格子有30余名员工,全部从事产品开发。虽然课程格子的下一步是校园O2O,但从李天放与宋师伟的背景来看,课程格子的目标远远不止于校园O2O,李天放的目标是要做一家市值超过10亿美元的公司。课程格子团队在大数据与云计算领域的深厚实力,将是课程格子长期的核心竞争力。

面向数据的体系结构 篇4

随着互联网与数字化信息获取技术的快速发展, 新的数据源不断涌现, 各种应用所产生的数据呈指数级增长。根据互联网数据中心监测, 全球数据量大约每两年翻一番, 预计到2020年, 全球的数据量将达到35 ZB, 预示着我们已经进入大数据时代。

大数据处理可分为三个阶段:数据获取与抽取、数据存储与管理及数据分析与挖掘。其中, 数据存储与管理负责把有潜在价值的海量数据进行表示、存储并提供数据关联、检索等操作, 为进一步进行数据的深度分析提供必要的支持。同时, 人们可以看到, 由于微博、社交网等互联网应用以及娱乐、媒体、医疗保健的蓬勃发展, 使图像、音频、视频、文本等数据大量涌现。据Gartner Group统计, 如今80%的数据为非结构化数据, 并且仍保持高速增长态势, 非结构化数据已逐渐成为大数据的主体。因此, 如何建立有效的非结构化数据管理平台, 已成为大数据处理相关研究中的一个核心问题。

非结构化数据包含复杂的内容, 并具有不同的结构特点, 传统关系数据库无论从描述能力上还是从管理数据的规模上, 都无法应对非结构化数据管理的要求。因此, 需要专门针对非结构化数据特点, 研究建立一种新的管理技术与平台。建立这种面向大数据的非结构化数据管理平台的关键技术包括: (1) 统一数据模型, 该模型将各种异构非结构化数据进行统一描述, 并且能够实现各种模态信息 (如语义特征、底层特征等) 的集成描述, 从而有效地支持大数据的检索与关联分析; (2) 分布式存储与并行处理模型与架构, 这种架构应具有高度并行化与可扩展性, 以保证大数据的处理效率。 (3) 查询语言与数据可视化等。查询语言和可视化数据展现, 是用户对大数据进行访问与分析的接口。查询语言应该能够准确表达用户的数据访问意愿, 支持灵活丰富的数据操作。

2 数据模型

数据模型是数据管理的核心, 关系数据库几十年来蓬勃应用与发展的基石, 正是E.F.Codd于20世纪70年代初成功提出的关系数据模型与数据理论。数据模型定义了数据描述结构、数据操作方法以及数据完整性约束条件。基于数据模型, 可以建立可扩展的数据存储模型, 使数据能够以某种结构和方式进行存储与读取;可以建立面向上层应用的灵活多样的数据操作模型, 支持用户对数据的高效访问。非结构化数据管理与传统结构化数据管理的目标是相同的, 即支持数据的永久保存、快速有效的数据读取操作, 从而有效地支持上层应用和用户的数据处理逻辑。因此, 在非结构化数据管理中, 建立有效的数据模型, 仍然是达到数据管理目标的核心和关键。现有的非结构化数据模型主要有关系模型、扩展关系模型、面向对象模型、E-R模型以及分层式数据模型等, 这些模型原本存在扩展性与复杂性方面的问题, 而在面向大数据时这些问题更加突出, 因此无法胜任大数据的管理。

非结构化数据例如文本、图形、图像、音频和视频等, 从内容上没有统一的结构, 数据是以原生态形式 (raw data) 保存的, 因此计算机无法直接理解和处理。为了对不同类型的非结构化数据进行处理, 所采用的基本思路是对这些非结构化数据进行描述, 基于描述性信息实现对非结构化数据内容的管理和操作。对于非结构化数据的描述, 目前有三类:基于关键字的语义描述;基于底层特征的描述;基于概念的语义描述。因此, 一个非结构化数据可以由基本属性、语义特征、底层特征以及原始数据四个部分构成, 而且四个部分的数据之间存在各种联系。

基于上述对非结构化数据的分析, 本文作者所在的课题组提出了四面体数据模型。四面体模型由一个顶点, 四个刻面和刻面之间的交线组成, 如图1所示。

四面体模型可以通过一个六元组表示:Tetrahedron= (V, BA, SF, LF, RD, CONJS) , 其中, V表示四面体的顶点, 并且也是BA, SF和LF的交点, 它标明了四面体的唯一性;BA是指四面体的基本属性刻面, 表示数据的基本属性, 这些属性不涉及数据的语义, 包括名称、类型、创建者、创建时间等;SF是指四面体的语义特征刻面, 表示数据的语义属性, 包括作者创作意图、数据主题说明等语义要素;LF是指四面体的底层特征刻面, 描述数据的底层特征, 例如图像的颜色、纹理、形状等;RD是指四面体的原始数据刻面, 表示非结构化数据的原始存储文件;CONJS是指一组衔接不同刻面的连接线。一条连接线表示两个刻面之间存在的联系。图2是一个图像的四面体描述示例。

四面体模型的特点是:语义特征与底层特征进行一体化表达的集成性;图像、文本、视频、音频等多种异构数据表达的统一性;支持语义特征、底层特征动态变化的可扩展性;简单性。基于四面体模型构建的数据管理平台, 将能够实现异构数据的统一存储与关联操作, 从而更好地支持大数据的深度处理。

大数据的重要价值, 体现在人们可以通过对数据的分析得到有用的知识。大数据管理平台在进行数据管理的同时, 也需要对这些知识进行管理。因此, 非结构化数据模型的进一步发展方向, 将是引入本体技术, 建立异构数据与多粒度知识一体化描述的数据-知识模型。

3 查询语言

目前, 海量非结构化数据应用 (如搜索引擎) 与用户的接口, 往往是通过关键词输入。这种方式简单, 但无法全面、准确表达用户的操作意图, 也不利于用户完成复杂的数据分析处理。因此, 面向大数据的非结构化数据管理平台, 需要建立一种查询语言, 支持用户的各种查询需求, 并使用户能够准确表达查询意图。基于四面体数据模型, 我们提供一种非结构化数据查询语言UQL。

UQL支持对非结构化数据的多种查询, 并提供数据定义和数据基本统计等功能。UQL的基本功能包括:按基本属性或语义特征的基本数据检索;根据用户输入的数据示例, 如一副图像通过底层特征匹配进行检索;结合基本属性、语义特征和底层特征的多模态关联检索;基于数据某个刻面信息检索出相关多种类型数据的多数据关联检索;实现对查询结果的聚类、分类、多维数据分析等智能检索;以及数据定义与数据统计等。上述各种检索可以嵌套复合, 构成对数据的综合检索服务。

在四面体模型中, 基本属性和语义特征都是用文本进行描述的。由于XML具有良好的扩展性, 因此采用XML来描述四面体模型中基本属性刻面与语义特征刻面。XQuery是目前广泛使用的XML数据查询语言。然而, UQL所支持的功能如底层特征查询、智能查询等在XQuery查询语言中都没有提供, 所以我们对XQuery查询语言进行扩展, 增加相应功能, 并略去部分不相关文法, 基于XQuery提出非结构化数据查询语言UQL。UQL文法的定义采用扩展巴科斯-瑙尔范式 (EBNF) 来描述。

UQL定义了执行数据查询、数据定义与数据统计三类操作的语句。其中查询语句Query语句是UQL的主要语句, 它的整体结构是对XQuery查询语言中的FLWOR表达式进行改写得到的, 其中省略let语句和orderby语句, 增加intelligence和filepath语句用来定义智能查询和实例查询。Query语句的描述如下:

Query Clause::=For Clause Where Clause Return Claus e Intelligence Clause?File Path Clause?

UQL的数据定义语句Define Clause, 通过指定数据类别和语义项的字段信息, 实现数据基本属性与语义特征的XML模式的个性化定制。UQL的数据统计语句Count Clause, 指定统计的数据所属类别以及相应基本属性约束条件, 实现按基本属性的数据统计功能。

UQL基于四面体模型, 提供语义或底层特征的单项检索、关联检索, 多类型数据的关联检索, 聚类等智能化操作, 能够支持上层应用对非结构化数据的操作。

4 分布式存储与并行处理架构

数据的分布式存储和并行化操作处理, 是大数据管理平台的核心技术之一。Map Reduce计算模型体现了分治算法的分而治之思想。Map把一个复杂的问题分解成多个子问题, 每个子问题都相对简单并可以独立处理;Reduce把各个子问题的处理结果进行合并。Map Reduce是适用于大数据存储与并行化处理的简单而有效的一种计算模型。我们基于Map Reduce模型, 提出了一种非结构化数据分布式存储与并行处理框架, 该框架由存储引擎和检索引擎组成, 如图3所示。

分布式存储引擎采用Map Reduce模型, 并基于Hadoop的HBase和HDFS实现。它的主要功能是基于四面体数据模型提取非结构化数据的基本属性、语义特征和底层特征信息, 并将这些信息连同原始数据存储在HDFS和HBase中。

存储引擎由Namenode和Datanode构成。Namenode通过Map操作将存储的数据分成若干子块, 并将这些子块分配给各个Datanode进行特征提取和数据永久保存的操作;同时Namenode会开启一项任务来追踪处理过程, 并在各子块存储完成后执行Reduce操作对结果进行合并。Namenode和Datanode的这种协同工作方式, 实现了大量数据的并行与分布式存储。

并行化检索引擎主要负责数据的快速查询, 是基于Map Reduce模型建立的Master-Slave并行化框架。Master负责管理所有Slave, 分解和分配具体检索任务, 并对检索结果进行有效整合;Slave模块负责对本地数据实行具体的检索任务并将结果返回给Master。通过Master的有效调度, 多个Slave可并行化执行检索任务, 从而实现检索并行化的处理架构。

由于Master可以实现任务的灵活分发和结果的有效整合, 多个Slave可以并行化执行任务且可灵活扩展, 因此该引擎具有很好的可扩展性和高效性。

5 结语

大数据的有效管理是实现大数据检索与分析处理的前提和基础。本文对面向大数据的非结构化数据管理平台的关键技术进行了分析, 论述了非结构化数据的四面体模型, 非结构化数据查询语言UQL, 以及基于Map Reduce的分布式存储与并行处理框架。上述技术在“核高基”重大专项项目研发的非结构化数据管理系统 (AUDR) 中得到了成功应用。AUDR目前已在航空工业、车载综合信息服务、医学、科技资源共享等四个重大行业和领域进行了示范应用, 取得了良好的效果。

摘要:大数据的有效管理是实现大数据处理的前提和基础。非结构化数据是当今大数据的主体。针对非结构化数据管理平台构造中的数据表示、数据操作与数据处理效率等关键问题, 提出并论述了四面体数据模型、非结构化数据查询语言 (UQL) 及数据分布式存储与并行处理架构, 并将上述技术在非结构化数据管理系统 (AUDR) 中进行了应用。

关键词:非结构化数据管理,四面体数据模型,非结构化数据查询语言,并行处理

参考文献

[1]Labrinidis A, Jagadish H V.Challenges and opportunities with big data[J].Proceedings of the VLDB Endowment, 2012, 5 (12) :2032-2033.

[2]Li W, Lang B.A tetrahedral data model for unstructured data management[J].Science China Information Sciences, 2010, 53 (8) :1497-1510.

[3]Chamberlin D, Florescu D, Robie J, et al.XQuery:A query language for XML[C]//SIGMOD Conference.2003:682.

面向对象工程数据模型研究 篇5

面向对象工程模板数据模型采用面向对象技术定义模板的组织结构,利用定义的模板描述语言(TDL)进行工程设计,一方面有效地组织工程设计中的各种数据,另一方面能够很好地模拟工程中的复杂对象,能表示其层次结构,支持动态的数据结构,在设计对象这一较高层次上进行管理。由于考虑了产品的设计工艺、制造工艺以及约束条件等信息,将设计中的各种信息、数据集成在面向对象工程模板中,从而使得设计人员在进行初期的功能设计和装配设计时就能保证产品设计的可行性及合理性,并及时发现设计中存在的各种问题;在设计结束阶段形成了以模板的版本号为根目录的整个产品的工程数据,在试验中取得了良好的应用效果。

下面给出一个模板整体框架,主要以注释方式给出模板含义的解释。

// 对象列表;

begin of object?

inherit?

basebox?shangdianban?gudinban?

aomo?aomo?

chongtou?chongtou?

……

part?

upmojia?shangmojia?daozhu? //上模座由上模架和导

柱组成

……

end of object

// 对象属性集合段;

begin of attribute?

default mobin.d 50 //模柄直径的默认值为50

table luodin3.d mobin d3 d=mobin.d

//螺钉3的d为模柄中的d3

字段,条件为模柄d

……

end of attribute

// 位置约束段;

begin of positon

luodin1 1? 95,45 //以第一种方式排列距中心

点x 坐标95,y坐标45

daohuald1 3? 30?0 //以第三种方式排列距中心

点x 坐标30,y坐标0

……

end of position

// 装配约束段;

begin of assemble

luodin?luodin1 ?shangmojia?shangdianban?gudinban?

//表示螺钉1连接上模座、上垫

板和固定板

……

end of assemble

……

//产品设计描述、版本等信息描述段;

begin of describe

name?luoliaomo

version?1.1.1

designer?wangjun

designdate?2002-05-25

……

end of describe

浅议面向对象的数据库系统 篇6

关键词:数据库;面向对象;新一代数据库管理技术

中图分类号:TP311.13文献标识码:A文章编号:1007-9599 (2010) 13-0000-02

Object-oriented Database System

Dai Xingmei1,Wang Chao2

(1.Suizhou Vocational and Technical College,Suizhou441300,China;2.

Computer Science Institute,China University of Geosciences,Wuhan430074,China)

Abstract:Object-oriented database system is object-oriented programming techniques and database technology product of the combination.Object-oriented database systems are the main features of object-oriented technology with encapsulation and inheritance,improves software reusability.As a third generation object-oriented database,the database can not be compared with the previous two generationsadvantages of the database.

Keywords:Database;Object-oriented;New generation database man-

agement technology

一、概述

面向对象数据库系统是面向对象的程序设计技术与数据库技术相结合的产物。面向对象数据库系统的主要特点是具有面向对象技术的封装性和继承性,提高了软件的可重用性。传统的关系模型,又称为平面关系模型。它在结构上是二维的,每个属性的数据类型是基本数据类型。关系模型的规范化最低要求是1NF条件,即属性值不可分解。面向对象的思路或称规范可以用于系统分析、系统设计、程序设计,也可以用于数据结构设计、数据库设计等。

二、面向对象数据库设计的特点

在如今信息大爆炸的时代,随着Internet应用的普及,用现有的关系型数据库已经无法描述现实世界的实体,而面向对象的数据库设计由于吸收了已经成熟的面向对象程序设计方法学的核心概念和基本思想,使得它符合人类认识世界的一般方法,更适合描述现实世界。

面向对象的数据库不仅在处理多媒体等数据类型时可以做到游刃有余,而且在应用系统开发速度和维护等方面有着极大的优越性,对于一些特定的应用领域,能较好地满足其应用需求。

随着许多基本设计应用(如MACD和ECAD)中的数据库向面向对象数据库的过渡,面向对象思想也逐渐延伸到其它涉及复杂数据的应用中,其中包括辅助软件工程(CASE)、计算机辅助印刷(CAP)和材料需求计划(MRP)。这些应用如同设计应用一样在程序设计方面和数据类型方面都是数据密集型的,它们需要识别于类型关系的存储技术,并能对相近数据备份进行调整。

三、面向对象技术在数据库中的实现

目前,最有影响力的数据库模型有:面向对象数据库模型(ODBMS)和对象-关系数据库模型(ORDBMS)。面向对象的数据模型(ODBMS)吸收了面向对象程序设计方法学的核心概念和基本思想,直接采用对象数据库模型来构造数据库系统,它是一个纯正的面向对象数据库系统。ORDBMS是面向对象技术与传统关系数据库技术相结合而形成的数据库关系。也可以说是一种扩展关系数据库,它具有一定的面向对象数据库特征。

基于以上两种数据库模型,面向对象数据库系统(OODBS)的实现一般有两种方式:一种则是对传统数据库进行改进,使其支持面向对象数据模型,另一种则是在面向对象的设计环境中加入数据库功能,这是纯的OODBS技术,但是因为两者支持概念差异较大,数据共享实现难度较大。将面向对象技术应用于数据库是解决当今许多新型数据库应用中遇到的问题的好办法,当前多数数据库生产商都在研发如何将面向对象技术应用到关系数据库中。将面向对象技术应用到关系数据库中可以有两种方式。

(一)把面向对象技术中的对象作为关系数据库系统中的一种新的数据模型

关系表中的属性值包含对象指针,对象数据的操作在关系数据库之外进行。把面向对象数据模型(ODM)和关系数据模型(RDM)结合起来,对关系数据库管理系统进行扩充,但对象查询功能受到一定的限制。

(二)把面向对象接口添加在关系数据库中。在关系数据库系统中增加一個对象到关系的转换器,将上层的面向对象模式转化为关系存储模式,存放到关系数据库中。这样,在面向对象的数据库中关系存储模型位于底层,数据库用户可以利用标准的面向对象数据库语言进行查询处理,用户输入的面向对象数据库语言被转换成关系数据库语言,从而对底层的关系存储模式进行查询等处理,同时将操作结果按照对象方式返回给用户。

四、面向对象数据库技术的发展趋势

(一)对象关系数据库管理系统。对象关系数据库管理系统既支持SQL语句,也支持面向对象技术,实现了传统数据库技术和面向对象技术的完美结合。这样既保留了原有关系型数据库系统,增加了通用性和兼容性,又可以实现两代数据库的平稳过渡。全球的数据库生产商争相研发这种数据库产品,数据库生产商竞争的一个焦点是如何在现有的数据库中加入面向对象技术。

(二)面向对象数据库管理系统。面向对象数据库管理系统以一种面向对象语言为基础,增加数据库的功能,主要支持持久对象和实现数据共享。利用类来描述复杂对象,利用封装方法来模拟对象行为,利用继承性来实现对象的结构和方法的重用。但是这种纯粹的面向对象数据库管理系统不能和现有的数据库结合起来,在扩展性和通用性方面受到限制。

(三)对象关系映射数据库系统。对象关系映射数据库系统是指在对象和关系之间建立一个映射,映射数据库系统作为中间件,使得数据源中的关系数据能够进入对象领域,并且作为对象供上层使用。

五、面向对象数据库技术的前景展望

面向数据的体系结构 篇7

关键词:大数据,信息与计算科学

1 前言

大数据 (Big Data) , 指的是所涉及的数据量规模巨大到无法通过人工, 在合理时间内达到截取、管理、处理、并整理成为人类所能解读的信息[1]。大数据开启了一次重大的时代转型, 是下一场信息变革的中坚力量, 它正在改变我们的生活以及理解世界的方式, 成为新发明和新服务的源泉[2], 可以应用在天文学、生物学、大社会数据分析、互联网文件处理、大规模的电子商务等各个方面。

今后对拥有大数据管理和分析能力的人才需求将快速增长, 需求岗位包括大数据系统管理员、大数据平台开发工程师、大数据系统架构师、数据分析师等。

目前国内高校人才培养不能支持大数据产业的需求。高校开展大数据背景下的教学改革也比较少, 比较著名的有北京航空航天大学2012年首开的大数据技术与应用硕士专业, 重庆邮电大学开展的“大数据时代计算机专业实验教学改革研究”, IBM与高校合作的“IBM新兴技术大学”等。

大数据时代需要分析数据及其与业务相结合的分析人才, 这与信息与计算科学专业的培养目标很好地吻合。结合专业背景和社会实际需求, 为未来的大数据市场培养一批熟练掌握大数据技能, 并擅长海量数据的采集、存储、管理、挖掘与分析等经验的人才, 是本专业发展的美好愿景。但信息与计算科学专业如何在保持数学类专业优势的情况下, 融合大数据时代的技术和思想开展实验教学改革, 培养学生动手能力、综合应用能力和独立操作能力, 是摆在我们面前的重要课题。

2 信息与计算科学实验教学体系现状与存在问题

信息与计算科学专业实验教学体系中存在的问题主要体现在三个方面:

(1) 专业理论课的实验中, 实验教学课时偏少, 实验从属于理论, 偏重于传统的演示性和验证性实验。实验内容僵化, 容易导致学生学习兴趣下降, 教学效果难以达到预期目标。

(2) 实验教学与贯穿于四学年的教学过程中, 呈现碎片化的特点, 缺乏知识的持续性和连贯性, 学生缺乏综合能力, 影响人才培养目标的实现。

(3) 缺乏双师型教师, 专业与社会联系不够紧密, 教师在实践教学方面缺乏经验, 知识结构还没有形成整合能力, 从实验教学到集中实践环节在实施方面缺乏有效控制[3]。

结合大数据时代对人才的需求和我们的现状, 要解决的关键问题是:

(1) 大数据时代强调围绕大数据商业价值的利用, 尤其需要掌握数据仓库、数据安全、数据分析、数据挖掘等专业技能。而在传统的信息与计算科学专业实验教学中, 有关这方面的实验较少。如何在实验课程体系中引入相应的内容, 是一个首先要解决的问题。

(2) 数据分析师需要具备多方面的素质, 除了数学知识和数据分析能力, 对不同业务领域的理解也是培养人才的关键。如何在实验教学体系的设计中突出业务能力的培养, 是第二个关键问题。

3实验体系改革的内容与探索

(1) 构建三层次实验课程体系。

围绕信息与计算科学专业特点设计实验教学内容, 结合我校的人才培养目标和特点, 结合科研和行业前沿, 将“信息与计算科学”专业实践教学体系分为理论基础, 计算应用, 大数据分析三层次实验教学体系。

1.理论基础类实验环节。

理论基础实验是与专业基础课程相配套的各类实验教学。主要包括程序设计基础、数学模型、数学实验、数值计算方法、数据库技术等课程的实验教学部分。理论基础实验环节的改革重点是提高实验课程比重, 紧密围绕专业基础课程进行开设, 通过实验加深对理论的掌握, 突出“熟练”的要求, 培养学生的动手能力以及应用理论知识解决实际问题的能力。

2. 计算应用类实验环节。

计算应用实验环节是以专业素质提升为主旨, 包括数据仓库、数据安全、数据分析、数据挖掘等独立设课的实验环节, 是对专业基础的深化和拓展。实验内容涵盖一些面向行业实际问题的综合实验。开设课程实验的目标是通过实验来验证和巩固所学的理论和方法, 使学生真正掌握基本知识与技术, 培养学生的创新意识、独立工作能力, 提高学生分析和解决实际问题的能力。

3. 大数据分析类实验环节。

大数据分析类实验环节以数据分析方向为切入点, 力图解决信息与计算科学专业行业背景定位不准等问题。包括Map Reduce编程模型、Hadoop+HDFS技术、No SQL数据库技术、海量数据挖掘、大数据高级分析与建模等课程, 是对计算应用类实验环节的提升。课程依托基于Hadoop和HDFS构建大数据分析、管理、存储的实验教学平台, 为学生提供开放实验平台, 通过实践帮助学生完成“信息-知识-能力 (技能) ”的转化[4]。

(2) 改革实验考核方法和评价机制。

根据不同的实验类型, 采取不同的考核办法。理论基础类实验重点考察学生对实验原理的理解和实验技术的熟练程度。计算应用类实验可以以科研论文或技术总结形式提交实验报告和实验成果来进行评价。大数据分析类实验环节可以要求学生分组共同拟定实验方案, 集体完成实验项目并写出总结报告, 通过答辩等形式进行考核。考核可以配合创新学分的评定开展, 充分调动学生的积极性。

(3) 实验教学与科技竞赛和大学生创新实验项目结合

在教师的指导下, 鼓励学生参与相关科技竞赛。指导学生申报大学生创新实验项目、大学生科研训练计划项目, 参加大学生数学建模比赛, 锻炼学生的实践能力。

每年一度的福建省大学生创新实验项目申报提供了一个很好的平台, 我系积极组织学生参加大学生创新实验项目的申报, 对参加项目的学生进行鼓励, 营造了良好的学习气氛.在选题阶段, 学生们非常踊跃, 信息与计算科学专业的同学尤其积极, 并表现了交叉学科的特殊优势。选题方案思想活跃, 涵盖了大数据各个领域的课题, 闪烁着创新的思维火花[5]。

4 结束语

大数据时代正在改变我们的生活。本文对信息与计算科学专业实验教学体系进行前瞻性研究, 从优化实验课程设置、丰富实验教学方法进行探讨, 目标是实现一个成体系的, 与专业培养目标匹配, 又面向大数据时代数据分析人才需求的实验教学体系。

参考文献

[1]White, Tom.Hadoop:The Definitive Guide.O'Reilly Media.2012-05-10.

[2]Viktor Mayer-Schonberger.Big Data:A Revolution That Will Transform How We Live, Work, and Think.2012-12.

[3]李焕荣.信息与计算科学专业开放性实践教学改革初探[J].重庆工商大学学报 (自然科学版) 2011, 28 (3) :310-312.

[4]李鸿健.大数据时代计算机专业实验教学改革研究[J].现代计算机, 2013 (19) :29-31

面向数据的体系结构 篇8

钢结构建筑在全球市场已经有了几十年的历史, 并以其自身的优势得到了普遍应用。据调查, 全世界101栋超高层建筑中, 纯钢结构的有59栋, 达半数以上。随着世界资源的匮乏、绿色环保口号的提出以及科技的发展, 原始的混凝土式建筑已开始褪色, 钢结构建筑因其独特的优势走上了历史的舞台, 也势必会在未来的建筑业大放光彩。与此同时, 计算机技术的发展促进了钢结构的信息化进程。钢结构信息化进程中存在大量的项目信息存储在钢结构生命周期各个阶段, 而各个阶段分别使用各自的模型, 从而导致了“信息孤岛”现象的产生, 大大影响了钢结构的生产效率, 解决上述问题的关键就是建立面向钢结构工程的BIM数据库, 实现建筑生命周期各种相关信息的集成管理。

1 钢结构工程概述

1.1 钢结构工程概述

钢结构工程是以钢材制作为主的结构, 是建筑工程中普通的结构形式之一。它的主要连接型式包括:焊接、铆接、螺栓连接。钢材的特点是强度高、自重轻、整体刚性好、变形能力强, 故用于建造大跨度和超高、超重型的建筑物特别适宜[1]。钢结构建筑是一种新型的建筑产业体系, 其融合了建筑、钢铁冶金业以及目前炙手可热的房地产业。钢结构建筑不仅解决了钢铁业的产品渠道问题, 也提升了建筑业的科技含量, 在一定程度上解决了建筑业的能耗和污染难题, 此外, 钢结构建筑为房地产业注入了新的血液。在21世纪, 钢结构建筑作为绿色建筑、低碳建筑成为建筑业关注的焦点势必会得到前所未有的发展。

1.2 钢结构在我国的发展综述

我国历史早期的铁结构的卓越成就因为2000多年的封建统治, 长期停留在铁制技术的水平。直到19世纪末, 我国才开始采用现代化钢结构。新中国成立后, 钢结构的应用技术有了很大的改观, 无论在质量上或数量上都远远超过了过去。在钢结构设计、制造和安装等技术方面的水平都得到了较大提高, 掌握了各种复杂建筑物的设计和施工技术。目前, 我国钢材产量、品种规格得到快速增长, 质量也不断提高, 为我国钢结构行业的发展奠定了良好的发展基础。2010年全球共产钢14.1亿吨, 较2009年增长16.8%。中国以绝对优势稳居世界第一产钢国地位, 产量近6.3亿吨, 占全球产量的44.3%。日本、美国和俄罗斯也是重要的产钢国, 产量分别为1.1亿吨、0.8亿吨和0.7亿吨。欧盟27国产量总和为1.7亿吨。中国热轧H型钢从零开始到2010年底达到946.5万多吨;其它钢结构中的中厚板、型钢、钢管、冷弯型钢及涂镀层钢板等都有明显的增长, 产品质量有较大的提高, 耐火、耐候钢、超薄热轧H型钢等新型钢材研制成功在工程中应用[2]。由于我国己具备了经长期发展而形成的基本条件, 我国的钢结构建筑在了近几年出现了非常好的发展势头, 钢结构的工程业绩显著, 建造了一批特大跨桥梁, 例如芜湖长江大桥 (跨度216m) 、广东虎门大桥 (单跨跨度880m) 、江阴长江大桥 (跨度1385m) 、润扬长江大桥 (1490m) 、贵州坝陵河大桥 (主跨1088米) 等。超高层建筑也是钢结构应用最多的领域, 例如北京的京广中心高达208m, 深圳的地王中心高达342.95m, 上海的金茂大厦、上海中心等。2008年奥运会体育场馆、上海世博会场馆、南京青奥会场馆、各个地区的地标性建筑的建设都是钢结构得到广泛应用的标志。所以现在钢结构行业存在较大的发展空间, 今后应用领域将不断扩大。

2 BIM概述

2.1 BIM模型概念

建筑信息模型 (Building Information Modeling) 是以建筑工程项目的各项相关信息数据作为模型的基础, 进行建筑模型的建立, 通过数字信息仿真模拟建筑物所具有的真实信息。它具有可视化, 协调性, 模拟性, 优化性和可出图性五大特点。随着BIM技术的成熟, 越来越多的功能强大的BIM软件被开发出来, 目前常见的BIM软件有Auto CAD Architecture, Auto CAD MEP, Revit Architecture, Revit Structural, Revit MEP, TEKLA, Solid Works等[3]。

2.2 基于IFC的BIM模型架构

根据IFC2x3实施指南, 基于IFC标准的BIM模型总体框架分为四层, 如图1所示。

(1) 资源层 (Resource Layer) 。

位于整个框架体系的最底层, 用于描述IFC标准中可能用到的基本信息, 包括日期/时间资源 (Date Time Resource) 、材料资源 (Material Resource) 、人员资源 (Actor Resource) 、成本资源 (Cost Resource) 等资源模块。这些信息资源是建筑信息模型 (BIM) 信息描述的基础[4]。

(2) 框架层 (Core Layer) 。

又称之为核心层, 是建筑工程信息的整体框架, 它是IFC分层体系中最重要的一部分, 它将建筑信息资源的全部内容用一个整体框架组织起来, 形成一个整体, 用来反映现实实体的结构。

(3) 共享层 (Interoperability Layer) 。

又称之为交互层, 主要解决不同领域 (如设计、施工、设备管理) 信息共享的问题, 包括共享建筑服务元素、共享组成元素、共享建筑元素、共享管理元素和共享设备元素五个部分。

(4) 领域层 (Domain Layer) 。

位于IFC整个框架体系的最顶层, 用于定义建设领域每个子领域的信息实体以及特有的概念, 形成八个领域的专题信息, 比如建筑控制领域、管道防火领域、暖通空调领域、建筑学领域等八个领域。

IFC数据格式的BIM模型由实体、定义类型、选择类型、规则、函数以及属性集组成。IFC标准包括了很多实体, 其中IFCROOT是IFC实体定义中最重要的根类, 其余实体都是IFCROOT派生的, 分为两大类:一类是可独立用于数据交换的实体, 分布在框架层、共享层和领域层, 具有GLOBALID属性;另一类不可以独立进行数据交换, 常以IFCROOT派生实体的属性形式存在, 不具备全局标识特性, 该类实体全部分布在资源层。从IFCROOT根类向下派生出三个子类:IFCOBJECTDEFINITION、IFCPROPERTYDEFINITION和IFCRELATIONSHIP, 这三个抽象类是IFC标准的重要组成部分, IFC标准主要是通过这三个类派生出具体的类来描述具体的建筑模型。某些类的名字前面加有ABS, 表示该类是抽象类。GLOBALID、OWNERHISTORY、NAME、DESCRIPTION是IFCROOT的四个属性[5]。

IFCOBJECTDEFINITION又向下派生出IFCOBJECT、IFCCONTEXT和IFCTYPEOBJECT三个子类, IFCOBJECT是各个建筑概念类的基类, 其又向下派生出6个子基类:IFCPRODUCT (物理上存在的对象, 如墙、梁、柱) 、IFCACTOR (人员) 、IFCGROUP (族, 一堆对象的集合) 、IFCPROCESS (流程) 、IFCRESOURCE (资源) 和IFCCONTROL (指南、规范) 。

IFCRELATIONSHIP是一个比较特殊的概念, 用来描述实体对象间的相互关系, IFC把建筑实体之间的关系, 以及概念之间的关系都抽象为对象, 任何两个对象之间的联系都要通过IFCRELATIONSHIP联系。

IFCRELATIONSHIP包含六个子类: (1) IFCRELASSIGNS是用来描述某个对象使用其他对象提供服务时的关系; (2) IFCRELCONNECTS定义了两个或多个对象间的某种方式的连接关系; (3) IFCRELDECOMPOSES用来描述对象的组成或分解关系; (4) IFCRELDECLARES是项目对象或属性的淸单; (5) IFCRELDEFINES通过类型定义或属性定义来描述对象实例; (6) IFCRELASSOCIATES描述对象与外部资源信息的联系。

IFCPROPERTYDEFINITION是用来描述对象属性的类, 它又下派生出2个子基类:IFCPROPERTYSETDEFINITION和IFCTYPEOBJECT。其中前者是用来描述对象的除形状意外的其他具体属性。而IFCTYPEOBJECT用来描述对象的形状。

3 建立面向钢结构工程的BIM数据库的必要性

现有的钢结构分析与设计阶段是钢结构工程信息产生的源头, 但是目前的钢结构施工图绘制等工作一直都在被传统的二维设计多局限, 由于施工图纸等绘制与分析模型事实上的低关联性, 现在钢结构施工图绘制的特点就是大量的时间精力都被浪费在复杂繁琐的制图当中, 而不是对整个生命周期的规划;即使出图, 由于彼此缺乏信息的交互反馈, 图纸也难免出现各种低级错误。对于钢结构的制造阶段, 现有的材料报表都是工程师手工编制和撰写的, 进度缓慢, 出错率很高, 制造业信息与整个钢结构的信息处于割裂状态, 信息利用率极为低下;建立面向钢结构的BIM数据库便可解决上述问题, 具有以下几个方面的优点: (1) 重复使用BIM数据库中的分析信息, 提高了工作效率, 改进了制造质量; (2) 可以在钢结构设计阶段就考虑制造的简易性, 在满足力学性能的基础上, 降低项目成本; (3) 面向钢结构的BIM数据库的建立使得制造商和设计人员之间形成了自然地信息交互循环。

4 面向钢结构工程的BIM数据库架构

4.1 钢结构数据库内容

如图2所示, 我们把面向钢结构的BIM数据库的内容按结构元素分类。

每一种结构元素不仅仅是数字化的三维实体, 而且也是储存与集成了该结构图形元素相关的分析信息、用钢量信息、造价信息、施工图信息以及制造业信息等钢结构各个阶段的工程信息。

(1) 杆件是指在空间具有一定长度的型钢。杆件的空间定位是钢结构实体建造的基础, 通常是用三个互相垂直的轴来表示, 以空间坐标的形式来确定其摆放位置;杆件的截面信息是由型钢类型决定的, 型钢就是加工成一定形状的钢材, 它们具有特定的工程参数和几何参数, 从而决定了杆件的截面参数[6]。

(2) 墙体是在钢结构模型中具有一定尺寸的钢筋混凝土或钢的长方形状的实体。

(3) 节点从几何意义上讲就是空间中直线的交点, 从物理意义上讲它就是杆件传递力的作用的连接构件的集合, 一个设计好的节点是由节点信息, 节点所连接的梁、柱的截面信息和空间位置等信息综合而成的。

4.2 钢结构BIM数据库存储模式

钢结构BIM数据库的存储模式基于钢结构BIM模型的分类进行的, 如图3所示, 钢结构的BIM可以分为三大类。

基于钢结构BIM数据的分类, 得出数据存储方法具体如下: (1) 建立数据存储中心。根据阶段或专业划分存储区域, 该区域将专业内部数据进行组织, 设置仅供本专业人员读或写的权限。并指定共享数据存取区域, 可供多专业进行访问。

(2) 完善访问机制。数据的组织应基于角色进行权限分配, 以保障数据访问安全。

(3) 对结构化与非结构化数据建立相应的组织存储机制[7]。

本文主要对第三种存储方法进行分析。图3中第二种分类方法具体是从文件格式或数据标准的不同分类, 分别为非结构化数据与结构化数据。非结构化数据是指没有预定义的数据模型或不能用二维表结构来逻辑表达实现的数据, 非结构化数据主要包括工程文档信息、报表、图像信息等;结构化数据是指基于公开数据标准存储描述的数据, 可以进行解析存储到数据库中, 是钢结构BIM数据的核心内容。由于数据表达的格式差异较大, 需要应用相应的数据组织存储方式, 对于结构化数据可通过IFC模型解析器处理后存储于关系数据库中, 由此可实现基于对象的数据存储与管理[8]。而对于非结构化数据可建立统一的数据仓库, 对非结构化数据进行集中存储, 需要建立专门的非结构化数据管理模块进行数据管理。

4.3 数据库建立流程

数据库建立流程如图4所示。

数据库建立原则:

(1) 全面性。要全面广泛地考虑数据信息类型和种类, 针对不同数据类型都要有相应的存储区域与模式设计, 对于钢结构而言, 节点信息存储是最难实现的, 这就要求要对钢结构节点信息中的构成部分进行详细分析和整理, 设计出针对钢结构节点的信息存储模式。保证数据库的全面性, 避免出现模型数据无法正常调用的缺憾。

(2) 准确性。数据库建立的每一步都要做到严谨准确, 因为它是面向钢结构全生命周期的信息集成管理, 一旦某一个环节出错, 可能导致的问题会是整个项目, 所以必须保证数据库开发设计的准确性, 确保项目的安全。

(3) 时效性。信息只有及时、迅速地提供给它的使用者才能有效地发挥作用, 即信息要快速提供给它的使用用户, 即要具有时效性。在数据库的设计中要加入数据库更新设计模块, 实现数据库的及时更新, 实现最新数据信息的交互, 提高钢结构项目的建造效率, 有效地反映项目的实际进展程度和各种有用的信息。

5 结语

(1) 本文在总结了钢结构在我国发展形势的基础上得出了钢结构信息化的必然趋势, 进一步分析总结了基于IFC标准的BIM信息模型的内容和结构框架, 为面向钢结构的BIM数据库的突出打下了基础。

(2) 本文结合IFC标准格式的BIM信息模型内容, 总结了面向钢结构的BIM数据库的内容, 根据内容数据类型提出不同的存储模式, 在此基础上得出了面向钢结构的BIM数据库的设计建立流程, 并对数据库的建立提出了几点原则。

(3) 未来展望:能够针对钢结构中的节点提出存储方式设计, 尤其是复杂自主设计的节点类型;对数据库的更新技术进行实质性的分析。

摘要:建筑信息化已经成为了建筑业发展的必然趋势, 而钢结构作为建筑业未来的翘楚信息化进程更是势不可挡。依托BIM思想, 建立面向钢结构的BIM数据库是客观需要也是必然选择;它的建立实现钢结构工程全生命周期的信息集成管理, 实现了各个阶段信息的交互反馈, 大大提高了钢结构的建造效率, 降低了工程项目的成本。本文首先通过对钢结构工程和BIM模型简单介绍, 具体分析了基于IFC标准的BIM模型的内容和结构框架, 为基于IFC的BIM数据库的建立奠定基础;然后分类总结了钢结构的数据库内容, 提出了基于IFC的钢结构BIM数据库的数据存储方法, 最后得出了面向钢结构的BIM数据库设计的流程。

关键词:BIM,钢结构,数据库,IFC

参考文献

[1]季俊.钢结构BIM的理论与应用研究[D].同济大学, 2010.

[2]秦文刚.钢结构工程图形数据库及建模应用研究[D].大连理工大学, 2013.

[3]何关培.BIM和BIM相关软件[J].土木建筑工程信息技术, 2010, 2 (4) :110-117.

[4]Thomas Liebich.IFC 2x Edition 2:Model Implementation Guide[M].2005.

[5]张汉义, 邱奎宁.IFC标准形状表达及空间结构实例介绍[J].土木建筑工程信息技术, 2010, 2 (2) :83-86.

[6]武琳琳, 朱一飞.数据库在钢结构设计中的应用[J].科技信息, 2008 (35) :935.

[7]林良帆.BIM数据存储与集成管理研究[D].上海交通大学, 2013.

面向数据的体系结构 篇9

随着信息技术的发展,信息系统在各领域快速拓展,电力行业的信息化促使电力数据迅速增长和不断融合,电力大数据时代已经到来[1,2,3,4,5]。 电力行业数据量大、类型多、价值高,贯穿电力工业生产及管理等环节。 因此,应当积极投入到数据挖掘与分析运用中,挖掘数据价值,实践大数据战略,为电力企业决策与管理提供科学指导。

经济波动及形势变化对人民生活、企业生产和社会发展有着重要的影响。 及时、准确地掌握经济变化信息,对于政府政策的制定、企业生产的调整具有积极的作用。 宏观监测指标体系及一些量化指数 (如CPI、PPI、PMI等指数 )的建立 ,能够及时反映经济的变动情况和变动程度、监测经济的发展动态及预测经济的发展趋势[6,7,8]。 例如:供需不平衡对市场经济运行的高效性、稳定性有着重要的影响,所以提出CPI、PPI指数来判断供需平衡程度,估算通货膨胀(或紧缩)风险;为了能够监测经济的发展动态、反映商业活动的现实情况,因此提出PMI指数作为一个先行指标监测经济运行、预测经济走势和转折点。

同样地,电力市场中也存在与市场经济中相类似的一些问题。 电力供求的矛盾是电力市场的基本矛盾之一,对电力市场运行的高效性、稳定性有着重要的影响[9,10]。 企业作为电力市场的主要组成要素, 其经济效益的波动和变化会影响行业的电力需求数量,导致电力市场的供需不平衡,从而影响着电力部门的市场决策。 因此,需要运用科学的方法对电力市场供求变化进行研究,监测其动态变化、分析其所处状态以及预见其发展趋势,掌握电力市场供求变化的规律,为电力市场营销决策提供可靠的依据。

目前国内外已经提出很多负荷及用电预测的方法[11,12,13,14],如:基于灰色理论的预测方法、基于进化机制的预测方法以及基于支持向量机的预测方法等。 但这些方法理论性较强、建模复杂,降低了其实用性,而且需要大量的历史数据进行训练,快速性、时效性较差,没有先行作用。

本文将借鉴宏观经济监测指标体系建立和量化的方法,建立一个监测行业用电情况及预测行业用电趋势的行业电力监测体系,并对行业电力监测指标体系进行量化,提出电力经理指数EMI(Electricity Managers Index),为监测行业用电动态 、反映行业用电的现实情况和其整体的增长或衰退程度以及预测行业用电趋势提供参考和依据。 该方法不仅简单、 快捷,还具有先行性和时效性。

1 行业 EMI 指标体系的构建

1.1 指标选取流程

为确保选取的行业电力经理指数关键指标具有全面性、合理性和易操作性,需明晰指标选取的具体流程,主要包括三大步骤。

步骤1:基于行业EMI的实现路径,分别在电力统计数据侧和行业市场数据侧选出能够影响行业用电量的关键因素,据此初步选出评价行业EMI的关键指标。

步骤2:将初选的关键指标以问卷调查的形式向行业内的专家征询意见。 基于问卷调查结果,对初选关键指标进行有效性检验和优化,判断初选的关键指标的合理性,删除不合理指标,实现对初选指标的优化。

步骤3:根据关键指标优化的结果,以行业EMI为评价对象,以电力统计数据和行业市场数据为评价维度,建立行业EMI关键指标体系。

关键指标选取的具体流程如图1所示。

1.2 指标初选

由于电力统计数据能够直接反映行业的用电情况;而行业市场数据则直接反映行业效益,从而间接反映出行业的用电情况。 因此,行业的用电量主要来自于电力统计数据侧和行业市场数据侧。 为此,将电力统计数据和行业市场数据作为评价维度,分别选取电力统计数据和行业市场数据中影响行业用电量的关键指标,以此全面反映行业用电趋势。

设计指标选取的调查问卷,确定评价者范围,向专家和评价者征询指标选取的意见。 评价者判断给定指标对EMI的影响程度,并对指标进行排序。 回收、整理调查问卷,形成初选关键指标。

a. 电力统计数据关键指标初选。

电力统计数据侧初选指标包括:申请和完成的扩容容量、申请和完成的减容销户容量、申请和完成的净扩容容量、申请和完成的扩容企业数、申请和完成的减容销户企业数、申请和完成的净扩容企业数。 另外,考虑到用电量在时间上与其滞后项之间存在自相关关系,因此也把行业用电量作为一项指标。

b. 行业市场数据关键指标初选。

行业市场数据侧初选指标包括:订单量、产量、 库存量、订单完成量、生产线规模、设备数量、产品价格、价格空间、本行业政策、上游行业政策、行业市场情况。

1.3 基于统计检验-粗糙集分析法的关键指标选取 优化模型构建

本文基于统计检验-粗糙集分析法对初选的行业电力经理指数关键指标的合理性进行检验和优化,主要步骤如下。

步骤1:将初选的指标分成连续型指标和离散型指标。 连续型指标指具有确定数值的指标,离散型指标指具有大概范围、不具有确定数值的指标。

步骤2:对于连续型指标,把指标看作时间序列,利用统计检验[15,16,17]对连续性指标进行有效性检验和优化,具体步骤如下。

a. 首先利用各初选指标的历史数据进行回归分析,检验指标与用电量的相关性,剔除关联度小的指标 。

b. 对各指标数据进行单位根 (ADF)检验 , 检验指标的平稳性。 ADF检验模型1、2、3的回归方程分别如式(1)—(3)所示。

同时估计出上述3个模型的适当形式,然后通过ADF临界值表检验零假设H0:δ = 0。 只要其中有一个模型的检验结果拒绝了零假设,就可以认为时间序列是平稳的。 当3个模型的检验结果都不能拒绝零假设时,则认为时间序列是非平稳的。

c. 对于非平稳的时间序列 ,则需要进行协整关系检验。 把一系列指标历史数据看成一个时间序列, 如果k个时间序列y1、 y2、…、 yt、…、 yk都是d阶单整的,存在一个非零向量 β,使 β y:I(d - b),则称y是协整的,向量 β 为协整向量。 如果2个向量都是单整向量,则只有它们的阶数相同时才可能协整。 采用Johansen协整检验,滞后阶数根据AIC或SC最小原则确定,如果相应的迹统计量小于临界值则拒绝H0。

d. 最后当变量之间存在协整关系时 ,则对变量进行格兰杰因果关系检验,得到最终的指标。 其检验模型为:

其中,q、p分别是x、y的滞后阶数。

检验的零假设H0为:x是y的非格兰杰原因,即H0:β1= β2= … = βq= 0。 若零假设H0成立,则有:

步骤3:对于离散型指标,利用粗糙集理论[18,19]对离散型指标进行有效性检验和优化,具体步骤如下。

a. 建立综合评价信息系统和决策表 。

b. 确定离散各属性区间 ,根据各属性区间大小对指标数据进行离散化处理。

c. 确定等类集合分别为 :U / ind (C)、U / ind (D)、 U / ind(C -{ci})。

d. 导出条件属性集合正域posC(D)、posC-{ci}(D), 条件属性集合基数为card[posC(D)]、card[posC-{ci}(D)];

e. 计算知识D ( 决策属性指标 ) 对知识C ( 评价指标集合)的依赖程度rC(D)及知识D对知识C -{ci} 的依赖程度rC-{ci}(D)。 即:

f. 计算条件属性对决策属性的重要程度 σ(ci), 即 σ(ci)= rC(D)- rC-{ci}(D)。 如果某项指标的重要度很小,说明指标体系的评价对其依赖性很小。 这项指标对指标体系的贡献度可以忽略,此指标可被剔除。

步骤4:将基于统计检验-粗糙集分析法优化后的连续性指标和离散性指标综合,得到最终的行业EMI指标体系的关键指标。

基于统计检验-粗糙集分析法,对初选指标进行关键指标选取优化如下。

a. 通过调研可知:电力数据具有确定数值 ,是连续型指标;而市场数据具有大概范围,不具有确定数值,是离散型指标。

b. 对于连续型指标 , 通过1.3节中连续型指标的处理方法,利用调研数据对1.2节中初选的连续型指标进行有效性检验和格兰杰检验得到对行业用电量有先行性影响的指标,结果如表1所示。 表中,A为申请净扩容容量;B为申请净扩容企业数;C为完成净扩容容量;D为完成净扩容企业数;E为用电量。 因为格兰杰检验得到的时间序列具有先行性,因此优化得到的指标具有先行性。

c. 对于离散型指标,通过1.3节中离散型指标的处理方法,利用调研数据对1.2节中初选的离散型指标进行检验和优化得出重要度较高的指标,结果如表2所示。 表中,总基数为168;决策属性基数为119。

1.4 指标权重确立

本文采用主客观相结合的组合赋权法,既体现出指标的价值量,又体现出指标的信息量。 权重确立的具体步骤如下:

a. 利用基于相容矩阵的层次分析法计算各指标的主观权重系数;

b. 利用粗糙集中的重要度计算各指标的客观权重系数;

c. 设定经验因子 ,将主客观权重进行合成 ,获得主客观的综合权重;

d. 根据指标权重和指标值 ,采用线性加权法对各个指标进行加权计算,得出综合评价结果,即EMI。

通过上述指标体系优化构建,得到12个二级指标,再结合层次分析法和粗糙集法得到各指标的权值,最终形成一个完整的行业EMI指标体系,如表3所示。

从本文的实例验证的效果而言,这些指标已经可以较为准确地预测用电趋势,但不排除还可以新增一些指标。 对于新增的指标,同样可以通过本文提出的方法先验证其有效性决定是否采用,再进行预测。

2 基于行业 EMI 指标体系的评价方法

在确定的行业EMI体系的基础上,利用综合评分法得到EMI来预测行业用电趋势。

2.1 数据汇总

对行业中用电大户企业和典型企业按行业EMI指标体系中的指标进行电力数据和市场数据调研,将各项数据与上月相比的变化百分比按照表4进行区间离散化。 考虑到变化百分比越大的企业数会越少, 为了使每个区间包含等数量的对象,因此将离散区间按基本持平(-5%,5%)、增加或减少[5%,25%)、 增加或减少[25%,75%)、增加或减少[75 %,+∞)进行划分,本文将基本持平的离散化等级定为50,作为一个基数,离散化等级以10作为一个梯度变化。

按照离散后的等级数,统计每个指标下各等级20、30、…、80所含有的企业数。

2.2 单个指标等级数计算

a. 连续型指标等级数计算。

计算出指标的净变化量和总变化量,采用不加权的方法得出百分比并按照上述离散区间对计算出的百分比进行离散,得到离散等级数。 计算方式如下:

其中,CI j是第j个连续指标的等级数;CHN j是第j个指标的净变化量;CHSj是第j个指标的总变化量。 如果CI j为正数,说明本月用电量可能上升;如果CI j为负数,说明本月用电量可能下降。

b. 对于离散型指标等级指数计算。

根据各项市场统计数据的离散等级数和统计出来的各属性中相应等级的企业数,采用加权的方法得出加权后的等级数,计算方式如下:

其中,DIk是第k个离散指标的等级数,它所对应的百分比可以根据离散化区间表得到;Nki是第k个指标中第i个等级数;COki是第k个指标中第i个等级数所含有的企业数;COsum是参与调研的总企业数。

2.3 综合指数计算

a. 月环比指数的计算。

EMI是一个综合指数 ,由各指数的离散等级数加权而成,即:

EMI = 鄱wjCIj+ 鄱w′kDIk

其中,wj是第j个连续指标的权重系数;w′k是第k个离散指标的权重系数。

根据每月的统计数据,由此方式计算出的EMI即为月环比EMI。

b. 定基指数的计算。

定基指数由各期月环比指数连乘计算,公式为:

其中 ,EMI是电力经 理定基指 数 ;EMI1、EMI2、 … 、 EMIt是基期至报告期间各期的月环比指数。

c. 指数的换算方法如下:

2.4 EMI 的含义

把EMI为50时定为基准线,称为荣枯分水线。 EMI大于50表示行业用电需求在增长;EMI小于50表示行业用电需求在下降。 EMI偏离50的程度表示用电量变化的大小,朝大于50的方向偏离越大说明用电需求将大幅增加,朝小于50的方向偏离越大说明用电需求将大幅减小,如:EMI略大于50,说明用电需求在缓慢上升,EMI略小于50说明用电需求缓慢下降。 根据表4离散化区间可以得到EMI与离散等级化后的用电量变化趋势的对应关系,如表5所示。

对于表5中的用电量变化区间,它是指通过EMI指数预测的本月用电量相对上月用电量的变化趋势,而表5中的EMI指数是指通过上月相关指标值得出的EMI指数值。

本文提出的EMI指数预测方法是在当月月初时利用本文指标体系中各指标的上月数据预测当月的用电变化趋势,这就是EMI指数先行性的体现。 因为指标体系中的指标通过了格兰杰检验,即这些指标的变化会导致用电量的变化,且这种变化是一种滞后性的变化,所以可以在当月月初通过指标的上月数据预测当月的用电变化趋势。 一般上月的电力统计数据和行业市场数据在当月月初就可以获得,因此利用EMI预测行业用电趋势不仅简单快速, 还具有先行性和可行性。

3 应用评估

3.1 大工业各月用电趋势预测评估

通过所建立的行业EMI指标体系以及福建省2012年1月至2013年8月电力统计数据和市场统计数据的处理值,得到EMI预测结果与离散等级化的实际用电变化结果,如图2所示。

从图2中可以看出,通过EMI预测出的行业各月用电量变化趋势与离散等级化的实际变化趋势基本一致。

3.2 大工业年用电趋势预测评估

根据上述预测结果,利用2.3节中定基指数计算方法和指数换算方法可得2012年1月至2013年9月的EMI:

其中,EMI1、…、EMI20分别是2012年2月至2013年9月预测的月环比指数。

根据调研数据可知,2012年全年的行业用电量为7 721 632 k W·h,2013年1月至9月的行业用电量为6 157 444 k W·h,通过计算可得:

I = (6 157 444 / 7 721 632 - 1) × 100 % = - 20.26%

即2013年1月至9月行业用电量与2012年全年行业用电量相比减少了20.26%,将此变化区间根据表5离散等级化后约为42。 根据EMI与用电量变化关系,可知EMI的预测符合实际情况。

3.3 典型行业各月用电趋势预测评估

根据2013年1月至9月福建典型行业的电力及行业数据对用电趋势进行预测,并将预测结果与实际用电变化结果做比较。

3.3.1 高耗能行业

本例中的高耗能行业包括黑色金属冶炼及压延加工业、有色金属冶炼及压延加工业、非金属矿物制品业和化学原料及化学制品制造业。 高耗能行业EMI预测结果与离散等级化的实际用电变化结果如图3所示。

3.3.2 出口型行业

本例中的出口型行业包括纺织行业、服装行业和食品行业。 出口型行业EMI预测结果与离散等级化的实际用电变化结果如图4所示。

3.3.3 重点大型企业

本例中的重点大型企业包括机械行业、电子行业和化工行业。 重点大型企业EMI预测结果与离散等级化的实际用电变化结果如图5所示。

通过上述不同行业中EMI的预测结果与离散等级化的实际用电变化的比较可以得到以下结论。

a. 从整体上看 ,EMI法能够较好地预测各月的用电趋势。

b. 从各月的预测效果上看 ,3月和4月的预测结果与实际用电量变化趋势基本一致但偏差较大, 其他各月的预测结果与实际相符。 其原因可能是:2月正逢中国春节,大多企业处于停产或减产状态,而3、4月大量务工人员返城工作,企业逐渐恢复生产 , 从而与前一月相比会出现用电量大幅增长的情况; 离散化区间划分不够精细和合理,在后续研究中会考虑利用模糊集的方法进行改进,通过隶属函数对数据进行离散。

4 结论

本文提出一种基于EMI预测行业用电趋势的新方法,该方法通过统计检验和粗糙集优化建立了覆盖行业电力数据和市场数据的行业EMI指标体系,通过EMI评估行业用电形势、预测用电变化趋势,为电力市场分析和预测提供新的指标参考。

面向数据的体系结构 篇10

关键词:ERP,C/S,B/S,.net,三层架构

ERP(Enterprise Resource Planning),也称企业资源计划系统,是指建立在信息技术基础上,以系统化的管理思想,为企业决策层及员工提供决策运行手段的管理平台。ERP就是一个对企业资源进行有效共享与利用的系统。是一个以企业内部资源整合、提高企业运行效率为核心的信息系统,用来识别和规划企业资源,从而获取客户订单,完成加工和交付,最后得到客户付款,最终获得收入和利润。实际上,ERP系统就是将企业内部所有资源整合在一起,对采购、生产、成本、库存、销售、运输、财务、人力资源进行规划和优化,从而达到最佳资源组合,获取最高利润的行为。

一个企业的成功,在很大程度上取决于对变革的适应能力、反映能力和应变能力。企业要想保持健康快速地发展就必须,研究和把握产业的发展方向才能不断地撷取到盈利的先机。在这样的大环境下,很多企业都引入了新的管理思想和现代化管理手段来提高企业管理水平,从而在市场中取得竞争优势。而目前绝大多数企业普遍采用且最有效的方式就是实施ERP系统,本系统做为钢加行业的专业管理软件,能够有效地降低企业库存和生产成本、缩短产品生产周期、提高产品质量和客户满意度、减少企业呆帐并实现对市场的快速反应。

调查显示,目前企业ERP应用主要是财务管理、采购与销售、客户服务、日常办公、劳动人事、物流等方面,这些应用比例集中在38-44%之间。外部采购和销售运营分别占33.7%和31.0%;客户服务和物流配送分别占29.3%和28.2%;科技研发、生产工艺和计划决策比例在21%左右,营销宣传比例为15.6%。目前企业应用ERP系统的品牌认知度占第一的是ORACLE,占22.0%;其次是SAP,占到17.8%;我国的用友和金碟在国内也分别占有一定的市场份额;但有相当数量的企业选择了自主开发ERP系统。可见目前ERP企业提供的产品难以完全满足企业发展的需要,自主开发和进行二次开发依然占居了相当高的比例。

ERP的传统应用集中在大型企业,我国的ERP实施也是从大型企业开始。但是ERP作为一种先进的管理体系,不仅大型企业需要,中小型企业同样需要。一般来说,优秀的国外ERP软件会在许多方面都相对做得十分精深,但问题是首先价格居高不下,有时又过于严谨、和深度太高。目前市场上许多主流的ERP软件看似功能非常强大,业务流程要什么有什么,几乎涵盖了企业的所有业务,可是对于中小企业来说不实用,细节问题太多,真正用起来的时候操作复杂不说,操作流程不连贯、各模块之间接口不紧密、软件升级繁琐、客户端维护成本高昂等问题也是不可避免。

针对目前国内ERP行业及中小型企业实际运行现状,我们应当调整思路,开发出适合广大中小企业使用的ERP产品。而这个产品应当具备这样的一些特性:1)紧密联系企业实际情况,化繁为简,方便企业的各部门员工高效地操作管理;2)结合C/S与B/S的特点,开发出多种操作界面并存的管理系统,既方便在局域网内使用客户端进行操作,又可以通过浏览器的方式进行数据查询与管理;3)软件升级方便,客户端维护简单,不需要大量的软硬件维护人员;4)较为低廉的软件价格与方便的系统后期维护。

依据上述需要满足的条件,我们在设计产品时采用了如下的设计思路:

1 开发语言及环境选择

C#是一种精确、简单、类型安全、面向对象的语言,也是作为平台支持下一代Internet的可编程结构的代表性语言。同时具有健壮、安全、可移植性、多线程、组件模式等优点。由于同为微软公司推出,所以C#在Windows环境下可以说比其他语言具有更大的优势。SQL Server 2005是微软的新一代数据管理和分析解决方案,它将给企业级应用数据和分析程序带来更好的安全性、稳定性和可靠性,使得它们更易于创建、部署和管理。C#与SQL Server 2005捆绑紧密,都基于.net平台,整合度更好,没有兼容性的烦恼。

2 使用三层架构:界面层、逻辑层、数据层

从开发角度和应用角度来看,三层架构比双层或单层结构都有更大的优势。三层结构适合群体开发,每人可以有不同的分工,协同工作使效率倍增。开发双层或单层应用时,每个开发人员都应对系统有较深的理解,能力要求很高,开发三层应用时,则可以结合多方面的人才,只需少数人对系统全面了解,从一定程度上降低了开发的难度。三层架构属于瘦客户的模式,用户端只需一个较小的硬盘、较小的内存、较慢的CPU就可以获得不错的性能。三层架构的另一个优点在于可以更好的支持分布式计算环境。逻辑层的应用程序可以有多个机器上运行,充分利用网络的计算功能。分布式计算的潜力巨大,远比升级CPU有效。三层架构的最大优点是它的安全性。用户端只能通过逻辑层来访问数据层,减少了入口点,把很多危险的系统功能都屏蔽了。

3 数据存取使用存储过程

模块化的程序撰写:只需建立一次Stored Procedure,储存在数据库中,就可以让不同的程序呼叫。执行效率佳:如果需要大量或反复执行的数据处理,Stored Procedure的执行速度会比T-SQL程序代码的批处理快。因为Stored Procedure是在建立的时候进行剖析和最佳化,所以执行一次以后存在内存中。而程序代码则是每次执行时都要反复地从客户端传到服务器。减少网络流量:即使是好几百行T-SQL程序代码的作业,也只要透过一个指令就可以执行Stored Procedure中的程序代码,而不必在网络上传送几百行程序代码。

设计后的客户端窗口如图1、图2所示。

客户端可以通过IE自动下载和升级,即便身在外地,也可以很方便的使用系统各项功能。如图3所示。

4 系统优点

基于以上设计方案,系统有以下优点:1)系统伸缩性好,易于扩展,可以同时支持C/S和B/S结构,以满足用户在不同环境的需求;2)使用组件模式,方便针对不同厂家设计接口,达到高效交换数据的目的(需要提供技术资料);3)升级维护灵活,在服务器端发布新版本,客户端运行时自动升级;4)运行效率高,对分布式的用户硬件配置要求低,服务器配置稍好即可。

依据上述的系统研究方案,本系统定位于面向国内中小企业的ERP产品,在设计上,底层采用三层数据结构:即数据层、业务逻辑层、界面表示层。数据层用来管理和处理数据;业务逻辑层用来定义数据规格、实现常用功能;表示层用来和用户进行交互。使用的开发工具是微软的Visual Studio 2005集成开发工具,采用Microsoft C#做为前台开发工具。三层数据架构做好之后,客户端上所涉及到的功能,其实已经在业务逻辑层上实现,后面不论是应用程序客户端还是浏览器的界面,我们只是需要调用这些设计好的功能。

在三层数据架构的基础上,主要的核心工作量已经在服务器上完成,面向客户的方式可以根据环境来选择,甚至可以同时做成两种方式,即面向用户的应用程序客户端和通过外网的浏览器方式兼而有之。如果在公司内部,对数据的安全性要求比较高的,那我们可以通过客户端来操作;但是对于相对比较简单的,比如说一般的查询,我们也可以提供浏览器的方式来实现。这样就方便了公司用户不论在内外环境都能对数据进行访问和操作的要求,同时兼顾了C/S的安全性及B/S的方便性这两项优点。

在系统功能设计上,对采购、生产、成本、库存、销售、运输、财务、人力资源等进行模块化管理,针对企业实际运作流程,优化系统结构,去除不必要的管理功能界面,预留接口,方便今后扩展。软件升级方便,登录系统后自动在后台实现更新。操作界面尽量简便,可实现多途径操作,方便用户使用。

网页上所需要实现的一些高级功能,通过JAVA Script或者VB Script脚本生成,或者利用Active X控件来实现。

这样的产品设计方案,系统将会对广大中小企业的采购、生产、成本、库存、销售、运输、财务、决策、人力资源等方面起到积极而有效的作用,本系统在各业务流程上有针对性的设计和改良,将使得企业管理人员在软件操作过程当中,不会出现操作流程不连贯、各模块之间接口不紧密、软件升级繁琐、客户端维护成本高昂等问题。C/S结构与B/S结构两种模式的混合运用,将更加贴近中小企业的实际应用情况,方便企业在实际操作流程中高效地运用本产品来管理企业,达到最佳的资源组合。

不同规模的企业的运营和管理的模式不同,灵活实施ERP,使ERP具有中国特色。这样中小企业同样可以利用现代化的管理手段,创造出更大的经济效益和更多的社会价值。

参考文献

[1]陈欣欣.ERP在我国企业的应用研究[J].商业经济与管理,2003(1):33-36.

[2]Atul Gupta.Enterprise resource planning:the emerging organizational value systems[J].Industrial Management&Data Systems,2000,100(3):114-118.

[3]Atle Gulla J,Brasethvik T.On the Challenges of Business Modeling in Large-scale Reengineering Projects[C]//Proceedings for4th In-ternational Conference on Requirements engineering,2000.

面向数据的体系结构 篇11

关键词:面向对象;软件开发;数据库;程序设计

中图分类号:TP311.1 文献标识码:A文章编号:1007-9599 (2010) 09-0000-01

Database Application Based on Object-oriented Technology

Zhang Lin

(Ocean University of China,Shandong266033,China)

Abstract:Based on the object-oriented technology,aiming at the characteristics of relational database application methods are discussed, and some books management system as example analysis.The paper expounds the programmer can make better use of object-oriented technology,in a more natural way of dealing with the underlying database data.

Keywords:Object-oriented;Software development;Database;

Programming

一、面向对象的技术特点

面向对象是一种从组织结构上模拟客观世界的方法,它从客观世界的基本成分——对象出发,通过抽象来实现对客观世界的模拟,并通过抽象提取出对象之间的相互联系和相互作用。面向对象的思想首先出现在程序设计语言中,随后,逐渐渗透到许多复杂工程领域。

面向对象概念的核心是对象,即对一个信息及相应处理的描述。对象可分为客观世界中的对象和目标系统中的对象两大类。前者为现实中遇到的每一个实体,可以是一部电话、一所房子、一本书,可以是数据结构中的栈和队列,也可以是任何的处理过程。后者为面向对象程序设计中的对象,是一种特殊的数据结构,它包括对象的形状数据及对此数据进行的各种操作,可用公式表示为:对象=数据+操作。面向对象技术通过对现实世界中对象的抽象以及对各个对象之间的相互关系、相互作用的描述实现由现实世界到目标系统的映射。

二、基于面向对象技术的关系数据库应用方法

(一)整体思路

面向对象的设计方法需要寻找应用程序的领域类,类中封装了数据和对数据操纵的方法,对类的实例化就得到对象,所以必须要解决好对象的存放、检索等问题。在面向对象数据库中,数据以对象的形式保存,并且数据自动保存对象间的关系。数据库不需要集合也不需要分解,而且数据库由可靠的图像组成,这些图像是与对象有关的状态图像。因为面向对象数据库处理的是对象,而不是行和列,所以需要定义相关的方法以便对对象进行操作。

(二)对象映射成关系数据库

由于RDBMS以二维表为基本管理单元,所以对象模型最终是由二维表及表问关系来描述,即对象模型向数据库概念模型的映射就是向数据库表的变换过程。从数据库的角度看,关联和聚合/组合关系之间的唯一不同是对象相互之问的绑定程度,对于聚合和组合,在数据库中对整体所做的操作通常需要同时对部分进行操作,而关联则不同。在聚合情况下,在整体中读取时,通常希望在部分中读取,而在关联情况下,需要执行什么操作则不明显。在将对象保存到数据库中或从数据库中删除对象也存在相同的情况。

三、基于面向对象技术的数据库应用实例

根据需求,需要开发一个图书管理信息系统,系统选用SQL Server 2000作为后台数据库,前台选择Visual C++作为开发语言,Visual C++中的MFC为Visual C++提供了大量的类,把Windows API函数封装在类中,方便用户开发Windows应用程序。

按照对象映射成关系数据库的有关规则,并结合实际需求,给出系统的数据表结构如下:

管理员信息表(管理员编号PK,管理员姓名,管理员类别,管理员密码,管理员性别,联系电话,地址);

图书类别表(图书类别PK,可借阅天数);

借书信息表(记录编号PK,图书编号FK,图书名称,图书类别FK,价格,读者编号FK,读者姓名,借书时间,借书年份,借书当日位于当年的日子数);

图书信息表(图书编号PK,图书名称,图书类别FK,出版社,价格,入库时间,图书状态,读者编号FK,借阅频率,说明);

读者留言表(记录编号PK,读者编号FK,读者姓名,留言时间,留言信息);

读者信息表(读者编号PK,读者姓名,读者类别FK,读者密码,读者性别,联系电话,地址,读者所在系别,注册时间);

读者类别表(读者类别PK,可借阅册数);

还书信息表(记录编号PK,图书编号FK,图书名称,图书类别FK,价格,读者编号FK,读者姓名,还书时间);

罚款信息表(记录编号PK,图书编号FK,图书名称,图书类别FK,价格,读者编号FK,读者姓名,借书时间,还书时间,超期天数,挂失时间,罚金,是否缴纳罚金);

数据表之间通过主键(PK)和外键(FK)建立关联,以实现数据约束。为了更方便地对数据进行操作和管理,图书管理信息系统设计并使用专门的数据库类CADOCONN来封装系统数据库,其中包含了连接数据库的代码。在ADOCONN.H中定义指向Connection对象的指针和指向Recordset对象的指针。按照面向对象的观点,对数据表封装的伪代码如下:

class 数据表名

{

//数据表中的字段名

//对数据表操作的方法完成查询、更新、删除等操作,这些方法中包含建立、断开连接的语句和要执行的SQL语句

//其他的方法

}

四、结束语

基于面向对象技术的数据库管理系统的设计使得需求分析者和数据库设计者之间能够实现很好的交流,其技术关键是面向对象的对象模型及其向数据库结构的转化。面向对象的数据模型描述了真实世界的对象,以及对象间的关系和限制,并通过面向对象的数据库系统加以实现。

参考文献:

[1]王燕.面向对象的理论与实践[M].北京:清华大学出版社,1997

面向数据的体系结构 篇12

在实际的道路网络中,道路交叉口是交通拥挤,交通事故频繁发生的地点。而目前关于道路交叉口的研究内容主要集中在空间设计、时间设计、转向控制等方面[1,2],缺乏对道路交叉口进行精确的定义,不利于在计算机中实现对道路交叉口的数据建模。为此,笔者提出了一种描述道路交叉口的形式化方法,利用该方法可以方便地对各种类型的道路交叉口进行精确描述,并且可以方便地在计算机中进行数据建模。该方法为完整的路网定义提供了基础,为交通事故数据库的建立提供了道路交叉口的数据模型。

1 道路交叉口的概念模型

1.1 道路交叉口定义

本文定义道路交叉口的物理界限为相交的各条道路上距离停车线一定范围之内,一般取20 m,道路交叉口事故大多发生在该范围内。把单个道路交叉口入口处发生的事故与道路交叉口整体关联起来,方便对道路交叉口事故进行查询统计,比较分析等操作。在市区内,道路交叉口偶尔出现交叠的状态,在这种情况下,以将两个道路交叉口的中心节点间距的一半作为界限。

常见的道路交叉口类型如图1所示。

1.2 道路交叉口的概念模型

为将道路交叉口的各种情形在计算机中进行统一描述,笔者提出了一个抽象的概念模型。应用此概念模型,所有的交叉口都可以抽象地表示为节点-弧段结构。将道路交叉口的概念模型定义为一个六元组Intersection = G (ID, X, n, S, Y, info)。式中:①ID为道路交叉口的编号,是完整路网中的一个惟一编号;②X为道路交叉口的中心节点,X表征了该点的实际的地理位置,它与地理坐标关联;③n为相交于道路交叉口的分叉数,显然n≥3才有实际的研究意义;④S为道路交叉口的物理界限,刻画交叉口所取邻域的范围,通常以米或里程为单位;⑤Y为以X为圆心,S为半径的一个立体球面与交叉口路段的道路中心线的交点集,称之为边界节点集,记作:

Y = { Yi | YiBorderNode, i = 0,1, 2, …, n-1, n≥3 },特别地,Y0表示从中心节点X的正东方开始逆时针方向遇到的第1个边界节点 (如图2所示);⑥info为备注字段,表示道路交叉口的相关信息,如交叉口的分类等级、所在行政区域等。

由此概念模型可以推导出弧段集的定义:

ARC = { (X, Yi) | YiBorderNode, i = 0,1, 2, …, n-1, n≥3 }

显然,ARC表示了以道路交叉口的中心节点和边界节点为端点的弧段。

2 道路交叉口的面向对象数据模型

使用面向对象建模技术可反映路网的分层结构,更自然地描述数据,使模型中的对象更加接近于现实世界的实体。同时,相对于关系数据模型提高了灵活性[3]。更加直观地开发方法使得数据更容易收集,减少错误。

2.1 道路交叉口的数据结构

1.2中的概念模型已将道路交叉口抽象地表示为节点-弧段结构,交叉口的数据结构实际上是建立在节点的数据结构与弧段的数据结构的有机组合之上。在对交叉口进行对象建模时,交叉口对象的数据中,有部分来自弧段类和节点类。因此,先定义弧段与节点的数据结构如下:

为便于搜索方法的实现,采用邻接多重表[4]作为道路交叉口的存储结构。对每一条弧段用一个结点表示,由如下所示的4个域组成:

其中:mark为标志域,可用于标记弧段是否被搜索过;arcdata为弧段的数据结构,来自弧段类;i_link指向下一条在arc_data中以i_node为端点的弧段,j_link指向下一条在arc_data中以j_node为端点的弧段。 对每一个节点也用一个结点表示,由如下所示的2个域组成:

其中:node_data域存储节点的信息,来自节点类;firstarc指向第1条以该节点为端点的弧段。具体的数据结构表示如下:

2.2 道路交叉口类的表示

道路交叉口被抽象为一个道路交叉口类,由节点类与弧段类的聚合得到。在道路交叉口类中可以引用节点类与弧段类的属性和方法,主要实现方案如下:

对象类自身包含的方法可以创建该类的实例。以道路交叉口为例,它自身的方法可以确定道路交叉口的中心节点和与之相连的链接,并在道路交叉口界限处插入边界节点等。收集这些特征可以构成道路交叉口概念模型所定义的元组属性,实现道路交叉口的实例化。

道路交叉口对象可以派生出其它复杂的对象,如十字路口、T形交叉口、立体交叉口、错位交叉口和环形交通枢纽等。位于任一层次的对象都可以继承父类的属性和方法,同时拥有自己属性和方法。例如,对于2.1所示的环形交通枢纽(图1中的(e)),对其特征轮廓进行分析,可以认为是由5个“Y”型的交叉口组合而成,因此可选用“Y”型的交叉口对象来建构。

3 交叉口模型的数据库实现

为道路交叉口建立概念模型并进行数据建模,其最终目的是构建合理的交通事故数据库。根据交叉口的概念模型的元组定义和具体的数据建模方式,从实际应用的角度出发,设计了道路交叉口的数据库属性表,如表1所列。

表中的每一条记录存储中心节点的所有属性或边界节点的所有属性,字段(Intersection _ID, nX, nY)或者字段(Intersection _ID, nNum)可以构成该表的主键。对表中各字段分别解释如下:

1)Intersection _ID是道路交叉口的惟一标识,其编码方式不在文中讨论。

2)nType为节点标志,0表示中心节点,1表示边界节点。

3)nX是节点的横坐标。

4)nY是节点的纵坐标,用绝对坐标如大地坐标表示。

5)nNum用4位十进制表示。其中,前2位表示道路交叉口的分叉数,后2位表示节点的相对位置,中心节点取00,边界节点取值按中心节点正东方逆时针方向出现顺序递加。以图2所示的十字交叉口为例,中心节点XnNum属性为0400,边界节点Y0 至Y3 的nNum属性依次为0401,0402,0403,0404。

6)S为中心节点到边界节点之间的距离,以m为单位。对于中心节点,则S取0。

把中心节点和边界节点放在同一表中,既能为道路交叉口数据模型的邻接多重表直接提供全面的数据,又可减少数据的冗余,免去不必要的关联,能提高查询效率。

4 结 语

本文提出了一种形式化描述道路交叉口的方法,并应用面向对象技术进行了数据建模,最后给出交叉口数据模型的一种数据库实现方法,为道路交叉口的计算机描述和应用提供了支撑。该方案已经在广州市交通事故数据库管理系统的数据库设计过程中得以使用,效果较好。此外,根据上述道路交叉口的形式模型,可以较容易地扩展建立整个路网的形式化模型,从而为全网事故数据库的全面分析提供依据,这也正是我们下一步即将开展的工作。

参考文献

[1]周钱,陆化普,徐薇.城市道路交叉口设计系统的研究与开发[J].武汉理工大学学报:交通科学与工程版,2006,30(2):187-190

[2]孙明正,杨晓光.城市道路平面交叉口交通空间规划设计方法[J].城市交通,2006,4(3):47-52

[3]Lupton K,Bolsdon D,An object-based approach toa road network definition for an accident database[J].Computers,Environment and Urban Systems,1999(23):383-398

上一篇:泛在信息下一篇:光吸收特性