数据处理是指对各种形式的数据进行收集、组织、加工、储存、抽取和传播的一系列活动的总和。 数据管理是指对数据的组织、存储、检索和维护,是数据处理的中心环节。主要围绕提高数据独立性、降低数据的冗余度、提高数据共享性、提高数据的安全性和完整性等方面来进行改进,使使用者能有效地管理和使用数据资源。 1. 手工管理阶段: 2. 文件管理阶段: 3. 数据库系统管理阶段 20世纪60年代后期开始,应用领域对计算机和数据管理的要求增大,计算机硬件和软件也有了新的发展,这些是: ●计算机应用增加,管理的数据量急剧增大; ● 对数据共享和减少数据冗余要求强烈; ● 硬件的发展有了大容量的磁盘; ● 连机实时处理的要求增大; 计算机技术用于数据管理,是指利用计算机的软件,硬件对数据进行存储、检查、维护并实现对数据的各种运算和操作。利用计算机进行数据管理主要分为三个阶段:手工管理阶段、文件系统管理阶段和数据库系统管理阶段。
1. 手工管理阶段:
计算机出现的初期,主要用于科学计算,没有大容量的存储设备。人们把程序和要计算的数据通过打孔的纸带送入计算机中,计算的结果由用户自己手工保存。处理方式只能是批处理, 数据不共享,不同程序不能交换数据。 应用程序中用到的数据都要由程序员规定好数据的存储结构和存取方式等。一组数据只能面向一个应用程序,不能实现多个程序的共享数据。不同程序不能直接交换数据,数据没有任何独立性。 ● 数据由人工保存 ● 一组数据只能面向一个应用程序,不能实现多个程序的共享数据。 ● 不同程序不能直接交换数据,数据没有任何独立性。
面向对象的程序设计语言
1. 第一代:层次和网状数据库:
(1) 层次数据库系统: IBM公司于1968年研制成功的数据库管理系统(IMS---Information Management System信息管理系统),允许多个COBOL程序共享数据库,该系统的设计是面向程序员的,操作难度较大。但由于IBM公司产品竞争力强,因此,IMS成了较为著名的数据库系统,曾得到广泛的使用。 层次数据库IMS是世界上第一个DBMS系统,采用层次数据模型,只能处理数据之间1:1和1:N的关系。
(2) 网状数据库系统: 1969年10月CODASYL(Conference on Data System Language数据系统语言协会)组织的下属组织DBTG(Data Base Task Group数据库任务组)提出了关于网状模型的数据库系统。该组织一系列关于数据库的工作和报告澄清了许多数据库的概念,为数据库的成熟奠定了基础。DBTG报告规定了网状数据库所有的术语和规范。网状数据库系统提供: · 数据定义语言 DDL (Data Description Language) · 数据操纵语言 DML (Data manipulation Language) 网状数据库系统均以美国的 CODASYL的 DBTG报告为基础。网状模型可以描述现实世界中数据之间的1:1、1:N和M:N(多对多)的关系。但是,要处理多对多的关系还要进行转换,操作也不方便。
2. 第二代:关系数据库系统RDBMS(Relational DBMS)
1970年6月IBM公司San Joe研究所的E.F.Code发表了'大型共享数据库的数据关系模型'论文,提出了关系数据库模型的概念,奠定了关系数据库数据模型的理论基础,使数据库技术成为计算机科学的重要分支,开创了数据库的关系方法和关系规范化的研究。关系方法由于理论上的完美和结构上的简单,对数据库技术的发展起到了关键性的作用。从此一些关系数据库系统陆续出现。1974年,IBM公司的San Joe研究所研制成功了关系数据库管理系统System R。而1984年David Marer所著'关系数据库理论'一书标志着关系数据库理论的成熟。 80年代是关系数据库发展的鼎盛时期,并且至今久盛不衰。它的最大优点是: · 使用了非过程化的数据库语言SQL; · 具有很好的形式化理论基础,高度的数据独立性; · 使用方便,二维表格可直接处理多对多的关系。 目前我国应用较多的RDBMS有ORACLE, SQL SERVER,INFORMIX,DB2,SYBASE等。
由于关系数据库的许多优点,如具有很好的形式化基础,高度的数据独立性,非过程化的数据库语言,以及很方便的利用二维关系表可以直接处理1:1,1:N和M:N(多对多)的关系,使得关系数据库到了21世纪仍然被得到广泛的应用。 程序语言分为过程化的语言和非过程化的语言。所谓过程化的语言是指要提出'做什么',必须明确指明如何去做才能完成你的命令。如我们已经学习过的程序设计语言:C和PASCAL等都是过程化的语言。在这些语言编程过程中,你要打印一个数据,你必须指明如何找到这个数据的过程,也就是要指明它的存储位置或变量。而非过程化的语言,是指你只要提出'做什么',不用指明如何去做,系统自动就能完成你的任务。关系数据库语言SQL就是非过程化的语言。
3. 第三代:面向对象的数据库系统OODBMS(Object Oriented DBMS)
随着计算机技术的发展,计算机的应用领域不断扩大,由科学计算到企业资源管理,到工程设计领域,如计算机辅助设计CAD,计算机辅助制造CAM,多媒体应用,人工智能等领域,这些新的领域,对数据库技术提出了许多非传统的应用要求: · 存储和管理大量复杂的数据和实体,如:多媒体数据、图形图像数据、超文本数据、空间数据和时态数据等。这些复杂的数据类型是关系数据库中不能完全支持的。 · 保留设计的历史和设计的版本数据。在工程设计过程中,一个设计部件会有多种设计阶段,每个设计阶段又会有多个不同的设计方案,每个设计方案又可产生不同的设计修订版。为了支持工程设计过程的反复性和试探性设计,需要保留每个设计对象的多个版本。 · 存储大量标准部件和工程数据。存储大量国标或部标的标准数据及工程设计要求、规范等数据。 · 随着工程设计的进展,设计对象的模型结构也会有变化,数据模型要能动态的修改等。
随着新的应用领域的要求,在20世纪80年代后期出现了支持面向对象数据模型的面向对象数据库管理系统OODBMS。已经商品化的OODBMS如objectStore、ONTOS、VERSANT、GemStore等。
1.对象关系数据库ORDBMS(Object Relation DBMS)
ORDBMS是在关系模型数据库基础上扩充复杂的数据类型和操作而产生的。主要的扩充包括增加描述非文本、非结构化数据的对象类和相应的对象操作支持功能,使数据库系统可以满足跨平台和不同媒体对象的应用,特别是支持Web数据库应用。 对象关系数据库扩充支持SQL语言,所以是关系型的;同时又支持复杂数据类型,故又是面向对象的。在本质上,它是关系世界的SQL与对象世界的模型基元的结合,保持了RDBMS的所有功能和优势,同时在数据库服务器中添加灵活的功能,支持复杂的'用户自定义'应用程序对象。 如前所述,传统的数据类型和SQL的搜索能力不足以应付新的应用对数据库技术的要求;同时,我们需要的不是一组新的数据类型和新功能的堆积,而是一种能够让用户自己灵活地定义需要的数据类型和函数,要求数据库不仅要存储多种数据类型,还要能完成和实现对多种数据类型的操作行为。 为了实现允许用户自定义数据类型/函数和自定义操作数据的行为规则,在关系数据库的基础上通过扩展如下两个方面来实现: (1) 第一是在关系数据库管理系统中增加'对象体系结构',支持用户自定义数据类型、函数和规则。例如,定义非结构化的大对象;定义用户约束和触发等。 (2) 第二是在对象体系结构的基础上建立'关系型扩展器'。 这种既包含底层对象结构,又包含一组关系型扩展器的系统被称为'对象关系型'数据库系统。对象关系型系统是把面向对象编程语言的优势与关系型数据库的特征和高级非过程化查询语言结合起来。 对象-关系型数据库的基本应用领域包括CAD/CAM/CAPP/CAE/电子商务等。扩充的主要内容是数据类型以及函数(方法和操作符)的扩展。实现的方法是将高级查询语言与数据的多视图相结合,目的是抓住更多的数据语义。对象关系型数据库的基本特征包括: (1) 复杂对象:由多种基本的或用户定义的类型构成的对象,如多媒体数据、超文本数据、时态数据、图形图象数据等。 (2) 继承性:支持类继承特性。在将复杂数据集成到数据库的同时,还需要自动应用业务规则以确保数据的完整性和一致性。 以IBM公司的DB2关系数据库为例,说明对象关系型数据库的对象体系结构和它的关系型扩展器。 (1) DB2的对象体系结构 · 用户定义大对象。DB2提供三种数据类型存储大型对象:BLOB用于存储大型二进制对象;CLOB用于存储字符串大对象;DBCLOB用于存储双字节字符串对象。这三种类型都可以存储多达2GB的对象。 · 用户自定义函数。DB2提供了100多个内置函数,以进行对数字、串、日期和其他类型数据的各种计算,允许用户用C、C 等语言创建自己的新函数,用户定义的函数还可以带参数,而且其中可以含有获得标量值的SQL语句表达式。 · 用户自定义数据类型。基于DB2内置的数据类型基础上,用户可创建自己的数据类型,并指定适合自定义类型的操作。 (2) 关系型扩展器 在对象底层结构的基础上,可以写出关系型扩展器来支持特定领域的应用。DB2已经提供的扩展器包括: · 文本扩展器:支持快速大型文本文档基于内容的检索,对文档的存储格式没有特定的要求,适合当前流行的文档格式,如WORD、TXT等。支持18种语言的文档处理。利用内置的语言知识,通过特殊的索引方法为存储整个文档的内容建立索引,实现快速搜索。 · 图像扩展器:能存储和检索几种流行格式的图像,包括GIF、JPEG和BMP等。可以执行基于内容的图像搜索。例如,搜索与给定的样本色彩和构造相似的图像。 · 视频扩展器:存储和检索几种流行格式的视频序列,包括MPEG1、AVI和Quick-time等。它可以通过探测场景变化自动地把一个视频分割成'镜头',并且可以从每一个'镜头'检索代表性画面。 · 声音扩展器:存储和检索几种流行格式的声音剪辑,包括AIFF、MIDI和WAVE等。它可以探测声音数据的特征,如一个剪辑的播放时间、音轨数和曲子数目等。 · 指纹扩展器:存储和检索一种特定格式的指纹,它可以搜索与给定的样本相似的指纹。
1.全部手工编程阶段 从数据的科学计算到工程图纸的绘制都要程序员逐条编写程序来实现。 2.大型专业应用程序包 大型专业应用程序包的产生,简化了工程人员的编程,他们不需要编写底层的通用程序,主要集中精力设计如何使用各种软件包;以实现复杂的工程计算和复杂的工程设计任务。例如,有限元程序库、数学科学计算程序库、计算机绘图程序库。20世纪80年代主要的绘图程序如CGI、GKS、PHIGS、PLOT10等。数学科学计算程序库如MATLIB等 3.图形交互技术的广泛使用 · 计算机性能的提高;图形输入/输出设备的发展:高清晰度显示器、鼠标、绘图机、扫描仪等,使得利用计算机进行图形处理变得非常直观和方便。 · 交互图形软件很快发展起来,如商品化的用户界面管理系统 UIMS(User Interface Management System),MS_Windows、x_Window、Open Look、Mortify、OpenGL等交互图形软件。 · 能构造直观、形象、灵活的交互图形界面。 随着计算机硬件及外围设备的发展,计算机的性能提高了,图形输入/输出设备发展了:如高清晰度的显示器、鼠标、绘图仪、扫描仪等,使得利用计算机进行图形处理变得非常直观和方便。交互图形软件很快发展起来,不仅出现了许多交互图形用户界面管理系统UIMS,各种图形控件、组件库,而且各种程序设计语言,软件工具及数据库系统也都提供各种菜单、表单设计器,使得很方便构造直观,形象灵活的交互图形环境。 4.计算机集成制造系统CIMS 随着世界性的科学技术的进步,我们的周围世界中,每天都产生许多新的信息和知识。这包括技术的、科学的、商业的以及地理的和航空的等等,构成一个强大的信息海洋,以致每隔几年信息量就会翻一翻。这些大量的信息只能使用现代化的计算机和通迅技术进行管理。 CIMS是一项高新技术,其特征是指导企业以全局的、系统的观点来规划、营造和调整企业的经营模式,采用信息技术、自动化技术和先进的管理技术,完成产品的设计、生产、管理、经营决策和市场服务。在当前全球化市场竞争中,每个企业所面临的都是科技含量不断提高的新产品的竞争。面对激烈竞争,制造技术必须与飞速发展的信息技术、自动化技术有机的结合起来,形成新一代先进制造技术(Advanced Manufacturing Technology)。使产品从最短的上市时间(T-Time to Market),最好的质量(Q-Quality),最低的成本(C-Cost),最优的服务(S-Service),以及最清洁的环境(E-Environment)满足客户对产品的需求。CIMS系统集成的思想和方法提高了企业的敏捷性,柔性和健壮行。帮助企业适应小批量、多品种、快速、精良的发展趋势,扩大市场提高利润。 CIMS(Computer Integrated Manufacturing System)是为把产品信息 (包括技术信息和管理信息) 集成存储与管理而提出的。 CIMS是在自动化技术、网络技术及制造技术的基础上,通过计算机及其软件,把一个公司、一个单位、一个工厂的所有的经营活动信息:计划、设计、生产、销售、维护、成本核算、以及财务、人事等所有数据,有机地集成起来,建立综合的计算机辅助信息处理流程,以适应多品种、小批量生产的总体高效益、高柔性的智能制造系统。
1974年美国约瑟夫·哈林顿(Joseph Harrington)博士在《Computer Integrated Manufacturing》一书中率先提出了CIM(计算机集成制造)的概念。其要点是:(1) 企业的各个生产环节是不可分割的,需要统一安排--'系统的观点'。(2) 产品制造过程实质上是信息采集、传递、加工处理过程--'信息化观念'。 CIMS中的术语: CAE = Computer Aided Engineering CAD = Computer Aided Design CAM = Computer Aided Manufacturing CAPP = Computer Aided Process Planning MRP = Material Resource Planning MRPII = Manufacturing Resource Planning ERP = Enterprise Resource Planning CAX:指各种计算机辅助软件的总称,包括CAD、CAM、CAE、CAPP等。
|