数据库_基本概念

一、数据库基本概念

1.1 数据库与数据库管理系统

1.什么是数据(data)
    我们可以这样来定义数据:描述客观事物的符号记录成为数据。数据是数据库中存储的基本对象,数据不仅仅是狭义上的数字表现形式,如整数、实数、浮点数等,它在广义上还包含了文本文字(text)、图形(graph)、图像(image)、音频(audio)、视频(video)等非数字的表现形式,因为他们通过数字化处理之后就可以存入计算机内。
    当然,这些数据无论是数字形式的还是非数字形式的,都没办法真正的表达出数据的真实含义,要想完整地表达出数据的含义,我们需要对数据进行解释才行。数据的解释实质就是指对数据含义的说明,即对数据的语义进行说明,数据和数据的语义是不可分的。
    例如,178既可以指一个人的身高是178cm,也可以指这个人的体重是178斤,甚至还可以认为是某个社团协会的总人数,我们如果不知道数据的语义,就没办法说明数据的含义。
    记录是计算机内表示和存储数据的一种格式或方法。例如,我们把某个学生的姓名、性别、出生日期,所在院系、入学时间等组织在一起,就构成了一个记录。


2. 数据库(DB:DataBase)
    数据库,指的是按一定格式将数据存储在计算机存储设备上的数据仓库。如果要严格地定义数据库,那么,数据库是长期存储在计算机内、有组织的、可共享的大量数据的集合。数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度(redundancy)、较高的数据独立性(data independency)和易扩展性(scalability),并可为各种用户共享。更概括地说,数据库具有永久存储、有组织和可共享三个基本特点。


3. 数据库管理系统(DBMS:DataBase Mangement System)
    数据库管理系统是用于管理数据库的系统软件,有数据库和用于访问管理数据库的程序组成,DBMS可以组织和存储数据,获取、检索、管理和维护数据库中的数据,是数据库系统的核心组成部分。
    数据库管理系统是位于用户和操作系统之间的数据管理软件,它和操作系统一样属于系统软件,主要包括以下功能:
    (1)数据定义功能
      数据库管理系统提供数据定义语言(DDL:Data Definition Language),用户可以通过它方便地对数据库中的数据对象的组成和结构进行定义。
    (2)数据组织、存储和管理功能
      数据库管理系统要分类组织、存储和管理各种数据,包括数据字典、用户数据、数据的存取路径等。要确定以何种文件结构和存取方式在存储级别上组织这些数据,如何实现数据之间的联系。数据组织和存储的基本目标是提高存储空间的利用率和方便存取,并提供多种存取方法(如索引查找、哈希查找、二分查找等)来提高存取效率。
    (3)数据操纵功能
      数据库管理系统还提供了数据操纵语言(DML:Data Manipulation Language),用户可以使用它操纵数据,实现对数据库的基本操作,如插入、删除、修改和查询等。
    (4)事务管理和运行管理功能
      数据库在建立、运行和维护时有数据库管理系统进行统一管理和控制,以保证事务的正确运行,保证数据的安全性、完整性、多用户对数据的并发使用以及故障发生后的系统恢复。
    (5)数据库建立和维护功能
      数据库的建立和维护功能包括数据库初始数据的输入、转换功能,数据库的转储、恢复功能,数据库的重组织功能和性能监视、分析功能等。这些功能通常由一些实用程序或者管理工具来完成。
    (6)其它功能
      其它功能包括数据库管理系统与网络中其他软件系统的通信功能,一个数据库管理系统与另一个数据库管理系统或文件系统的数据转换功能,异构数据库之间的互访和互操作功能等。


4. 数据库系统(DBS:DataBase System)
      数据库系统是由数据库、数据库管理系统(及其应用开发工具)、应用程序和数据库管理员(DBA:DataBase Administrator)组成的存储、管理、处理和维护数据的系统

数据库管理系统主要分为以下两类:

       4.1 关系数据库

       关系数据库是创建在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。现实世界中的各种实体以及实体之间的各种联系均用关系模型来表示。

       几乎所有的数据库管理系统都配备了一个开放式数据库连接(ODBC)驱动程序,令各个数据库之间得以互相集成。

       典型代表有:MySQL、Oracle、Microsoft SQL Server、Access及PostgreSQL等

       4.2 非关系型数据库 NoSQL

       非关系型数据库是对不同于传统的关系数据库的数据库管理系统的统称。与关系数据库最大的不同点是不使用SQL作为查询语言。

       典型代表有:BigTable(Google)、Cassandra、MongoDB、CouchDB;

       还包括键值数据库:Apache Cassandra(Facebook)、LevelDB(Google)

5.数据库架构

       数据库的架构可以大致区分为三个概括层次:内层、概念层和外层。

          内层:最接近实际存储体,亦即有关数据的实际存储方式。
          外层:最接近用户,即有关个别用户观看数据的方式。
       概念层:介于两者之间的间接层

原文地址:https://www.cnblogs.com/niunai/p/14524519.html