存储与数据库的新技术演进 | 青训营

85 阅读2分钟

新架构?新硬件?新理论?人工智能?

概览

  • 软件架构变更

    • Bypass OS kernel
  • AI增强

    • 智能存储格式转换
  • 新硬件革命

    • 存储介质变更
    • 计算单元变更
    • 网络硬件变更

SPDK

AI & Storage

AI领域相关技术,如Machine Learning在很多领域,如推荐、风控、视觉领域证明了有效性

高性能硬件

  1. RDMA网络

    • 传统的网络协议栈,需要基于多层网络协议处理数据包,存在用户态 & 内核态的切换,足够通用但性能不是最佳
    • RDMA是kernel bypass的流派,不经过传统的网络协议栈,可以把用户态虚拟内存映射到网卡,减少拷贝开销,减少CPU开销
  2. Persistent Memory

    在NVMe SSD和Main Memory间有一种全新的存储产品:Persistent Memory

    • IO时延介于SSD和Memory之间,约百纳秒量级
    • 可以用作易失性内存(memory mode),也可以用作持久化介质(app-direct
  3. 可编程交换机

    P4 Switch,配有编译器、计算单元、DRAM,可以在交换机层对网络包做计算逻辑。在数据库场景下,可以实现缓存一致性协议等

  4. CPU/GPU/DPU

    • CPU:从multi-core走向many-core
    • GPU:强大的算力 & 越来越大的显存空间
    • DPU:异构计算,减少CPU的workload

小结

存储系统

  • 块存储:存储软件栈里的底层系统,接口过于朴素
  • 文件存储:日常使用最广泛的存储系统,接口十分友好,实现五花八门
  • 对象存储:公有云上的王牌专业,immutable语义加持
  • key-value存储:形式最灵活,存在大量的开源/黑盒产品

数据库系统

  • 关系型数据库:基于关系和关系代数构建的,一般支持事务和SQL访问,使用体验友好的存储产品
  • 非关系型数据库:结构灵活,访问方式灵活,针对不同场景有不同的针对性产品

分布式架构

  • 数据分布策略:决定了数据怎么分布到集群里的多个物理节点,是否均匀,是否做到高性能
  • 数据复制协议:影响IO路径的性能、机器故障场景的处理方式
  • 分布式事务算法:多个数据库节点协同保障一个事务的ACID特性的算法,通常基于2pc的思想设计

在存储 & 数据库领域,硬件反推软件变革十分常见