上古时期,人们使用“结绳记事”的方式来表示数量。绳子上有一个结表示发生了一件事,大结表示大事,小结表示小事。在农业社会,农民们日出而作、日落而息,通过计日和计时来掌握气候变化的规律。古埃及人开始使用十进制的计数法。苏美尔人开始使用账单、收据和票据等物,这可谓是现代会计学的鼻祖。印度则发明了阿拉伯数字,并且创立了“0”的概念。后来阿拉伯人把古希腊的数学融进自己的数学,又把这一简便易写的十进制位值记数法传遍欧洲,逐渐演变成今天的阿拉伯数字。20世纪计算机的发明和应用,让数字展现了不一样的魅力。它不仅是一种量的概念,而且成为了一种信息储存方式。如今,随着物联网、移动互联网、云计算、大数据、人工智能、区块链等新一代信息技术的发展,数据的产生、传输、储存、处理过程都发生了巨大变化,数据已经成为重要的资源。
在计算机科学中,凡是能输入计算机中并被计算机程序处理的符号都被统称为数据。随着计算机处理能力的增强,网页内容、论坛评论、自然语言、图像、视频等均被纳入数据的范畴。数据中蕴含的价值也日益显著。
所谓数据管理,是指利用计算机硬件和软件技术对数据进行有效的收集、存储、处理和应用的过程。其目的在于充分有效地发挥数据的作用。数据管理的发展与计算机技术的发展是同步的。数据管理经历了四个发展阶段:早期的人工管理阶段、文件系统阶段、数据库系统阶段,以及数据库系统的新发展阶段,如图1-1所示。
图1-1 数据管理的发展阶段
1. 人工管理阶段
人工管理阶段,应用程序及其数据集是一一对应关系,不同应用程序的数据集之间不能共享,如图1-2所示。
图1-2 人工管理数据
2. 文件系统阶段
文件系统不仅实现了数据的长期保存,还允许用户直接通过文件名管理数据,但是程序及其数据之间依然是一一对应关系。文件系统管理数据如图1-3所示。
图1-3 文件系统管理数据
假设某高校用文件系统管理在校学生的信息,在校学生的信息分别存储在不同部门的文件中,如图1-4所示。学生在校期间,除了要办理学生证之外,出入寝室还需要办理门禁卡,洗衣服需要办理洗衣卡等。当新生注册时,人事处、宿管中心需要分别录入学生的学号、姓名、性别、学院、专业等基本信息。当学生换专业时,人事处和宿管中心都需要修改该生的学院和专业信息,如果修改不同步,会造成学生的信息不一致。当学生办理毕业手续时,相关部门都需要删除该生的信息。
图1-4 文件系统管理数据应用示例
3. 数据库系统阶段
数据集中管理提高了数据的共享程度,降低了数据冗余,如图1-5所示。
假设用数据库系统管理在校学生信息,如图1-6所示。当新生注册时,学生的学号、姓名、性别、出生年月、学院、专业等基础数据只需要由有录入权限的人事处一次性录入,宿管中心、洗衣房等部门不需要重复录入也可查看学生的信息。当宿管中心为学生分配宿舍、发放门禁卡的时候,只需补充学生的住址信息即可;同时,宿管中心无权限录入或修改学生基本信息,只能为已经注册的学生安排宿舍。当学生换专业时,宿管中心和人事处在任何时间查看该生的学院和专业信息,结果都是一样的,不会出现数据不一致问题。数据库统一存取数据,实现了在程序之间共享数据,有效缓解了数据冗余问题,保证了数据的一致性。
图1-5 数据库管理数据
图1-6 数据库管理数据应用示例
此外,数据库技术提供强大的数据管理功能。例如,数据库管理系统提供数据的完整性约束、权限管理和并发控制,保证了数据的完整性、安全性与一致性,提高了数据管理效率。
4. 数据库系统的新发展阶段
随着移动互联网、大数据、云计算、人工智能等新一代信息技术的发展,传统数据库系统与其他新兴技术结合,形成了多种满足特定应用领域的新型数据库。例如,数据库技术与网络通信技术融合的分布式数据库系统,与面向对象技术融合的面向对象数据库系统,与多媒体技术融合的多媒体数据库,与人工智能技术融合的智能数据库,与大数据融合的NoSQL(Not Only SQL)数据库等都有着广阔的发展前景。