带你认识存储 & 数据库|青训营笔记

138 阅读2分钟

这是我参与「第三届青训营 -后端场」笔记创作活动的的第5篇笔记。

主要内容

  1. 模拟案例
  1. 存储 & 数据库简介
  1. 主流产品剖析
  1. 新技术演进

背景

  • 存储系统和数据库系统往往是后端服务的最后一环,提供数据存储、查询能力。

经典案例

通过一个模拟案例,描述了数据是怎么产生,在后端系统里怎么流通,最后怎么写入到存储/数据库系统。

数据的产生:某天,小明同学下载了一个新的APP。因为第一次登陆,所以进入APP后需要注册一个新的账号

数据的流动: image.png

数据的持久化: image.png

存储 & 数据库简介

数据怎么从应用到存储介质 image.png

需要注意两点:

缓存:贯穿整个存储体系 拷贝:很昂贵,应该尽量减少

数据库简介

关系型数据库是存储系统,但是再存储之外,又发展出其他能力

  • 比如:结构化数据友好,支持事务,支持复杂查询语言

非关系型数据库也是存储系统,但是一般不要求严格的结构化

  • 比如:半结构化数据友好,支持事务,支持复杂查询语言

主流存储产品剖析

单机存储:单个计算机节点上的存储软件系统,一般不涉及网络交互

  • 本地文件系统
    • 管理单元:文件,接口很多
  • key-value存储
    • 常见使用方式: put(k, v) & get(k)
    • 常见数据结构:LSM-Tree,某种程度上牺牲读性能,追求写入性能
    • 拳头产品: RocksDB 分布式存储:HDFS、Ceph
  • HDFS核心特点:
    • 支持海量数据存储
    • 高容错性
    • 弱POSIX语义
    • 使用普通x86服务器,性价比高