《专场17.2-ApacheDoris在日志存储与分析场景的实践-肖康.pdf》由会员分享,可在线阅读,更多相关《专场17.2-ApacheDoris在日志存储与分析场景的实践-肖康.pdf(27页珍藏版)》请在三个皮匠报告上搜索。
1、Apache Doris在日志存储与分析场景的实践肖康 SelectDB 联合创始人Apache Doris 基本介绍01IntroductionApache Doris 是一个基于 MPP 架构的高性能、实时的分析型数据库,以极速易用的特点被人们所熟知,仅需亚秒级响应时间即可返回海量数据下的查询结果,不仅可以支持高并发的点查询场景,也能支持高吞吐的复杂分析场景。基于此,Apache Doris 在多维报表、即席查询、用户画像、实时大屏、日志分析、数据湖查询加速等诸多业务领域都能得到很好应用。Apache Doris 于 2022 年 6 月成功从 Apache 孵化器毕业,正式成为 Apac
2、he 顶级项目,截止目前 Apache Doris 社区已经聚集了来自不同行业百余家企业的超 400 位贡献者,每月活跃贡献者人数也接近 100 位。Apache Doris 如今在中国乃至全球范围内都拥有着广泛的用户群体,截止目前,Apache Doris 已经在全球范围内 1000 家企业的生产环境中得到应用,在中国市值或估值排行前 50 的互联网公司中,有超过 80%长期使用 Apache Doris,包括百度、美团、小米、京东、字节跳动、腾讯、快手、网易、微博、新浪、360 等,同时在一些传统行业如金融、能源、制造、电信等领域也有着丰富的应用。02Log Storage and Ana
3、lysis典型日志存储与分析场景日志对于保障系统、业务稳定性至关重要,常用于故障排查、监控告警等。特点:1.数据写入吞吐量大,还要实时可见2.数据存储量大,还要成本低3.交互式查询速度快,且支持文本检索、时间排序统一存储低成本存储实时分析文本检索按时间排序取最新N条实时写入写入吞吐大实时可见容器Docker、K8S操作系统Linux、MacOSWindows Events网络设施NAT网关、防火墙、交换机、路由器、CDNWeb服务Tomcat、Nginx消息队列Kafka、Pulsar数据库MySQL、PostgreSQL、MongoDB审计日志Logfiles、System Calls用户程
4、序Java、GO、Python结构化半结构化非结构化ES为代表的倒排索引 检索架构Loki为代表的元数据索引/无索引架构实时写入吞吐低(建倒排索引慢)高存储规模中(本地存储)大(存算分离)存储成本高(多份数据存储)低semi&free text交互式查询性能快慢(数据无索引,字符串匹配)总结优化查询性能牺牲写入性能和存储空间优化写入性能和存储空间牺牲查询性能优化这个牺牲那个,是不是头痛医头脚痛医脚了?倒排索引是0-1选择吗,它是问题的全部吗?向量化计算成熟前,是不是都认为OLAP加速要靠预计算?03Solution日志场景解决方案MPP架构向量化引擎列式存储时序compaction对象存储Do
5、ris核心能力日志场景增强dynamic table服务端攒批存算分离轻量倒排索引高吞吐实时写入低成本存储交互式查询Doris 高性能向量化引擎底座+SelectDB 存算分离架构 轻量级倒排索引 时序数据管理.下游查询可观测性:Grafana中使用内置MySQL数据源,导入已有模板配置可视化日志看板、检索界面商业智能:Superset等BI工具通过MySQL协议,即可开箱即用访问SelectDB进行可视化BI分析上游写入配置Logstash使用内置的http output plugin将数据写入SelectDBKafka00500600写入速度(MB/s)ESLokiS
6、electDB0510152025存储空间(GB)ESLokiSelectDB050002500查询时间(秒)ESLokiSelectDB测试说明:1.测试环境是3台16c 64g云主机组成的集群2.测试数据和测试case来源于ES官方性能benchmark中http_logs,数据总量32GB,2.47亿行3.查询时间是ES官方性能benchmark中的11个query,每个串行执行100次的总时间4.写入速度越高越好,磁盘空间越低越好,查询时间越低越好4.2倍5.4倍2.3倍04Technology关键技术解析向量化 列式内存布局,向量化计算框架大幅减少虚函数调用大幅
7、提升cache命中率高效利用SIMD指令 在宽表聚合场景下性能提升5-10倍MPP查询 分布式MPP的查询框架,节点间和节点内都并行执行,大幅提升效率 支持大表的shuffle 分布式join算子优化 自适应两阶段聚合算子优化 JOIN/TOPN runtime filter优化为连接列生成filter推到左表支持in/min/max/bf等filterfilter自动穿透到最底层 SSB部分查询依赖RF有2-10倍提升优化器 CBO和RBO结合的优化器 RBO常见规则常量折叠、子查询改写、谓词下推等 CBO支持Join Reorder 新一代智能优化器(Nereids)JOINSCANord
8、er_factSCANitems(items.price200)少量记录海量记录probebuildJOIN/TOPNSCANorder_fact(with RF)SCANitems(items.price200)少量记录少量记录probebuild(生成RF)itemId0runtime filter for itemidIN108,206,350,400BF001Min/Max108,400近半数 SQL 在所有产品中最佳We are here查询总耗时远低于行业竞品通用机型下 SelectDB 性能第一支持快速检索支持文本检索、普通数值/日期查
9、找支持多条件AND OR组合扩展数据库引擎,内置倒排索引避免了外挂式的跨系统通信、冗余存储为日志场景精简优化索引结构简化norm、score等bitmap等优化倒排表列式存储+ZSTD高效压缩算法列式存储压缩率高zstd比gzip快5倍,压缩率更高数据和索引都采用采用C+和向量化的高性能实现单核吞吐20MB/s vs ES 5MB/sclusterclusterclusterclustercache servicemeta servicestorage servicescheduler存储成本存储空间单位成本原始数据行存复杂倒排索引普通压缩算法=列式存储=专为日志简化索引=日志高压缩比冷热数据
10、全本地盘存储计算同步扩容=冷热分离=存储分离独立扩容降至降至降至ClientSelectDB服务端攒批向量化索引吞吐几十GB/s秒级flush可见客户端实时小批量写入123456T1-T3T4-T6写放大最优的时序compactionClient挑战:从海量日志中全文检索关键词挑战:从时间排序取满足条件的最新N条日志基于分区、主键的时间范围快速跳过基于倒排索引的全文检索精确定位按时间排序的时序存储模型动态剪枝的TopN查询算法百亿日志检索秒级响应05Contact US关于我们开源数据仓库技术创新云端数据仓库商业服务欢迎关注SelectDB微信公众号公司邮箱:SelectDB 官网:Apache Doris 官网:https:/doris.apache.org/Apache Doris GitHub:https:/