【数据库】

本文介绍了数据库的基本概念,包括数据、表、数据库、DBMS和数据库系统,强调了数据的组织和管理。讨论了关系型和非关系型数据库的特点,如关系型数据库的结构化和SQL支持,非关系型数据库的灵活性和高扩展性,并总结了各自的优缺点。
摘要由CSDN通过智能技术生成

一、数据库基本概念

1.1 数据

  1. 描述事物的符号记录称为数据(Data)。数字、文字、图形、图像、声音、档案记录等 都是数据。

  2. 数据是以“记录”的形式按照统一的格式进行存储的,而不是杂乱无章的。 相同格式和类型的数据统一存放在一起,而不会把“人”和“书”混在一起存储。这样,数据的存储就能够井然有序。

使用一些介质进行存储,例如文字存在文档中
数据库可以完成数据持久化保存+快速提取
数据如何保存:最外层是mysql服务—》mysql数据库
—》数据表—》记录为行,字段为列—>数据保存在一行行记录中

1.2 表

记录:行
字段(属性): 列
以行+列的形式就组成了表(数据存储在表中)
关系数据库的表由记录组成,记录由字段组成,字段由字符或数字组成。它可以供各种用户共享, 具有最小冗余度和较高的数据独立性,它是统一管理的相关数据的集合。

1.3 数据库

数据库就是表的集合。它是以一定的组织方式存储的相互有关的数据集合

1.4 数据库管理系统

数据库管理系统(DatabaseManagementSystem,DBMS)是实现对数据库资源有效组织、管理和存取的系统软件。它在操作系统的支持下,支持用户对数据库的各项操作
BMS主要包括以下功能:

  1. 数据库的建立和维护功能:包括建立数据库的结构和数据的录入与转换、数据库的 转储与恢复、数据库的重组与性能监视等功能。

  2. 数据定义功能:包括定义全局数据结构、局部逻辑数据结构、存储结构、保密模式及信息格式等功能。保证存储在数据库中的数据正确、有效和相容,以防止不合语义的错误数据被输入或输出。

  3. 数据操纵功能:包括数据查询统计和数据更新两个方面。

  4. 数据库的运行管理功能:这是数据库管理系统的核心部分,包括并发控制、存取控 制、数据库内部维护等功能。

  5. 通信功能:DBMS 与其他软件系统之间的通信,如 Access 能与其他 Office 组件进行数据交换。

1.5 数据库系统

数据库系统是指由数据库管理系统(DBMS)支持的大规模数据存储、管理和操作的软件系统。它提供了一种结构化的方式来存储和组织数据,以便有效地进行数据检索、更新和管理。

数据库系统的主要组成部分包括:

数据库:数据库是一个结构化的数据集合,用于存储和组织相关数据。它可以被看作是一种电子文件柜,其中包含了多个表和其他数据对象。

数据库管理系统(DBMS):DBMS是一个软件系统,用于管理和操作数据库。它提供了对数据库的访问、查询和更新功能,并确保数据的完整性、一致性和安全性。

数据模型:数据模型定义了数据库中数据的结构和关系。常见的数据模型包括层次模型、网状模型、关系模型和面向对象模型等。其中,关系模型是最常用的数据模型,使用表来表示实体和它们之间的关系。

查询语言:查询语言用于在数据库中进行数据检索和操作。常见的查询语言包括结构化查询语言(SQL),它是关系数据库中最常用的查询语言,用于执行各种查询、插入、更新和删除操作。

数据库管理工具:数据库管理工具用于辅助管理数据库系统,包括备份和恢复、性能优化、安全管理等功能。

数据库系统的优势包括:

数据共享和集中管理:数据库系统允许多个应用程序和用户共享同一组数据,并由统一的DBMS管理。这样可以避免数据冗余、数据不一致等问题,提高数据的一致性和可靠性。
数据完整性和安全性:DBMS提供了数据完整性和安全性的机制,可以通过定义约束、权限控制和加密等方式保护数据的完整性和安全性。
高效的数据访问和查询:数据库系统使用索引、查询优化等技术来提高数据的检索效率和查询性能。同时,它支持复杂的查询操作,如连接、聚合和排序等,使得数据检索更加灵活和高效。
可扩展性和容错性:数据库系统可以通过水平和垂直扩展的方式来增加处理能力和存储容量。同时,它提供了容错和恢复机制,确保在系统故障或错误发生时数据的安全和可靠性。
常见的数据库系统包括关系数据库系统(如Oracle、MySQL、Microsoft SQL Server)、NoSQL数据库系统(如MongoDB、Redis)和大数据存储系统(如Hadoop、Apache Cassandra)。根据具体需求和场景选择适合的数据库系统,可以有效地管理和操作大规模的数据。

1.6 DBMS的工作模式

  1. 接受应用程序的数据请求和处理请求

  2. 将用户的数据请求(高级指令)转换为复杂机器代码(底层指令)

  3. 实现对数据库的操作

  4. 从数据库的操作中接受查询结果

  5. 对查询结果进行处理(格式转换)

  6. 将处理结果返回给用户

二、数据库发展史

发展的三个阶段:
1、 层次型和网状型: 代表产品是1969年IBM公司研制的层次模型数据库管理系统IMS。
2、 关系型数据型库: 目前大部分数据库采用的是关系型数据库。1970年IBM公司的研究员E.F.Codd提出了关系模型。其代表产品为sysem R和Inges。
3、第三代数据库将为更加丰富的数据模型和更强大的数据管理功能为特征,以提供传统数据库系统难以支持的新应用。它必须支持面向对象,具有开放性,能够在多个平台上使用。管理技术的3个阶段1 人工管理2 文件管理3 数据库系统

mariadb

第三代数据库
⭐一些新的元素被添加进主流数据库系统中
引申:SQL + NoSQL 组合使用
web ——》 redis ——》mysql
CPU ——》 缓存 ——》内存

三、关系型数据库

⭐⭐ 实体-关系 E-R
记录(行) 表示了一个实体(的属性)
而E-R图:
实体与实体之间的联系(关系)
即 表与表的关系

关系数据库4-3
⭐⭐ 客户编码:主键
主键特性:唯一、非空

盐值加密

四、非关系型数据库

关系型数据库: 适用于对关系很明确的数据建立模型、定义、存储数据
非关系型数据库: 存储海量数据,给与”大数据“进行分析,筛选出有价值的
部分

Not Only SQL 不仅仅数据库 还可以缓存数据
键值 键就是变量名 值就是变量值
引申:redis 持久化方式
以键值存储数据,数据保存在内存中,但会定期将数据写入磁盘(持久化方式)

高德:实时分析平台,
使用非关系型数据库存储,如果需要持久化,就可以使用redis

Memcached、Redis、MongoDB、HBase

五、总结

关系型数据库优缺点

关系型数据库最典型的数据结构是表,由二维表及其之间的联系所组成的一个数据组织
优点:
1、易于维护:都是使用表结构,格式一致;
2、使用方便:SQL语言通用,可用于复杂查询;
3、复杂操作:支持SQL,可用于一个表以及多个表之间非常复杂的查询。
缺点:
1、读写性能比较差,尤其是海量数据的高效率读写;
2、固定的表结构,灵活度稍欠;
3、高并发读写需求,传统关系型数据库来说,硬盘I/O是一个很大的瓶颈。

非关系型数据库优缺点

非关系型数据库(NoSQL):
MongoDB 、 Redis(内存数据库/缓存数据库)K-V键值对、与之类似的Memcache,K-V键值对
redis-memecache对比:
相同点:存储高热数据(在内存中高速运行)
不同点:redis可以做持久化保存,可以存储对象

非关系型数据库严格上不是一种数据库,应该是一种数据结构化存储方法的集合,可以是文档或者键值对等。

优点:

1、格式灵活:存储数据的格式可以是key,value形式、文档形式、图片形式等等,文档形式、图片形式等等,使用灵活,应用场景广泛,而关系型数据库则只支持基础类型。
2、速度快:nosql可以使用硬盘或者随机存储器作为载体,而关系型数据库只能使用硬盘;
3、高扩展性;
4、成本低:nosql数据库部署简单,基本都是开源软件。

缺点:

1、不提供sql支持,学习和使用成本较高;
2、无事务处理;
3、数据结构相对复杂,复杂查询方面稍欠。
4、好多数据写在内存中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值