当前位置:首页 > 报告详情

字节跳动海量时序数据库的内核探究.pdf

上传人: 2*** 编号:136458 2023-08-02 35页 6.10MB

1、分享主题:字节跳动海量时序数据库内核探究分享嘉宾:字节跳动基础架构 研发工程师 王栋 总结和展望大纲 字节 TSDB 内核探究 字节 TSDB 业务支撑案例 字节字节 TSDB TSDB 概述概述字节可观测性平台 业务挑战服务数国内装机量日均服务发布日均配置变更字节可观测性平台 构建思路构建思路:三位一体三位一体“三位”:“一体”:一个平台,观测上述 3 类数据一套存储,链接上述 3 类数据Metrics 监控数据Tracing 调用链路数据Logging 日志数据字节 TSDB 使用方式重要概念 序列(Series):一组 时间戳 和 值 序列的唯一主键:Tag组合写入:写入:SDK(Gol

2、ang/Java/C+/Python);数据类型(Timer/Counter/Gauge/Histogram)查询:查询:实现了绝大部分 OpenTSDB 查询语法,可通过 Grafana、Bosun 等接入,亦可用 OpenAPI 查询数据字节 TSDB 使用方式Series Key10:00:0010:00:1010:00:20idc=1,host=1.1.1.110.07.010.0idc=1,host=1.1.1.29.05.0-idc=1,host=1.1.1.38.09.0-idc=2,host=2.1.1.13.01.04.0查询举例:q(avg:cpu.loadidc=1,1h

3、-ago,)Series Key10:00:0010:00:1010:00:20idc=19.07.010.0字节 TSDB 整体架构字节 TSDB 内部落地情况吞吐量国内 2 Billion 打点/秒 30 秒本地聚合后查询性能国内 40K QPS,Latency avg 0.3s,pct99 2.1s资源配比每 5 台机器,支撑 1000 台机器监控Metric 数量国内集群 Metric 数量超过 20MOpenAPI 账号1000+OpenAPI APP 账号用户规则2000+预聚合规则最大支持维度单指标最大支持 30M Dimension 总结和展望大纲 字节字节 TSDB TSDB

4、 内核探究内核探究 字节 TSDB 业务支撑案例 字节 TSDB 概述高性能存储:结合 Cache 和 HDFS 构建冷热存储热存 tsdc:引擎内核(1/3)引擎细节:TagK 和 TagV 会字典化,TagSet 使用 varint 编码SeriesId 是自增 ID查询过的 Tag 会创建索引,Tag Cardinality 决定索引类型Inverted Index 的 postings 使用 RoaringBitMap热存 tsdc:引擎内核(2/3)两类 TimeSlot:Mutable,ImmutableImmutable Slot 会序列化到磁盘,同时 LruCache 加速其查

5、询速度DataPointSet 为核心数据结构,包括:1.优化版 Gorilla 压缩算法2.动态长度 RingBuffer3.多值列式存储热存 tsdc:引擎内核(3/3)Scan:Async RPC,并根据load数据大小区分轻重查询,轻重查询线程隔离使用 Distributed Weighted Round-Robin(DWRR)调度算法,保证租户cpu粒度的公平调度支持用户自定义、实时预聚合 TSDB物化视图冷存 arestor:PreShuffle,Streaming and Compaction PreShufflePreShuffleShuffle数据生成WatermarkStr

6、eamingStreaming窗口化聚合计算Auto-RollupCompactionCompaction小文件Merge清理历史高精度数据冷存 arestor:File Format高性能查询:执行引擎(1/2)框架一:定义 Dag,生成异步Workflow(Dag包括:Action、Plan、Graph)字节 TSDB 查询服务使用自研轻量级执行引擎。包含2个框架:高性能查询:执行引擎(2/2)支持 Fast Fail On Exception,基于 Cost 预测的 Fast Fail 也正在开发中。框架二:远程执行器,“真”异步rpc高性能查询:分布式查询 DQuery(1/4)=Sc

word格式文档无特别注明外均可编辑修改,预览文件经过压缩,下载原文更清晰!
三个皮匠报告文库所有资源均是客户上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作商用。
本文主要介绍了字节跳动的海量时序数据库(TSDB)内核及其在业务中的应用。字节跳动 TSDB 具备高性能存储、分布式查询、多租户支持等特性,支持 Metrics、Tracing 和 Logging 三类数据的观测。其内核采用了自研轻量级执行引擎,实现了异步 Workflow 和远程执行。TSDB 支持多机房容灾,采用 Raft 协议保证一致性。此外,TSDB 还定义了一套高性能的私有写入 Codec,以优化写入链路。在业务支撑方面,字节跳动通过链路追踪、观测诊断平台和微服务数仓等项目,深度集成了 TSDB,提升了服务的可观测性。未来,字节跳动 TSDB 将持续优化内核,支持云原生、多租户持续演进等方面的发展。
"字节跳动TSDB性能优化策略是什么?" "如何实现字节跳动TSDB的多租户支持?" "字节跳动TSDB在云原生环境下的应用挑战有哪些?"
客服
商务合作
小程序
服务号
折叠