登录
注册
个人信息
我的订单
我的报告豆
我的优惠券
我的笔记
我的阅读
我的收藏
我的下载
我的上传
我的订阅
在线客服
退出登录
回到首页
AI
搜索
发现报告
发现数据
发现专题
专题报告
专题百科
研选报告
定制报告
VIP
权益
发现大使
发现一下
行业研究
公司研究
宏观策略
财报
招股书
会议纪要
seedance2.0
低空经济
DeepSeek
AIGC
大模型
当前位置:首页
/
行业研究
/
报告详情
2-4 B站基于缓存优化 Presto 集群查询性能
信息技术
2022-07-18
DataFunSummit2022:多维分析架构峰会
善护念
B站基于缓存优化Presto集群查询性能
集群架构
Presto集群现状
:B站目前拥有四个Presto集群,分布在两个IDC机房内。
Presto集群架构
:采用计算存储分离架构,每个集群包含多个节点。
Presto简介
Presto历史
:由Facebook于2013年11月开源,主要用于OLAP数据查询,支持标准ANSI SQL和多数据源。
Presto基本原理
:分布式SQL查询引擎,通过计算节点与存储节点分离的设计提高查询效率。
Presto改造
Presto在B站的实践
:通过优化查询性能,降低网络开销,提升查询稳定性。
Presto on Alluxio
背景介绍
:引入Alluxio缓存机制,解决计算存储分离带来的网络开销问题,提高查询性能。
Alluxio引入
:通过Presto Worker节点从Alluxio读取数据,利用Presto血缘信息解析获取热数据。
整合Alluxio
:需要解决Alluxio与HDFS scheme的不同,缓存数据的确定,以及数据一致性的保证。
性能测试
:TPC-H基准测试显示平均查询时间节省约20%。
线上效果
:接入约30%的BI业务,缓存约20万分区(约45TB),读HDFS稳定性提升至2.5ms以内。
Presto Local Cache
背景
:针对Presto在执行计划阶段和读数据时遇到的慢查询问题,提出了RaptorX解决方案。
RaptorX
:包括Hive meta cache、File List Cache、Fragment Result Cache、Orc/Parquet Footer Cache、Alluxio Data Cache和Soft Affinity Scheduling。
Alluxio Local模式
:以jar包形式嵌入Presto进程中。
软亲和性调度
:同一个Split尽可能分配到同一台worker上。
改造点
:包括Local Cache与底层数据的一致性、启动问题、支持HDFS文件系统和多磁盘。
测试效果
:单并发场景下减少20%左右的查询时间,4并发场景下整体提升有一定性能损失,总体性能提升显著。
线上效果
:三个Presto集群上线Local Cache,整体缓存命中率约40%,Coordinator端命中率略高于Worker端。
后续工作
推广Local模式上线多个集群。
支持textFile格式的缓存。
开发磁盘检测功能。
改进soft-affinity算法。
改进soft-affinity排除不开启cache的节点。
你可能感兴趣
1-2 基于历史查询的 Impala 集群性能优化实践
商贸零售
DataFunSummit2022:多维分析架构峰会
2022-07-18
7-4 EasyGraph 图数据库查询性能优化以及在腾讯内部业务中的应用
商贸零售
DataFunSummit2022:大数据存储架构峰会
2022-07-19
苗永昌-字节跳动 Kubernetes 集群2w+节点性能优化实战
商贸零售
2024 第23届 GOPS 全球运维大会暨 XOps 技术创新峰会 · 北京站
2024-07-17
2-4 使用Alluxio帮助B站搭建高效AI训练平台
商贸零售
DataFunSummit2022:大数据存储架构峰会
2022-07-19
打造极致性能和可用性的缓存服务
商贸零售
腾讯
2024-09-12