数据库复习-1. 概述(Ch1)

概述(Ch1)


这章目标是达到对数据库系统有一个基本的理解,能够识别和解释数据库的基本概念、模型、设计原则和技术发展:

  1. 数据库基础知识:理解数据库的定义和必要性。
  2. 数据模型:识别并理解关系模型、实体-关系模型等主要数据模型。
  3. 关系数据库:掌握表、行、列的基本概念。
  4. 数据库设计:了解逻辑设计和物理设计的区别。
  5. 存储管理:知道存储管理器的基本职责。
  6. 查询处理:理解查询处理的基本步骤。
  7. 事务管理:理解事务的概念和作用。
  8. 数据库架构:识别集中式、客户端-服务器等数据库架构。
  9. 数据库历史:了解数据库技术的发展里程碑。
  10. DBMS:理解DBMS的组成和功能。
  11. 数据库抽象层次:区分物理层、逻辑层和视图层。
  12. DDL和DML:了解DDL和DML的基本用途。
  13. 数据库设计方法:了解实体关系模型和规范化理论的基本概念。
  14. 数据库引擎组件:识别数据库引擎的主要组件。

原文链接,阅读更丝滑:《数据库复习-1. 概述(Ch1)》

数据和数据库的定义


  1. 数据:“data are raw facts that describe people, objects, and events.”
  2. 数据库:“An integrated collection of related data constitutes a Database (DB).”

数据库管理系统DBMS


  1. DBMS包含有关特定企业的信息
    1. Collection of interrelated data
    2. Set of programs to access the data
    3. An environment that is both convenient and efficient to use
  2. 数据库应用
    1. 银行,航空公司,大学,商场,线上商店等

使用文件系统存储数据的缺点


Database systems offer solutions to all the above problems

  1. 数据冗余与不一致性:多种文件格式在不同文件中的重复
  2. 数据访问困难:需要写一个新的程序来得出每个任务
  3. 数据隔离:多个文件和格式
  4. 完整性问题:完整性约束
  5. 数据更新的原子性问题
  6. 用户并发访问问题
  7. 安全问题:访问权限问题

抽象的层次


  1. 物理层
  2. 逻辑层:数据与数据关系
  3. 视图层:隐藏数据类型的细节

DBMS 架构


  1. Logical Schema逻辑模式
  2. External Schema子模式/用户模式
  3. Physical Schema存储模式

实例和模式


类似于类型和变量

  1. 逻辑模式——数据库总体逻辑机构
  2. 物理模式——数据库的整体物理结构
  3. 实例——数据库的具体内容
  4. 物理数据独立性——不改变逻辑模式的情况下修改物理模式

数据模型


描述数据、数据关系、数据语义、数据约束的一组工具

  1. 关系模型
  2. 实体-关系数据模型(主要用于数据库设计)
  3. 基于对象的数据模型(面向对象和对象关系型)
  4. 半结构化数据模型(XML)
  5. 网络模型
  6. 层次模型

关系模型Relational Model


所有的数据都存储在各种表格中

数据定义语言DDL


数据库模式定义的规范表示法

  • 示例
create table instructor (ID					char(5),
                         name				varchar(20),
                         dept_name  varchar(20),
                         salary     numeric(8,2))
  • DDL编译器生成一组存储在数据字典中的表模板
  • 数据字典包含元数据(即与关于数据的数据)
    • 数据库模式
    • 完整性约束
      • 主键
    • 权限

数据操作语言DML


用于访问和操作由适当数据模型组织的数据,DML也被称为查询语言

  • 两种类别
    • Pure纯语言——用于证明计算能力的属性和优化
      • 关系代数
      • 元组关系盐酸
      • 域关系演算
    • Commercial商业语言——在商业系统中使用
      • SQL

SQL


  • 商业语言
  • 与图灵机不等价
  • 嵌入某种高级语言中以计算复杂的函数
  • 应用程序访问数据库通过:
    • 语言扩展嵌入式SQL
    • 应用程序接口(ODBC/JDBC),它们运行SQL查询被发送到数据库

数据库设计


设计数据库总体结构的过程

  • 逻辑设计——决定数据库模式
  • 物理设计——决定数据库物理布局

设计方法


确保数据库中的每个关系都是良好的

  1. Entity Relationship Model实体-关系模型
    1. 将企业建模为实体和关系的集合
    2. 通过ER图来展现
  2. Normalization Theory规范化方法
    1. 定义什么是不良设计,并进行测试

数据库引擎


  • Storage manager存储管理
    • 一个程序模块——提供between低级数据and应用程序和提交给系统的查询之间的接口
    • 与OS文件管理器交互
    • 高效存储、检索和更新数据
    • 涉及的问题:存储访问、文件组织、索引和散列
  • Query processing查询处理
    1. parsing and translation 解析和翻译
    2. optimization 优化
    3. evaluation 评估
    • 评估给定查询的方法
      • 等价表达式
      • 每个操作不同的算法
    • 评估查询的好方法和坏方法之间的成本差异巨大
    • 需要估计操作的成本
      • 数据库必须维护的关于关系的统计信息量
      • 估计中间结果的统计数据以计算复杂表达式的成本
  • Transaction manager事务管理
    • 事务是一组操作,在数据库应用程序中执行单一逻辑功能
    • Transaction-management component事务管理组件确保数据库在系统失败(例如操作系统崩溃)和事务失败的情况下仍然保持一致状态
    • Concurrency-control manager并发控制管理器控制并发事务之间的交互以确保数据库的一致性

数据库用户和管理员


  • 普通用户——使用用户界面
  • 应用程序程序员——写应用程序
  • 老练用户分析师——查询工具
  • 数据库管理员——管理员工具

数据库系统内部结构


  • 用户使用query processor
  • query processor输出到storage managerdisk storage
  • storage manager管理disk storage

DB架构


数据库架构极大地收到底层计算机系统地影响

  • 集中式
  • 客户端-服务器模式
  • 并且(多处理器)模式
  • 分布式

Database Systems历史

  • 1950s-1960s——磁带
  • 1960s-1970s——硬盘,网络和层次数据模型,关系数据模型
  • 1960s——层级系统Hierarchical system
  • 1980s——关系原型,SQL,分布式,面向对象
  • 1990s——大型决策支持和数据挖掘应用,大型多太字节数据仓库,网络商务
  • 2000s——XML和XQuery标准,自动化数据库管理
  • 2000s+——大型数据库存储系统Google BigTable, Yahoo PNuts, Amazon, …
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值