① 数据库技术的发展过程经历了哪些阶段
可以参考 PingCAP 的 介绍, 同事了解下 国内分布式数据库排行榜一的 TiDB. 有更多问题,可以到 AskTUG 一起讨论,多谢。
② 数据库的发展阶段
数据库发展阶段大致划分为如下的几个阶段:人工管理阶段、文件系统阶段、数据库系统阶段、高级数据库阶段。 50年代中期之前,计算机的软硬件均不完善。硬件存储设备只有磁带、卡片和纸带,软件方面还没有操作系统,当时的计算机主要用于科学计算。这个阶段由于还没有软件系统对数据进行管理,程序员在程序中不仅要规定数据的逻辑结构,还要设计其物理结构,包括存储结构、存取方法、输入输出方式等。当数据的物理组织或存储设备改变时,用户程序就必须重新编制。由于数据的组织面向应用,不同的计算程序之间不能共享数据,使得不同的应用之间存在大量的重复数据,很难维护应用程序之间数据的一致性。
这一阶段的主要特征可归纳为如下几点:
*计算机中没有支持数据管理的软件。
*数据组织面向应用,数据不能共享,数据重复。
*在程序中要规定数据的逻辑结构和物理结构,数据与程序不独立。
*数据处理方式——批处理。 这一阶段的主要标志是计算机中有了专门管理数据库的软件——操作系统(文件管理)。
上世纪50年代中期到60年代中期,由于计算机大容量存储设备(如硬盘)的出现,推动了软件技术的发展,而操作系统的出现标志着数据管理步入一个新的阶段。在文件系统阶段,数据以文件为单位存储在外存,且由操作系统统一管理。操作系统为用户使用文件提供了友好界面。文件的逻辑结构与物理结构脱钩,程序和数据分离,使数据与程序有了一定的独立性。用户的程序与数据可分别存放在外存储器上,各个应用程序可以共享一组数据,实现了以文件为单位的数据共享。
但由于数据的组织仍然是面向程序,所以存在大量的数据冗余。而且数据的逻辑结构不能方便地修改和扩充,数据逻辑结构的每一点微小改变都会影响到应用程序。由于文件之间互相独立,因而它们不能反映现实世界中事物之间的联系,操作系统不负责维护文件之间的联系信息。如果文件之间有内容上的联系,那也只能由应用程序去处理。 60年代后,随着计算机在数据管理领域的普遍应用,人们对数据管理技术提出了更高的要求:希望面向企业或部门,以数据为中心组织数据,减少数据的冗余,提供更高的数据共享能力,同时要求程序和数据具有较高的独立性,当数据的逻辑结构改变时,不涉及数据的物理结构,也不影响应用程序,以降低应用程序研制与维护的费用。数据库技术正是在这样一个应用需求的基础上发展起来的。
数据库技术有如下特点:
* 面向企业或部门,以数据为中心组织数据,形成综合性的数据库,为各应用共享。
* 采用一定的数据模型。数据模型不仅要描述数据本身的特点,而且要描述数据之间的联系。
* 数据冗余小,易修改、易扩充。不同的应用程序根据处理要求,从数据库中获取需要的数据,这样就减少了数据的重复存储,也便于增加新的数据结构,便于维护数据的一致性。
*程序和数据有较高的独立性。
* 具有良好的用户接口,用户可方便地开发和使用数据库。
* 对数据进行统一管理和控制,提供了数据的安全性、完整性、以及并发控制。
从文件系统发展到数据库系统,这在信息领域中具有里程碑的意义。在文件系统阶段,人们在信息处理中关注的中心问题是系统功能的设计,因此程序设计占主导地位;而在数据库方式下,数据开始占据了中心位置,数据的结构设计成为信息系统首先关心的问题,而应用程序则以既定的数据结构为基础进行设计。大事记
1951:Univac系统使用磁带和穿孔卡片作为数据存储。
1956:IBM公司在其Model 305 RAMAC中第一次引入了磁盘驱动器
1961:通用电气(GE)公司的Charles Bachman开发了第一个数据库管理系统——IDS
1969: E.F. Codd发明了关系数据库。
1973:由John J.Cullinane领导Cullinane公司开发了 IDMS——一个针对IBM主机的基于网络模型的数据库。
1976:Honeywell公司推出了Multics Relational Data Store——第一个商用关系数据库产品。
1979:Oracle公司引入了第一个商用SQL关系数据库管理系统。
1983:IBM推出了DB2数据库产品。
1985:为Procter & Gamble系统设计的第一个商务智能系统产生。
1991:W.H.“Bill” Inmon发表了”构建数据仓库”。 随着信息管理内容的不断扩展,出现了丰富多样的数据模型(层次模型,网状模型,关系模型,面向对象模型,半结构化模型等),新技术也层出不穷(数据流,Web数据管理,数据挖掘等)。每隔几年,国际上一些资深的数据库专家就会聚集一堂,探讨数据库研究现状,存在的问题和未来需要关注的新技术焦点。过去已有的几个类似报告包括:1989年Future Directions inDBMS Research-The Laguna BeachParticipants ;1990年DatabaseSystems : Achievements and Opportunities ;1991年W.H. Inmon 发表的《构建数据仓库》;1995年Database。
③ 数据库开发工具的发展大致经历了哪四个主要阶段
一、数据库技术的历史和发展
数据库技术是本世纪60年代开始兴起的一门信息管理自动化的新兴学科,是计算机科学中的
一个重要分支。随着计算机应用的不断发展,在计算机应用领域中,数据处理越来越占主导
地位,数据库技术的应用也越来越广泛。
数据库是数据管理的产物。数据管理是数据库的核心任务,内容包括对数据的分类、组织、
编码、储存、检索和维护。随着计算机硬件和软件的发展,数据库技术也不断地发展。从数据
管理的角度看,数据库技术到目前共经历了人工管理阶段、文件系统阶段和数据库系统阶段。 A.人工管理阶段 人工管理阶段是指计算机诞生的初期(即20世纪50年代后期之前),这个时期的计算机主要用
于科学计算。从硬件看,没有磁盘等直接存取的存储设备;从软件看,没有操作系统和管理
数据的软件,数据处理方式是批处理。 这个时期数据管理的特点是:
1. 数据不保存
该时期的计算机主要应用于科学计算,一般不需要将数据长期保存,只是在计算某一课题
时将数据输入,用完后不保存原始数据,也不保存计算结果。
2. 没有对数据进行管理的软件系统
程序员不仅要规定数据的逻辑结构,而且还要在程序中设计物理结构,包括存储结构、存
取方法、输入输出方式等。因此程序中存取数据的子程序随着存储的改变而改变,数据与
程序不具有一致性。
3. 没有文件的概念
数据的组织方式必须由程序员自行设计。
4. 一组数据对应于一个程序,数据是面向应用的
即使两个程序用到相同的数据,也必须各自定义、各自组织,数据无法共享、无法相互利
用和互相参照,从而导致程序和程序之间有大量重复的数据。 B.文件系统阶段 文件系统阶段是指计算机不仅用于科学计算,而且还大量用于管理数据的阶段(从50年代后
期到60年代中期)。在硬件方面,外存储器有了磁盘、磁鼓等直接存取的存储设备。在软件
方面,操作系统中已经有了专门用于管理数据的软件,称为文件系统。 这个时期数据管理的特点是: 1. 数据需要长期保存在外存上供反复使用 由于计算机大量用于数据处理,经常对文件进行查询、修改、插入和删除等操作,所以数
据需要长期保留,以便于反复操作。 2. 程序之间有了一定的独立性 操作系统提供了文件管理功能和访问文件的存取方法,程序和数据之间有了数据存取的接
口,程序可以通过文件名和数据打交道,不必再寻找数据的物理存放位置,至此,数据有
了物理结构和逻辑结构的区别,但此时程序和数据之间的独立性尚还不充分。 3. 文件的形式已经多样化 由于已经有了直接存取的存储设备,文件也就不再局限于顺序文件,还有了索引文件、链
表文件等,因而,对文件的访问可以是顺序访问,也可以是直接访问。 4. 数据的存取基本上以记录为单位 C.数据库系统阶段 数据库系统阶段是从60年代后期开始的。在这一阶段中,数据库中的数据不再是面向某个应
用或某个程序,而是面向整个企业(组织)或整个应用的。 数据库系统阶段的特点是: 1. 采用复杂的结构化的数据模型 数据库系统不仅要描述数据本身,还要描述数据之间的联系。这种联系是通过存取路径来
实现的。 2. 较高的数据独立性 数据和程序彼此独立,数据存储结构的变化尽量不影响用户程序的使用。 3. 最低的冗余度 数据库系统中的重复数据被减少到最低程度,这样,在有限的存储空间内可以存放更多的
数据并减少存取时间。 4. 数据控制功能 数据库系统具有数据的安全性,以防止数据的丢失和被非法使用;具有数据的完整性,以
保护数据的正确、有效和相容;具有数据的并发控制,避免并发程序之间的相互干扰;具
有数据的恢复功能,在数据库被破坏或数据不可靠时,系统有能力把数据库恢复到最近某
个时刻的正确状态。二、三代数据库系统的发展 数据模型是数据库系统的核心。按照数据模型发展的主线,数据库技术的形成过程和发展可从
以下三个方面反映: A. 第一代数据库系统 层次和网状数据库管理系统 层次和网状数据库的代表产品是IBM公司在1969年研制出的层次模型数据库管理系统。层次
数据库是数据库系统的先驱,而网状数据库则是数据库概念、方法、技术的奠基。 B. 第二代数据库系统 关系数据库管理系统(RDBMS) 1970年,IBM公司的研究员E.F.Codd在题为《大型共享数据库数据的关系模型》的论文中提
出了数据库的关系模型,为关系数据库技术奠定了理论基础。到了80年代,几乎所有新开发
的数据库系统都是关系型的。 真正使得关系数据库技术实用化的关键人物是James Gray。Gray在解决如何保障数据的完整
性、安全性、并发性以及数据库的故障恢复能力等重大技术问题方面发挥了关键作用。 关系数据库系统的出现,促进了数据库的小型化和普及化,使得在微型机上配置数据库系统成
为可能。 C. 新一代数据库技术的研究和发展 目前已从多方面发展了现行的数据库系统技术。我们可以从数据模型、新技术内容、应用领
域三个方面概括新一代数据库系统的发展。 (1) 面向对象的方法和技术对数据库发展的影响最为深远 80年代,面向对象的方法和技术的出现,对计算机各个领域,包括程序设计语言、软件工程、
信息系统设计以及计算机硬件设备等都产生了深远的影响,也给面临新挑战的数据库技术带
来了新的机遇和希望。数据库研究人员借鉴和吸收了面向对象的方法和技术,提出了面向对
象的数据库模型(简称对象模型)。当前有许多研究是建立在数据库已有的成果和技术上的,
针对不同的应用,对传统的DBMS,主要是RDBMS进行不同层次上的扩充,例如建立对象关
系(OR)模型和建立对象关系数据库(ORDB)。 (2) 数据库技术与多学科技术的有机结合 数据库技术与多学科技术的有机结合是当前数据库发展的重要特征。计算机领域中其他新兴
技术的发展对数据库技术产生了重大影响。传统的数据库技术和其他计算机技术的结合、互
相渗透,使数据库中新的技术内容层出不穷。数据库的许多概念、技术内容、应用领域,甚
至某些原理都有了重大的发展和变化。建立和实现了一系列新型的数据库,如分布式数据库、
并行数据库、演绎数据库、知识库、多媒体库、移动数据库等,它们共同构成了数据库大家
族。 (3) 面向专门应用领域的数据库技术的研究 为了适应数据库应用多元化的要求,在传统数据库基础上,结合各个专门应用领域的特点,
研究适合该应用领域的数据库技术,如工程数据库、统计数据库、科学数据库、空间数据库、
地理数据库、Web数据库等,这是当前数据库技术发展的又一重要特征。 同时,数据库系统结构也由主机/终端的集中式结构发展到网络环境的分布式结构,随后又发
展成两层、三层或多层客户/服务器结构以及Internet环境下的浏览器/服务器和移动环境下的
动态结构。多种数据库结构满足了不同应用的需求,适应了不同的应用环境。