跳到主要内容

第1章 数据库概述

1.1 数据库的定义

**数据库(Database)**是指按照一定的数据结构和规则组织、存储、管理和使用的数据集合。它是计算机系统中用于管理数据的核心技术之一,广泛应用于企业、政府、科研、教育等各个领域。

数据库的主要特点包括:

  • 数据共享:多个用户或应用程序可以同时访问和使用数据库中的数据。
  • 数据独立性:数据的物理存储与逻辑表示相互独立,用户无需关心数据的物理存储方式。
  • 数据完整性:数据库确保存储的数据是完整、一致且可靠的。
  • 数据安全性:通过访问控制和权限管理,保护数据不被未经授权的访问或篡改。

示例

  • 学校的学生信息管理系统的数据库。
  • 医院的患者信息管理系统。
  • 电商网站的订单管理系统。

1.2 数据库管理系统(DBMS)

数据库管理系统(Database Management System,简称 DBMS)是用于管理数据库的软件系统。它负责数据的存储、检索、更新和维护,同时提供多种功能来确保数据的完整性和安全性。

DBMS 的主要功能

  1. 数据存储:负责将数据存储在物理存储设备(如硬盘、SSD等)上。
  2. 数据检索:通过查询语言(如 SQL)快速检索和返回用户所需的数据。
  3. 数据更新:支持数据的插入、修改和删除操作。
  4. 数据安全性:通过权限管理和访问控制,保护数据不被未授权访问。
  5. 数据完整性:确保数据的一致性和准确性,例如通过约束(如主键、外键)保证数据关系的正确性。
  6. 并发控制:允许多个用户同时访问和修改数据库,同时保证数据的一致性。
  7. 数据备份与恢复:提供数据备份和恢复功能,防止数据丢失。

常见的 DBMS

  • 关系型 DBMS:如 Oracle、MySQL、SQL Server、PostgreSQL。
  • 非关系型 DBMS:如 MongoDB、Redis、Cassandra。

1.3 数据库的类型

数据库可以根据数据模型的不同分为两类:关系型数据库非关系型数据库

1.3.1 关系型数据库

关系型数据库是基于关系模型的数据库,数据以二维表的形式存储,每个表由行和列组成。关系型数据库具有以下特点:

  • 结构化数据:数据按照预定义的模式(Schema)存储,适合管理结构化的数据。
  • 强大的查询能力:支持复杂的 SQL 查询,可以实现多表关联、统计、排序等操作。
  • ACID 特性:支持原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)的事务特性,确保数据的可靠性和一致性。

常见应用场景

  • 企业资源计划(ERP)系统。
  • 金融交易系统。
  • 电子商务平台。

1.3.2 非关系型数据库

非关系型数据库不依赖于固定的表结构,而是采用灵活的数据模型,如键值存储、文档存储、图形数据库等。非关系型数据库具有以下特点:

  • 灵活的数据模型:适合处理非结构化或半结构化数据。
  • 高扩展性:支持大数据量和高并发场景。
  • 支持分布式存储:适合云计算和大数据应用。

常见类型

  • 键值数据库:如 Redis,适合简单的键值存储。
  • 文档数据库:如 MongoDB,适合存储 JSON 格式的文档。
  • 图形数据库:如 Neo4j,适合处理复杂的关联数据。
  • 列族数据库:如 Cassandra,适合需要高扩展性和高性能的应用。

常见应用场景

  • 社交媒体平台(如微博、微信)。
  • 物联网(IoT)数据存储。
  • 实时日志分析。

1.4 本章小结

本章介绍了数据库的定义、数据库管理系统(DBMS)的功能以及数据库的类型(关系型和非关系型)。通过本章的学习,你将对数据库有一个全面的了解,为后续章节的学习打下基础。

在下一章中,我们将深入探讨关系型数据库的核心技术,包括数据模型、表结构设计以及 SQL 语言的基本语法。