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

82 阅读2分钟

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

这次的目录包括

  1. 经典案例
  2. 存储和数据库间接
  3. 主流产品剖析
  4. 新技术演进

我认为学习到的比较重要的内容为

  1. 什么是存储?什么是数据库?它们有什么区别?
  2. 主流的存储和主流的数据库架构

什么是存储?什么是数据库?它们有什么区别?

  • 存储是一个提供了读写、控制类接口,能够安全有效地把数据持久化的软件,就可以称之为存储系统

  • 数据库分为关系型数据库非关系型数据库

关系型数据库:结构化数据友好、支持事务、支持复杂查询语言

非关系型数据库:半结构化数据友好、可能支持事务、可能支持复杂查询语言

  • 他们之间的区别在于

数据库可以结构化数据管理,以表形式管理。经典存储写入文件,自行定义管理结构。

数据库可以支持事务,事务具有ACID。经典存储需要手动编码去支持ACID。

数据库可以使用简单的SQL支持复杂的查询。经典存储可能需要使用复杂的代码去支持复杂查询。

主流的存储和主流的数据库架构

分为

  1. 单机存储
  2. 分布式存储
  3. 单机关系型数据库
  4. 单机非关系型数据库
  5. 分布式数据库

单机存储:本地文件系统(比如linux的文件)、Key-Value存储

分布式存储:分布式文件系统(比如HDFS)、分布式对象存储(比如Ceph)

单机关系型数据库:MySQL、PostgreSQL

单机非关系型数据库:MongoDB、Redis、Elasticsearch

分布式数据库:主要用来解决容量、弹性和性价比的问题。同时也面临新的问题,即单写到多写,从磁盘弹性到内存弹性以及分布式事务的优化