带你认识存储的本质 | 青训营笔记

71 阅读2分钟

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

本节课重点内容

  • 存储 & 数据库简介
  • 主流产品剖析
  • 新技术演进

本节课详细内容

什么是存储系统?

  • 存储系统是一个提供了读写、控制类接口,能够安全有效地把数据持久化的软件。
  • 它的特点有
    • 性能敏感
    • 容易受到硬件影响
    • 代码编写简单又复杂

存储系统/数据库有哪些种类?

单机数据库

关系型数据库

  • Oracle
  • MySQL
  • PostgreSQL

关系型数据库一般有数据集中控制、数据独立性高、数据共享性好、数据冗余度小、数据结构化,有统一的数据保护功能等等特点,

非关系型数据库

  • Redis
  • MangoDB

非关系型数据库严格上不是一种数据库,应该是一种数据结构化存储方法的集合,可以是文档或者键值对等。例如Redis,用缓存的方式在内存读写数据,极大的降低了sql的压力。

关系型数据库和非关系型数据库的区别

  • 关系型数据库一般直接使用SQL交互,而非关系型数据库交互方式各不相同
  • 非关系型数据库的数据结构千奇百怪,没有关系约束后,schema相对灵活
  • 不管是否关系型数据库,大家都在尝试支持SQL(子集)和“事务”

分布式数据库

  • HDFS
  • Ceph

传统的分区分表或分库方案限制太多 采用分区表方案,数据不能跨实例存储,扩展性和维护性较差。 采用分库方案,客户端需要自行管理各库连接,数据库连接管理和升级复杂,扩容迁移困难。分布式数据库可以方便的实现分布式存储、读写分离、在线平滑扩容等等功能,

新技术的引进

软件架构的变更:Kernel Space -> User Space中断更改为轮询

  • 磁盘性能提高后,中断次数随之上升,不利于IO性能
  • SPDK poller可以绑定特定的CPU核不断轮询,减少cs,提高性能
  • 无锁数据结构 使用Lock-free queue,降低并发时的同步开销

ai存储增强

硬件革命等等