数据库的介绍

一、数据库概述

1、定义

        数据库(Database)是按照数据结构组织、存储和管理数据的仓库。其核心目标是通过高效的方式实现数据的存储、检索、更新和管理。

2、发展历程
  • 早期阶段:文件系统(如Excel、CSV)直接存储数据,但缺乏共享性、冗余控制和并发处理能力。
  • 层次数据库与网状数据库:20世纪60年代出现,通过树形(层次)或网络结构管理数据,但复杂查询效率低。
  • 关系型数据库(RDBMS):1970年埃德加·科德提出关系模型,支持SQL语言,成为主流(如Oracle、MySQL)。
  • 非关系型数据库(NoSQL):2000年后为应对大数据和高并发场景兴起,强调灵活性和扩展性(如MongoDB、Redis)。

二、数据库主要类型

1、关系型数据库(RDBMS)
  • 特点:
    • 表结构:数据以行和列的形式存储,表间通过外键关联。
    • ACID特性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)。
    • SQL支持:使用标准SQL进行查询、插入、更新和删除操作。
  • 常见数据库:
    • MySQL(开源)、PostgreSQL(高性能)、Oracle(企业级)、SQL Server(Windows生态)。
  • 适用场景:
    • 需要强一致性、复杂查询(如银行交易、ERP系统)。

2、非关系型数据库(NoSQL)

分类及特点:

  • 优势:  灵活的数据模型、水平扩展、高可用性。
  • 劣势:  缺乏事务支持(部分NoSQL支持最终一致性)、复杂查询能力弱。
  • 适用场景:  大数据量、高并发(如电商、物联网)、半结构化数据(如JSON)。

三、关系型 vs. 非关系型数据库

四、数据库设计基础

1、范式理论
  • 第一范式(1NF):消除重复字段,确保每列原子性。
  • 第二范式(2NF):在1NF基础上,消除非主属性对候选键的部分依赖。
  • 第三范式(3NF):在2NF基础上,消除非主属性对候选键的传递依赖。
  • 反范式:为提高查询效率,允许适当冗余(如增加冗余字段)。
2、实体关系模型(ER模型)
  • 实体(Entity)、属性(Attribute)、关系(Relationship),用于设计数据库逻辑结构。
3、索引
  • 作用:加速数据检索,但会占用存储空间并影响写入性能。
  • 类型:B树索引、哈希索引、全文索引等。
4、事务与锁
  • 事务:通过BEGIN TRANSACTION、COMMIT、ROLLBACK保证操作的原子性和一致性。
  • 锁机制:行级锁、表级锁、间隙锁,解决并发冲突问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值