数据库第一章——数据库系统概论

基本概念

数据库

数据库定义:是一种依照特定数据模型组织、存储和管理数据的文件集合。这些文件一般存放在外部存储器中,以便长久保存数据,并可快速访问。

特点

  • 由数据库管理系统软件管理
  • 结构化

数据库普通数据文件的主要区别(重要)

  • 数据库可以支持不同应用对数据共享访问,普通数据文件难以支持。
  • 数据库可实现复杂的数据管理,普通数据文件难以实现。
  • 数据库可独立于应用程序,普通数据文件与应用程序紧耦合
  • 数据库的操作访问与控制管理由数据库管理系统软件实现;普通数据文件的操作访问与控制管理,都必须由应用程序实现

数据模型

数据模型定义:指描述事物对象的数据结构组成、数据语义联系、数据约束的抽象结构及其说明

  • 数据结构
  • 数据操作
  • 数据约束

不同的数据库变化的是数据模型

数据库使用的数据模型

  • 层次数据模型(现在已经不适用)
    • 思想:采用""结构来组织、存储和管理数据
      数据库第一章——数据库系统概论_第1张图片
  • 网状数据模型
    • 思想:"网状图"来组织、存储和管理数据
      数据库第一章——数据库系统概论_第2张图片
  • 关系数据模型(经久不衰至,今任使用)
    • 思想:"二维表"来组织、存储和管理数据 ,并以关联列(共享列)实现表之间的联系数据库第一章——数据库系统概论_第3张图片
    • 优点
      • 数据结构简单、操作灵活
      • 支持关系和集合的运算
      • 支持SQL
      • 广泛的用户基础
    • 局限
      • 只用于结构化数据的组织与存储管理
      • 支持的数据类型简单
    • 对象组织
      • 用户表:存储用户的应用数据
      • 系统表:存储数据库系统自身数据
      • 视图:通过虚拟表实现数据查询处理
      • 索引:通过目录数据结构支持快速的数据查询
      • 约束:对关系表及其数据施加规则
      • 存储过程:在数据库内部实现特定数据处理的过程程序
      • 触发器 :实现数据操作数据触发自动执行的过程程序
  • 其他数据模型(针对不同的情形)

数据库(应用)系统

基于数据库进行数据管理信息服务的软件系统。由用户、数据库应用程序、数据库管理系统和数据库组成

  • 用户:使用人员——程序员、系统分析师、管理员、最终用户
  • 应用程序: 在DBMS支持下对数据库中的数据进行访问处理的应用程序
    • 基本功能:输入、连接访问、查询、输出……
  • 数据库管理系统(DBMS):一种专门用来创建数据库、管理数据库、维护数据库,并提供外部对数据库进行访问的系统软件
    • 基本功能:创建、读写改删、维护、执行访问规则、备份和恢复、安全控制……
  • 数据库 :依照特定数据模型组织、存储和管理数据的文件集合
    • 数据内容:用户表(用户数据)、系统表(元数据1、索引数据、运行数据、其它数据)

功能(重要)

  • 创建数据库、数据库表以及其它对象
  • 读写、修改、删除数据库表中数据
  • 维护数据库结构
  • 执行数据访问规则
  • 提供数据库并发访问控制和安全控制
  • 执行数据库备份和恢复

发展

数据管理技术

  • 人工管理阶段
  • 文件系统管理阶段
  • 数据库系统管理阶段

数据库技术

  • 第一代——层次模型网状模型数据库技术
  • 第二代——关系模型数据库技术
  • 第三代——面向对象数据库技术和对象-关系数据模型
  • 第四代——半结构化,面向互联网应用的非结构化大规模分布式

数据库技术领域

  • 大数据技术:解决传统数据库管理软件不能有效解决的技术问题,如复杂
  • 数据挖掘技术
  • 商业智能

发展趋势

  • 两级发展,大的越大,小的越小
  • 行数据访问模式到列数据访问模式
  • 结构化到非结构化、半结构化
  • 操作型到数据仓库、商业智能数据分析、大数据处理
  • 通用到专业领域数据库

问题
1.为什么关系数据库不适合大数据应用处理?
2.结构化数据与非结构化数据有何区别?
3.NoSQL数据库与NewSQL数据库有何区别?
4.通用数据库与领域数据库有何区别?
5.数据库与数据仓库有何区别?
6.大数据分析与数据挖掘有何区别?

解答
1、大数据一般是非结构化的
2、即行数据,存储在数据库里,可以用二维表结构来逻辑表达实现的数据;非结构化数据包括所有格式的办公文档、文本、图片、XML、HTML、各类报表、图像和音频/视频信息等等
3、前者是非关系数据库(对象数据库),后者是既能处理非结构化也能处理结构化
4、领域数据库是专用领域,前者公共处理,两者在性能与支持上有区别
5、数据库通常更关注业务交易处理(OLTP),而数据仓库更关注数据分析层面(OLAP),由此产生的数据库模型上也会有很大的差异。数据库通常追求交易的速度,交易完整性,数据的一致性,等等,在数据库模型上主要遵从范式模型(1NF,2NF,3NF,等等),从而尽可能减少数据冗余,保证引用完整性;而数据仓库强调数据分析的效率,复杂查询的速度,数据之间的相关性分析,所以在数据库模型上,数据仓库喜欢使用多维模型,从而提高数据分析的效率。
6、数据挖掘可以对传统数据进行挖掘,也能对大数据进行挖掘,能挖掘数据的内在模式或者说知识,有许多算法;大数据分析面向更广泛的数据进行统计分析,也包含挖掘,两者有交叉

数据库应用系统

类型

  • 业务处理系统:商业终端销售系统、酒店系统……
  • 管理信息系统(MIS):人力资源管理系统……
  • 决策支持系统:提供辅助决策服务 电信销售大数据决策支持系统

应用结构

  • 单机结构:数据存储在一个计算机里,一般冗余度大
  • 集中式结构:为多个用户服务,存放在同一个服务器内,通过网络访问,所有处理集中在服务器中
  • 客户/服务器结构:解决集中式结构负载过重的问题,客户机程序数据库服务器分工进行数据处理
  • 分布式结构:物理上分布,逻辑上是一个整体,负载能力极强,处理性能强,数据要保证一致性,维护有一定的开销和技术难度数据库第一章——数据库系统概论_第4张图片

生命周期

  • 需求分析:需求获取,采用数据模型定义系统数据组成,以及数据字典
  • 系统设计:对系统数据库进行设计,包括系统概念数据模型、系统逻辑数据模型和系统物理数据模型设计
  • 系统实现:数据库创建与应用编程实现,主要包括DBMS安装部署、数据库创建、数据对象创建、应用编程实现等方面的工作
  • 系统测试:对数据库对象进行测试操作访问,实现数据库功能和性能测试
  • 系统运行与维护:在信息系统投入运行过程中,对数据库系统进行定期维护和优化,以保证数据库系统正常地、高效地运行

重点问题

数据库第一章——数据库系统概论_第5张图片

典型数据库管理系统

分类

  • 按用途分
    • 统用DBMS——如SQL Server
    • 专业邻域DBMS ——如嵌入式领域的SQLite
  • 按用户数分
    • 单用户——miniSQL
    • 多用户——MySQL
  • 按系统部署分类
    • 集中式——Access
    • 分布式 ——Oracle Database
  • 按使用场景分类
    • 桌面级——Access
    • 企业级——DB2、Oracle Database、Sybase ASE
  • 按软件版权分类
    • 产品——SQL Server
    • 开源 ——My SQL

桌面和企业级DBMS比较
桌面级应用于小规模,单用户场景。功能简单、体量小、处理能力弱。通常仅支持单一语言的应用程序开发
企业级应用于大规模,多用户使用场景。功能完善、软件体量大、处理能力强,安全性、可靠性更强。支持多种语言的应用程序开发。

典型数据库管理系统

  • ACCESS——微软公司推出的桌面数据库管理系统
  • SQL SERVER——微软公司推出的商用数据库管理系统
  • OracleDatabase——甲骨文公司推出的企业级数据库管理系统 ——支持云计算服务
  • IBMDB2——|BM公司推出的企业级数据库管理系统 Sybase
  • ASE——Sybase公 司推出的企业级数据库管理系统
  • MySql——应用广 泛的开源关系数据库管理系统
  • PostgreSQL——技术领先的开源对象-关系数据库管理系统 ——支持面向对象(重要,熟练使用!!)
  • Sybase SQL Anywhere——Sybase推出的移动计算数据库管理系统
  • SQLite——开源的轻量级嵌入式数据库管理系统

  1. 元数据是描述数据库内数据的结构和建立方法的数据。创建对象时就产生并存储到数据库里 ↩︎

你可能感兴趣的:(数据库,数据库)