Jimmy那些事儿

数据库_数据库概述

简单介绍了数据库的基本概念、结构等信息。

数据库

  • what:按照数据结构来组织、存储和管理数据的建立在计算机存储设备上的仓库。简单来说是本身可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据进行新增、截取、更新、删除等操作。
  • why :数据库的优点
    • 数据结构化且统一管理
    • 查询迅速、准确,且有多种表达与传输方式
    • 数据冗余度小;在文件系统中,为了满足一个应用程序对数据的需要,常常在不同地方重复存放同一个或同一组数据。
    • 具有较高的数据独立性;
      • 数据独立性是指用户应用程序与存储在数据库中数据的相互独立性。当人们利用应用程序调用数据库进行数据处理时,只涉及数据的逻辑结构,而不涉及其存储方式和物理结构。
      • 当数据的物理存储方式和结构改变时,数据库管理系统将自动处理这种改变,而应用程序不必改变。
    • 数据的共享性好


数据库管理系统

  • what:是一种针对对象数据库,为管理数据库而设计的大型电脑软件系统。(DBMS - Database Management System)
    • Oracle、Microsoft SQL Server、Access、MySQL及PostgreSQL


数据库类型

关系型数据库 - SQL

  • what:采用关系模型作为数据组织方式的数据库

  • why :特点在于它将每个具有相同属性的数据独立地存储在一个表中。对任一表而言,用户可以新增、删除和修改表中的数据,而不会影响表中的其他数据。

非关系型数据库 - NoSQL

  • what:泛指非关系型的数据库;(Not Only SQL)

数据库模型

  • what:描述了在数据库中结构化和操纵数据的方法,模型的结构部分规定了数据如何被描述(例如树、表等)
  • how :分类
    • 概念模型
    • 层次模型(轻量级数据访问协议)
      • 用一颗“有向树”的数据结构来表示表示各类实体以及实体间的联系,树中每一个节点代表一个记录类型,树状结构表示实体型之间的联系。
    • 网状模型(大型数据储存)
      • 用网络结构表示实体类型及其实体之间联系的模型。
    • 关系模型
    • 面向对象模型
    • 半结构化模型
    • 平面模型(表格模型,一般在形式上是一个二维数组。如表格模型数据Excel)

数据库架构

数据库的架构可以大致区分为三个概括层次:

  • 物理数据层(内层):物理存贮设备上实际存储的数据的集合。这些数据是原始数据,是用户加工的对象,由内部模式描述的指令操作处理的位串、字符和字组成。
  • 概念数据层(概念层):介于两者之间的间接层,是数据库的整体逻辑表示。
    • 指出了每个数据的逻辑定义及数据间的逻辑联系,是存贮记录的集合。
  • 用户数据层(外层):用户所看到和使用的数据库;表示了一个或一些特定用户使用的数据集合,即逻辑记录的集合

数据库不同层次之间的联系是通过映射进行转换的。

数据库索引

索引实际上是一种特殊类型的表,其中含有关键字段的值(由用户定义)和指向实际记录位置的指针,这些值和指针按照特定的顺序(也由用户定义)存储,从而可以以较快的速度查找到所需要的数据记录。

数据库操作 : 事务

  • what:用户定义的一个数据库操作序列
  • how :这些操作要么全做,要么全不做,是一个不可分区的工作单位
    • A(atomicity-原子性)
    • C(consistency-一致性)
    • I(isolation-隔离性)
    • D(durability-持久性)