目录
一、数据库的基本概念
数据:描述事物的符号记录,包括数字、文字、图形、声音、档案记录等。以"记录的"形式按统一的格式进行存储
表:行(记录),列(字段/属性),将不同的记录组织在一起,用来存储具体数据。
**数据库:**表的集合,是存储数据库的仓库。以一定的组织方式存储的相互有关的数据集合。
**数据库管理系统:**DBMS,是实现对数据库资源有效组织、管理和存取的系统软件。包含数据库的建立和维护功能、数据定义功能、数据操纵功能、数据库的运行管理功能、通信功能。
(1)数据库的建立和维护功能:包括建立数据库的结构和数据的录入与转换、数据库的 转储与恢复、数据库的重组与性能监视等功能。
(2)数据定义功能:包括定义全局数据结构、局部逻辑数据结构、存储结构、保密模式及信息格式等功能。保证存储在数据库中的数据正确、有效和相容,以防止不合语义的错误数据被输入或输出。
(3)数据操纵功能:包括数据查询统计和数据更新两个方面。
(4)数据库的运行管理功能:这是数据库管理系统的核心部分,包括并发控制、存取控 制、数据库内部维护等功能。
(5)通信功能:DBMS 与其他软件系统之间的通信,如 Access 能与其他 Office 组件进行数据交换。
**数据库系统:**是一个人机系统,由硬件、OS、数据库、DBMS、应用软件和数据库用户组成。用户可以通过DBMS或应用程序操作数据库。
数据库系统的原理:
(1)接受应用程序的数据请求和处理请求
(2)将用户的数据请求(高级指令)转换为复杂机器代码(底层指令)
(3)实现对数据库的操作
(4)从数据库的操作中接受查询结果
(5)对查询结果进行处理(格式转换)
(6)将处理结果返回给用户
总结:应用程序接收/处理数据的请求,通过DBMS把高级指令转化为数据库能识别的语言。传给DB并实现对数据库的操作,再将操作后的结果,返回给DBMS,把数据语言转化为可以识别的语言,最后再返回给用户。
二、主流的数据库介绍
1、SQL Server (微软)
2、Oracle (甲骨文)
3、DB2 (IBM公司)
4、MYSQL (甲骨文公司收购)
三、关系数据库与非关系数据库
1.关系数据库
关系数据库系统是基于关系模型的数据库系统
关系模型的数据结构使用简单易懂的二维数据表
关系模型可用简单的"实体-关系"(E-R)图来表示
E-R图种包含了实体(数据对象)、关系和属性三个要素
实体:也称为实例,对应现实世界种可区别于其他对象的"事件"或"事物",如银行客户、银行账户等。
属性:实体所具有的某一特性,一个实体可以有多个属性,如银行客户实体集种的每个实体均具有姓名、住址、电话等属性。
联系:实体集之间的对应关系成为联系,也成为关系,如银行客户和银行账户之间存在"储蓄的关系"。
关系数据库的优缺点:
优点:
1、易于维护:都是使用表结构,格式一致
2、使用方便:SQL语言通用,可用于复杂查询
3、复杂操作:支持SQL,可用于一个表以及多个表之间非常复杂的查询
缺点:
1、读写性能比较差,尤其是海量数据的高效率读写
2、固定的表结构,灵活度稍欠
3、高并发读写需求,传统关系型数据库来说,硬盘I/O是一个很大的瓶颈
2.非关系数据库
非关系数据库也被称作NOSQL,适用于对关系很明确的数据建立模型、定义、存储数据。
非关系型数据库: 存储海量数据,给与"大数据"进行分析,筛选出有价值的部分,存储数据不以关系模型为依据,不需要固定的表格。
非关系型数据库的优点
(1)数据库可高并发读写
(2)对海量数据高效率存储于访问
(3)数据库具有高扩展性于高可用
常用的非关系数据库:Redis、mongoDB等
非关系型数据库优缺点:
优点:
1、格式灵活:存储数据的格式多样
2、速度快:nosql可以使用硬盘或者随机存储器作为载体,而关系型数据库只能使用硬盘
3、高扩展性
4、成本低:nosql数据库部署简单,基本都是开源软件
缺点:
1、不提高sql支持,学习和使用成本较高
2、无事物处理
3、数据结构相对复杂,复杂查询方面稍欠
4、好多数据写在内存中