数据库 | 青训营笔记

75 阅读2分钟

这是我参与「第五届青训营 」笔记创作活动的第11天。

一、本堂课重点内容:

广义存储系统

  • 存储系统概览
    • 存储系统特点
    • 存储器层级结构
    • 单机存储栈
    • RAID技术
      • 冗余存储
        • RAID0
          • 条带化,提高存取效率
        • RAID1
          • 镜像,提高容错性,存储效利用率50%
        • RAID0&1混合
  • 数据库系统概览

    • 关系型数据库特点
    • 非关系型数据库特点
    • 数据库 vs 经典存储
    • 数据库使用方式
  • 主流产品剖析
    • 单机存储
      • 单机文件
        • Byte流,无规格,处理繁琐
      • 单机key-value
        • key:身份标识
        • Value:资源
    • 分布式存储
      • HDFS
        • Google
      • Ceph
    • 单机数据库产品
      • 关系型
        • PG、MySQL
      • NoSQL
        • ES
        • MongoDB
        • Redis
      • Elasticsearsh使用案例
        • 模糊搜索
  • 新技术 * SPDK * 不依赖操作系统 * User层面实现存储 * 人工智能 * 行列字段的选取(无法明确的定义的策略问题 * 新硬件加速 * 硬件驱动软件

深入理解RDBMS

  • 课程结构
    • 引入:经典案例抖音春节红包雨
    • 发展历史
    • 关键技术(横向、穿插回顾
    • 企业实践(落地、展望
    • 总结
  • ACID概念
    • 原子性(Atomicity):事务是一个不可分割的工作单元,事务中的操作要么都发生,要么都不发生
    • 一致性(Consistency):数据库事务不能破坏关系型数据库的完整性以及业务逻辑上的一致性。
      • 从一个合法状态到另一个合法状态
    • 隔离性(Isolation)多个事务并发访问时,事务之间·是隔离的,一个事务不应该影响其它事务运行效果。
      • 并发执行,结果串行
    • 持久性(Durability):在事务完成以后,该事务对数据库所作的更改便持久的保存在数据库中,不会被回滚。
  • 发展历史
    • 网状
    • 层次
    • 关系模型
  • 数据库组成
    • SQL引擎
      • Parser
      • Optimizer
      • Executor
    • 存储引擎
      • Data File
      • Log File
    • 事务引擎

二、课后搜索:

  • MVCC
    • Multi-Version Concurrency Control(多版本并发控制

三、课后个人总结:

杨杨老师讲的很好,使我算是入门了数据库存储系统,了解其包含了哪些功能模块及对应实现实例;另一方面,了解这些偏底层的实现方式使我作为开发者有了优化的意识、安全的意识,做到有章可循。另外我还需要补一下SQL的应用知识,包括如何设计一个mySQL表和索引优化之类的,以应用到大项目中。

五、引用参考:

青训营文档