2022-02-14 influxdb调研-思维导图

本文深入探讨了InfluxDB的存储技术路径,包括LSM、B+树和TSM,以及其在分布式场景中的集群和高可用解决方案。重点讲解了性能需求,如写入QPS和数据持久性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

摘要:

用脑图形式展现对influxdb的调研, 用树结构将相关模块予以关联, 

目的在于便于大脑理解和存储

脑图:

Influxdb调研
  存储
    1. 存储引擎技术路线
      1. LSM
        1. levelDB
          1. 无法热备份
          2. 打开文件句柄超过上限
        2. rocksDB
          1. 修复热备份
          2. 打开文件句柄超过上限
      2. B+树
        1. Bolt
          1. B+
            1. 仅一个文件句柄
            2. 利于连续写
            3. 时序数据库大量非连续写
              1. 造成磁盘随机写
              2. 影响写性能
          2. mmap
            1. 减少了内核缓冲层
            2. 磁盘IO
        2. 优化
          1. 增加WAL层
            1. 预处理key合并写
              1. 减少写次数
              2. 随机写问题依然存在
      3. TSM
        1. 自研LSM变种
          1. 解决B+树随机写性能问题
          2. 从此前写WAL层增加了开发能力信心
        2. 增加WAL层
        3. 打开文件句柄数改进
    2. TSM
  分布式
    1. 集群
      1. influxdb官方
        1. cluster闭源
        2. 提供relay
          1. 轻量级代理
            1. 服务节点依然是单节点
            2. 用前端代理实现多节点写
          2. 没有分散key的策略
            1. 无法横向扩展
      2. 开源社区替代品
        1. freetsdb
          1. 从influxdb1.8.6版本改造
          2. 自带集群特性
          3. 生态兼容性
            1. 接口层
            2. 功能函数层
            3. 内部实现层
    2. 高可用
      1. freetsdb
        1. hinted-handoff
          1. 通过本节点写其他节点
          2. 其他节点宕机
          3. 将数据写入本节点
          4. 其他节点恢复后写入其他节点
  需求
    1. 功能需求
      1. 依据时间点写入
      2. 只写入不更新
      3. 数据带时间可自动删除
      4. 不处理频繁的删除
    2. 性能需求
      1. 硬件标准
        1. 磁盘IO
        2. CPU主频
      2. 性能要求指标
        1. 写QPS
        2. 读QPS
        3. 内存占用
        4. 磁盘占用
        5. CPU占用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

悟世者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值