1.1.2 数据管理技术
计算机数据管理是指利用计算机对数据进行分类、组织、编码、存储、检索和维护,是数据处理的核心技术。与其他技术一样,随着计算机硬件和软件技术的发展,计算机数据管理技术也大致经历了从低级到高级的发展阶段。
1.人工管理
在 20 世纪 50 年代中期以前,计算机主要用于数值计算。当时计算机的计算能力十分有限。硬件方面没有能够直接存取大量数据的存储设备,软件方面没有操作系统和相应的数据管理软件,同时数值计算的数据量小,数据也不需要保存,程序运行结束就随之撤销。因此,数据由应用程序直接处理,数据的输入/输出格式、访问方式等都在应用程序中设定。数据依赖特定的应用程序,缺乏与应用程序之间的相对独立性、程序之间的数据共享性。数据处理采用了批处理方式,人工管理阶段数据与应用程序之间的关系如图1-1所示。
图1-1 人工管理阶段数据与应用程序之间的关系
2.文件系统
20世纪50年代后期到20世纪60年代中期,计算机的计算能力有了很大的发展,硬件方面已经有了能够直接存取大量数据的存储设备,软件方面出现了高级语言和操作系统,外存(外部存储器)中的数据由操作系统中的文件系统负责管理。因为有了文件系统,可以把数据和应用程序分开,应用程序存储在程序文件中,数据存储在独立的数据文件中,它们分别进行单独管理。计算机的应用范围逐渐扩大,计算机不仅用于科学计算,还大量用于数据管理。这个阶段称为文件系统阶段,数据和应用程序之间的关系如图1-2所示。
图1-2 文件系统管理阶段数据和应用程序之间的关系
文件系统管理阶段的最大优点就是开始实现了数据与应用程序的分离,数据存储在数据文件中,保存在外存中,可以重复使用。数据文件是由一条条记录组成的。一条记录是一些数据项的集合,如学生信息管理中的一条记录是学号、姓名、性别、年龄、家庭住址等数据项的集合。所有学生的记录就构成一个学生信息文件。用户使用文件名访问文件,对文件中的记录进行存取,不必考虑数据的物理存储。但是一个或一组数据文件基本对应一个应用程序,数据文件之间没有联系,一个数据往往重复出现在几个数据文件中,数据的共享性低、冗余度大、独立性差。
3.数据库系统
20世纪 60年代后期,计算机应用越来越广泛,管理的数据量急剧增长,管理规模越来越大,同时多应用、多用户共享数据的需求越来越大。文件系统已经解决不了所出现的问题,需要统一的数据处理中心来管理庞大的数据,向多应用系统提供数据服务,于是出现了专门的数据管理软件系统——数据库系统。数据库系统管理阶段数据与应用程序之间的关系如图1-3所示。
图1-3 数据库系统管理阶段数据与应用程序之间的关系
数据库系统管理是由数据库管理系统统一管理数据,数据库管理系统负责数据库的创建和维护、数据的查询和更新(插入、删除、修改)操作,并提供数据保护和控制功能,形成数据处理中心。数据以数据库文件组织形式长期保存,应用程序与数据的逻辑结构和物理存储结构无关,数据具有较高的逻辑独立性和物理独立性。数据库中数据是有结构的,根据数据库管理系统所支持的数学模型决定其结构形式。
数据库系统中的数据不再只是为某一应用系统所使用,而是采用面向全局的观点组织起来,为多个应用系统所使用。例如,一所学校往往包括多个应用系统,如学籍管理系统、教学管理系统,输入学生记录不仅使用学籍管理系统,还要使用教学管理系统等。因此,数据库不仅包括数据本身,而且包括数据之间的联系。数据库中的数据能够满足多用户、多应用的不同需求。数据的共享性高、冗余度小。节约存储空间可以避免数据之间的不相容性与不一致性。
4.分布式数据库系统
分布式数据库是数据库技术与网络技术相结合的产物。随着传统的数据库技术日趋成熟,以及计算机网络技术的飞速发展和应用范围的扩充,数据库应用已经普遍建立于计算机网络之上,这时集中式数据库系统表现出它的不足之处,数据按实际需要已在网络上分布存储,再采用集中式处理,势必会出现通信开销大的情况;应用程序集中在一台计算机上运行,一旦该计算机发生故障,则整个系统都会受到影响,可靠性不高;集中式处理导致系统的规模和配置都不够灵活,系统的可扩充性差。在这种形势下,集中式数据库的“集中计算”开始向“分布计算”发展。
分布式数据库系统有两种:一种在物理上是分布的,但逻辑上却是集中的;另一种在物理上和逻辑上都是分布的,也就是联邦式分布数据库系统。
5.面向对象数据库系统
将面向对象技术与数据库技术结合产生面向对象的数据库系统,是数据库应用发展的迫切需要,也是面向对象技术和数据库技术发展的必然结果。
面向对象的数据库系统必须支持面向对象的数据模型,具有面向对象的特性。一个面向对象的数据模型是用面向对象的观点来描述现实世界实体的逻辑组织、对象之间的限制和联系的。
另外,将面向对象技术应用到数据库应用开发工具中,使数据库应用开发工具能够支持面向对象的开发方法并提供相应的开发手段,对于提高数据库应用开发效率及增强数据库应用系统界面的友好性、可伸缩性、可扩充性等具有重要的意义。
6.数据仓库
随着客户机服务器技术的成熟和并行数据库的发展,信息处理技术实现了从大量的事务型数据库中抽取数据,并将其清理、转换为新的存储格式的过程,即为决策目标把数据聚合在一种特殊的格式中。随着此过程的发展和完善,这种支持决策的、特殊的数据存储被称为数据仓库(Data Warehouse)。数据仓库是支持管理决策过程的、面向主题的、集成的、稳定的、随时间变化的数据集合。
7.数据挖掘
数据挖掘(Data Mining)又被称为数据库中的知识发现(Knowledge Discovery in DataBase),它是一个从数据库中获取有效的、新颖的、潜在有用的、最终可理解的知识的复杂过程。简单来说,数据挖掘就是从大量数据中提取或挖掘知识。
数据挖掘和数据仓库的协同工作,一方面可以迎合和简化数据挖掘过程中的重要步骤,提高数据挖掘的效率和能力,确保数据挖掘过程中数据来源的广泛性和完整性;另一方面,数据挖掘技术已经成为数据仓库应用中极为重要和相对独立的工具。
8.大数据
大数据(Big Data)又被称为巨量数据、海量数据、大资料,是指所涉及的数据量规模巨大,很难通过人工在合理时间内达到截取、管理、处理并整理成为人们所能解读的信息。一般认为,大数据具有4V特点,即Volume(数据量大)、Variety(数据多样性)、Velocity(处理速度快)、Value(价值)。
大数据的 4V 特点具有 4 个层面的含义。第一,数据量大,从 TB 级别跃升到 PB 级别(1PB=1024TB),或者从PB级别跃升到EB级别(1EB=1024PB);第二,数据多样性,如网络日志、视频、图片、地理位置信息等;第三,处理速度快,1秒定律(要在秒级时间范围内给出分析结果,超出这个时间,数据就失去了价值),可从各种类型的数据中快速获取高价值的信息;第四,只要合理利用数据并对其进行正确、准确的分析,将会带来很高的价值回报。
对大数据而言,通过云计算技术、分布式处理技术、存储技术和感知技术的发展,这些原本很难收集和使用的数据开始容易被利用起来,通过各行各业的不断创新,大数据会逐步为人类创造更多的价值。