数据之光:探索数据库技术的演进之路

本文涉及的产品
数据管理 DMS,安全协同 3个实例 3个月
推荐场景:
学生管理系统数据库
简介: 数据之光:探索数据库技术的演进之路



数据库概述-数据管理技术

数据库的地位

  • 数据库技术产生于六十年代末,是数据管理的最新技术,是计算机科学的重要分支。
  • 数据库技术是信息系统的核心和基础,它的出现极大地促进了计算机应用向各行各业的渗透。
  • 数据库的建设规模、数据库信息量的大小和使用频度已成为衡量一个国家信息化程度的重要标志。

数据库的四个重要概念

  • 数据( Data)
  • 数据库(DataBase,DB)
  • 数据库管理系统(DataBaseManagementSystem,DBMS)
  • 数据库系统(DataBaseSystem,DBS)

信息与数据

信息

>信息是现实世界中对客观事物的反映。这种反映主要体现为事物属性的表现形式,是对事物存在方式或运动状态的刻画.

>信息的主要特征

  • 可传递性:信息是可以传递的,但其传递的前提是必须有载体,且传递过程消耗能量。
  • 可感知性:信息可以被人类“感觉”得到的,但感觉的方式可能由于信息源的不同而呈现多样性。
  • 可管理性:信息是可以被管理的,我们可以通过一定的方法对信息进行加工、存储、传播、再生和增值等。

数据

数据是描述事务的符号记录,是信息的符号化表示,是信息的载体。

数据是信息表示的一种符号形式。

这种符号形式可以是语言、图表、数字、声音等。但不管用什么样的符号形式,其目的只有一个,那就是客观地反映信息的内容。信息的内容不会随着数据表现形式的不同而改变。

信息和数据的区分和联系:

数据是信息的载体,可以有多种表现形式,其目的都是为了揭示信息的内容;

信息是数据的内涵,它仅由客观事物的属性来确定,而与数据形式无关。

但在实际应用中,如果不需要特别强调信息和数据的差异,这两个概念往往是互换的。

例如,“信息处理”和“数据处理”通常意指有相同内涵的两个概念

数据处理和数据管理

数据处理

  • 数据处理也称信息处理,它泛指用计算机对各种类型数据进行的处理操作。
  • 这些操作包括对数据进行采集、转换、分类、存储、排序、加工、维护、统计和传输等系列活动。
  • 数据处理的目的是从原始数据中提取有价值的、可作决策依据的信息。

数据管理

  • 数据管理指在复杂的数据处理过程中的一些基本操作,如数据存储、分类、统计和检索等。
  • 数据管理是数据处理的任务之一,是数据处理的核心内容,数据库系统的基本功能就是数据管理。

数据管理技术的发展过程

人工管理阶段(1946.2-1955 左右)

  • 这一阶段主要指是从计算机诞生到 20 世纪 50 年代中期的这一个时期。世界上第一台计算机 ENIAC于1946 年2月14日在美国宾夕法尼亚大学诞生,在随后的近十年中计算机的主要应用是科学计算,处理的是数字数据,数据量不大。
  • 计算机没有操作系统(实际上当时根本没有操作系统的概念)也没有数据的管理软件,是以批处理方式对数据进行计算。
  • 计算机硬件本身也没有磁盘,所使用的“存储设备”是磁带、卡片等。
人工处理阶段数据管理技术的特点体现在:
  • 数据不保存。

一是当时计算机所处理的数据量很小,不需要保存;

二是计算机本身就没有有效的存储设备。

  • 数据缺乏独立性和有效的组织方式。

这体现在数据依赖于应用程序缺乏共享性。其原因在于,数据的逻辑结构跟程序是紧密联系在一起的,程序 A 处理的数据,对程序 B 而言可能就无法识别,更谈不上处理。解决的办法是修改数据的逻辑结构,或者修改应用程序。显然,这种数据管理方法仅适用于小量数据,对大量数据则是低效的。

  • 数据为程序所拥有,冗余度高。

由于数据缺乏独立性,一组数据只能为一个程序所拥有,而不能同时为多个程序所共享,这就造成了一份数据的多个拷贝,各程序之间存在大量重复的数据,从而产生大量的冗余数据。

文件系统阶段(1955-1965)

  • 这一阶段是从 50 年代后期到 60 年代中期的这一段时间。这个时期计算机除了用于科学计算以外,还大量用于数据的管理
  • 计算机已经有了操作系统,并且在操作系统之上已经开发了一种专门用于数据管理的软件——文件管理系统。在文件管理系统中,数据的批处理方法发展到了文件的批处理方式,且还可以实现了一定程度的联机实时处理。
  • 计算机硬件本身已经出现了磁盘、磁鼓等外部存储设备
文件系统阶段特点
  • 计算机的应用从单纯的科学计算逐步转移到数据处理,特别是在该阶段的后期,数据处理已经成为计算机应用的主要目的。主要限于对文件的插入、删除、修改和查询等基本操作。
  • 数据按照一定的逻辑结构组成文件,并通过文件实现数据的外部存储。即数据是以文件的方式存储在外部存储设备中,如磁盘、磁鼓等。
  • 数据具有一定的独立性。由于数据是以文件的方式存储,文件的逻辑结构与存储结构可以自由地进行转换,所以多个程序可以通过文件系统对同一数据进行访问,实现了一定程度的数据共享。
  • 文件形式具有多样化,除了数据文件以外还产生了索引文件、链接文件、顺序文件、直接存取文件和倒排文件等。
  • 基本上以记录为单位实现数据的存取。
文件系统阶段缺点:
  • 数据和程序并不相互独立,数据冗余度仍然比较大。一个程序基本上是对应着一个或一组文件,即数据还是面向应用的,不同的程序还需建立自己的数据文件,能真正实现数据共享的情况并不多。原因在于,文件中数据的逻辑结构与其对应的程序密切相关而且没有统一标准的逻辑结构。
  • 难以保证数据一致性。由于文件之间没有关联机制,所以当对一个数据进行更改时难以保证对该数据的其他副本进行同样的更改。
  • 文件的数据表达能力十分有限。这主要体现在,文件中的数据结构比较单一,也比较简单,还难以表示复杂的数据结构。

数据库系统阶段(1965-至今)

  • 数据库系统阶段始于 20 世纪 60 中后期,一直到现在。这时计算机除了用于科学计算以外,更多时候是用于数据管理,而且数据的量已经很大,管理功能也越来越强大。
  • 计算机硬件本身也发生了深刻的变化,出现了大容量磁盘和高主频的 CPU 等。
  • 在软件上,数据的管理软件已经由原来的文件系统上升到了数据库管理系统(DBMS)。
  • 数据管理的主要特点是数据集中存放在一个地方,这个地方就是所谓的数据库。应用程序要实现对数据库中的数据进行访问,则必须通过数据库管理系统来完成。

数据库的定义

数据库,顾名思义,是存放数据的仓库

人们收集并抽取出一个应用所需要的大量数据之后,应将其保存起来以供进一步加工处理,进一步抽取有用信息。

数据库(Database,简称 DB)是长期储存在计算机内有组织可共享的大量数据的集合。

数据库技术是基于数据库的数据管理技术。

特点:

数据组织的结构化。从总体上看,文件系统中的数据是“涣散”的,而数据库中的数据是结构化的,具有统一的逻辑结构。数据的结构化是数据库的主要特征之一,是数据库和文件系统的最大和根本的区别。

减少数据冗余度,增强数据共享性。从整个系统上看,数据不再面向某一个特定的应用程序,而是面向由所有应用程序组成的系统。所以一个数据可以为多个应用程序所共享,一个应用程序也可以同时访问多个数据。

保证数据的一致性。通过建立文件间的关联,使得在对某一个数据进行更新时,与之相关的数据也得到相应更改。

具有较高的数据独立性。在数据库系统中,数据独立性包含两个方面,一个是数据的物理独立性,另一个是数据的逻辑独立性。

  • 数据的物理独立性是指在数据的物理存储结构发生改变时数据的逻辑结构可以不变的特性,
  • 数据的逻辑独立性是指在总体逻辑结构改变时,应用程序可以不变的一种特性。

数据库之所以具有较好的数据独立性,主要是因为数据库提供了两个映象功能:

数据的存储结构逻辑结构之间映象或转换功能以及

数据的总体逻辑结构局部逻辑结构之间的映象功能

前者保证了数据的物理独立性,后者则保证了数据的逻辑独立性。

以数据项为单位进行数据存取。相对文件系统而言,数据库可以实现更小粒度的数据处理,满足更多的应用需求。

具有统一的数据控制功能。这些功能包括数据的安全性控制、完整性控制、并发控制和一致性控制等功能。

数据管理技术发展的三个阶段

数据管理技术发展的这三个阶段是一个渐进的过程,它们的区别主要体现在应用程序和数据的关系上:

  • 在人工管理阶段,应用程序和数据是“混合”在一起;
  • 在文件系统阶段,应用程序则通过文件系统完成对数据的访问实现了数据和程序一定程度的分离;
  • 在数据库系统阶段,应用程序是通过数据库管理系统(DBMS)对数据进行访问,实现了数据和程序的高度分离。

三个阶段之间的关系表示:

数据库管理系统的基本功能

数据库管理系统的基本功能主要包括数据定义、数据存取、数据库建立与维护以及数据库运行管理等

  1. 数据定义:这是DBMS的一个核心功能,提供数据定义语言(DDL)来创建、修改或删除数据库中的表结构、视图和索引等对象。
  2. 数据存取:DBMS通过数据操纵语言(DML)实现数据的检索、插入、更新和删除操作。这允许用户对数据库中的数据进行各种操作以完成他们的业务需求。
  3. 数据库建立与维护:涉及数据库的初始数据加载、转储、恢复、重组织,以及系统性能监控和分析等功能。这些功能确保数据库能够稳定运行,并在出现问题时及时进行修复和优化。
  4. 数据库运行管理:包括数据的安全性、完整性和并发控制。DBMS必须保证在多用户访问的情况下,数据库中的数据仍然保持一致性和准确性。

总结:数据库管理系统是位于用户和操作系统之间的软件,它提供了强大而复杂的功能集,使得用户可以高效地存储、管理和检索数据。

希望对你有帮助!加油!

若您认为本文内容有益,请不吝赐予赞同并订阅,以便持续接收有价值的信息。衷心感谢您的关注和支持!

目录
相关文章
|
2天前
|
SQL 资源调度 关系型数据库
实时计算 Flink版产品使用合集之源表的数据被删除后,目标数据库在重启服务后没有进行相应的删除操作,是什么原因
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStreamAPI、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
2天前
|
SQL Oracle 关系型数据库
实时计算 Flink版产品使用合集之从Oracle数据库同步数据时,checkpoint恢复后无法捕获到任务暂停期间的变更日志,如何处理
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStreamAPI、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
2天前
|
SQL Oracle 关系型数据库
实时计算 Flink版产品使用合集之如何SQL同步数据到Oracle数据库中
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStreamAPI、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
2天前
|
消息中间件 关系型数据库 Kafka
实时计算 Flink版产品使用合集之使用DTS从RDSMySQL数据库同步数据到云Kafka,增量同步数据延迟时间超过1秒。如何诊断问题并降低延迟
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStreamAPI、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
5天前
|
存储 NoSQL 分布式数据库
大数据存储技术(4)—— NoSQL数据库
大数据存储技术(4)—— NoSQL数据库
39 1
|
5天前
|
存储 监控 前端开发
关系型数据库数据输入验证
【5月更文挑战第12天】
39 5
|
5天前
|
存储 关系型数据库 数据库
关系型数据库的数据完整性约束
【5月更文挑战第12天】关系型数据库的数据完整性约束
18 2
|
5天前
|
数据库 数据库管理
理解数据库的ACID原则:确保数据完整性与一致性的基石
【5月更文挑战第20天】ACID原则是数据库事务处理的核心,包括原子性、一致性、隔离性和持久性。原子性保证事务操作全完成或全不完成,保持数据完整;一致性确保事务前后数据库保持一致性状态,不破坏完整性约束;隔离性防止并发事务相互影响,通过锁等技术实现;持久性则保证事务提交后的修改永久保存,即使系统故障也能恢复。这些原则确保了数据的可靠性和安全性。
|
8天前
|
关系型数据库 MySQL API
实时计算 Flink版产品使用合集之可以通过mysql-cdc动态监听MySQL数据库的数据变动吗
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
85 0
|
10天前
|
关系型数据库 MySQL 数据库
docker MySQL删除数据库时的错误(errno: 39)
docker MySQL删除数据库时的错误(errno: 39)
67 0