当前位置: 首页 > news >正文

数据库系统总结

数据库系统概述

数据库系统(Database System, DBS)是用于高效管理、存储和检索数据的软件系统。

数据库系统的组成包括:数据库、硬件、软件、人员。

三级模式-两级映像

内模式:管理如何存储物理的数据,对数据的存储方式、优化、存放等。

模式:又称为概念模式,就是我们通常使用的表这个级别,根据应用、需求将物理数据划分为一张张表。

外模式:对应数据库中的视图这个级别,将表进行一定的处理后再提供给用户使用,例如,将用户表中的用户名和密码组成视图提供给登录模块使用,而用户表中的其他列则不对该模块开放,增加了安全性。

数据库设计

ER模型
实体-关系模型用于概念设计,包含实体、属性和关系。

规范化理论
减少冗余,避免异常。常用范式:

  • 第一范式(1NF):属性不可再分。
  • 第二范式(2NF):满足1NF且非主属性完全依赖主键。
  • 第三范式(3NF):满足2NF且消除传递依赖。

SQL语言

数据定义语言(DDL)
创建或修改数据库结构,如CREATE TABLEALTER TABLE

数据操作语言(DML)
增删改查数据,如INSERTUPDATEDELETESELECT

数据控制语言(DCL)
权限管理,如GRANTREVOKE

事务管理

ACID特性

  • 原子性(Atomicity):事务全部执行或全部回滚。
  • 一致性(Consistency):事务前后数据状态合法。
  • 隔离性(Isolation):并发事务互不干扰。
  • 持久性(Durability):事务提交后数据永久保存。

隔离级别

  • 读未提交(Read Uncommitted)
  • 读已提交(Read Committed)
  • 可重复读(Repeatable Read)
  • 序列化(Serializable)

索引与优化

索引类型

  • B树索引:平衡树结构,适合范围查询。
  • 哈希索引:精确匹配高效,不支持范围查询。
  • 全文索引:文本内容检索。

优化策略

  • 避免全表扫描,合理设计索引。
  • 使用EXPLAIN分析查询计划。
  • 规范化与反规范化权衡。

分布式数据库

CAP理论
在一致性(Consistency)、可用性(Availability)、分区容错性(Partition Tolerance)中最多满足两项。

常见技术

  • 分片(Sharding):水平拆分数据。
  • 复制(Replication):数据多副本存储。

数据库安全

措施

  • 权限控制:角色与用户分级授权。
  • 数据加密:传输加密(SSL)与存储加密。
  • 审计日志:记录关键操作。

新兴趋势

  • 云数据库:如AWS RDS、Azure SQL Database。
  • NewSQL:结合SQL与NoSQL优势,如Google Spanner。
  • 时序数据库:专用于时间序列数据,如InfluxDB。

相关文章:

  • 桂林网站定制seo优化需要多少钱
  • 电子表格做网站框架成人教育机构排行前十名
  • 佛山网站优化体验长沙网络营销外包哪家好
  • 万网主机 建网站百度手机助手免费下载
  • 做网站如何通过流量赚钱吗学软件开发学费多少钱
  • 免备案手机网站杭州seo中心
  • 鸿蒙工具类---设置全屏效果(上下安全区背景可设置)
  • 常用的串口通信工具MobaXterm、Bus Hound、SScom等
  • GNSS位移监测站的应用场景
  • 轻巧灵动,智启未来 ——Kinova Gen3 Lite 机器人轻松解锁各行业自动化新姿势
  • 云原生灰度方案对比:服务网格灰度(Istio ) 与 K8s Ingress 灰度(Nginx Ingress )
  • TCP/UDP协议深度解析(二):TCP连接管理全解,三次握手四次挥手的完整流程
  • SoC仿真环境中自定义printf函数的实现
  • 微算法科技融合Grover算法与统一哈希函数的混合经典-量子算法技术,可在多领域高效提升文本处理效率
  • nt!CcFlushCache函数分析之nt!CcFindBcb
  • 【自己动手写AI Agent】 对于企业构建AI应用的几点思考3
  • C++(智能指针)
  • Redis—持久化
  • 设计模式 | 抽象工厂模式
  • 鸿蒙分布式能力深度解析:构建跨设备无缝体验的技术基石
  • Fisco Bcos学习 - 控制台搭建和基本使用
  • NVads V710 v5 系列虚拟机已发布
  • 【iOS】iOS崩溃总结
  • 我手动从go官网下载了go1.16.15linux安装包,我该如何做,才能使得vscode仍能通过右下角来管理这个go版本
  • python学习笔记(深度学习)
  • 新能源汽车电池类型差异分析