让快更快,火山引擎ByteHouse为ClickHouse提速

news2024/11/25 0:40:17

更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群

近日,火山引擎数智平台VeDI与DataFun联合举办以“OLAP计算引擎”为主题的直播活动,来自火山引擎数智平台VeDI的产品专家从技术选型、能力分析、性能优化以及应用场景落地多个角度,介绍火山引擎ByteHouse如何基于ClickHouse实现实时计算能力升级。

据介绍,火山引擎ByteHouse来源于字节跳动多年内部沉淀。由于场景越来越丰富以及数据分析需求增长,业务对于实时数仓的要求也越来越高。首先是数据体量大以及不断增长的问题。早在2019 年,字节内部每天新增的数据量就达到了100TB。其次,在海量数据基础上,由于数据类型多样(包括批式数据和流式数据)、查询需求多样、交互式分析复杂,数据引擎需要具备灵活性。目前,行业Redis、 SparkSQL 等开源方案可以从不同角度满足上述两个需求,但是维护多个开源数据库将导致成本高,选择一款可以避免成本无限扩展的计算引擎成为字节数据研发首要考虑的问题。

ClickHouse性能高、灵活性强,且主要依赖磁盘、成本相对可控,成为字节跳动内部计算引擎的首选。但原生 ClickHouse 能力难以支持 upset 、实时数据更新等一些场景,在很多层面有局限性,例如:

  • 单表性能强劲,但多表能力局限,且对标准 SQL 兼容性低。

  • 缺乏成熟运维管理工具,运维复杂程度高。

  • ClickHouse 为 MPP 架构(存算一体架构),性能强,但横向扩容成本非常高、数据隔离性差。

ByteHouse产品专家在直播中介绍到,“为了解决以上问题,我们主要从4个方向进行优化,让OLAP引擎能力、性能、运维、架构进一步升级。”

第一,丰富的自研表引擎,实现OLAP引擎能力进化。 ByteHouse 弥补了ClickHouse表引擎的不足,并衍生出全新的表引擎,包括使高可用表引擎、实时数据引擎、Unique 引擎、Bitmap 引擎。以Unique 引擎为例,它解决了社区版 ReplacingMergeTree 实时更新延迟问题,真正做到实时 upset。

第二,新增优化器、字典、索引支持能力,实现OLAP引擎性能进化。ClickHouse在多表场景中性能存在缺陷,而ByteHouse 通过自研CBO 和 RBO(基于代价和基于规则的优化器),支持了多层嵌套的下推、Join 子查询的下推、Join-Reorder、Bucket Join、Runtime Filter 等优化器特性,做到 TPC-DS 的性能可以达到 99 条sql100%覆盖,极大提升多表场景下的性能。另外,ByteHouse还支持了全局字典以及更多索引,如 Bitmap index,让查询效率更快。

第三, 自动化、可视化,实现OLAP引擎运维进化。ByteHouse 提供标准化运维、集群健康度检测、问题发生时的诊断工具,帮助运维人员提高效率。例如,集群健康度的检测工具,类似于集群的实时巡检,能够报告当前集群状态、出现了什么问题、问题如何解决,最大程度把问题前置化,降低运维风险。从效果上看, 18000 个节点只需要不到 10 个运维人员来支持。

第四, 存算分离,实现OLAP引擎架构进化。ByteHouse推出了 MPP 2. 0 即存算分离架构。一方面, 存算分离可以更好实现资源隔离,每一个计算任务都会提交到不同的计算资源中,做到用户之间互不影响,还能灵活扩容、缩容存储计算资源;另一方面,存算分离能做到真正云原生(Cloud native),ByteHouse 存储层既支持 HDFS,也支持 S3 对象或者其他的对象存储,实现云原生部署。


目前,ByteHouse已经在行为分析、精准营销、实时监控等业务场景中落地。以实时监控为例,很多互联网APP有线上运营活动、直播电商等业务,数据实时性格外重要。数据从生产到展现在大屏上,延迟往往要控制在分钟级甚至秒级以内。而ByteHouse高吞吐性能、查询性能,使数据从输入端到输出端的流程达到秒级。在数据保障层面,ByteHouse 也能精细到Exactly Once 的语义,保证数据不丢失、不重复,最终达到数据是高效存储、准确查询。

点击跳转火山引擎ByteHouse了解更多

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/949742.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

WhatsApp 新功能|拆解WhatsApp隐藏功能

图片来源:SaleSmartly官网 随着 WhatsApp Business 出现,不少企业更透过群发讯息(Broadcast List)主动联络顾客,可见无论是私人事务,还是生意来往,日常生活都离不开 WhatsApp。 WhatsApp 社群功…

电子书分享教程分享

之前一篇文章中有教程分享,但是百度网盘普遍不太好使,所以新开一篇,分享使用阿里网盘。 阿里云盘分享https://www.aliyundrive.com/s/vd4Lh1rZ6rt 阿里云盘分享https://www.aliyundrive.com/s/vMkcpJDVxCV 阿里云盘分享https://www.aliyundri…

从零构建深度学习推理框架-11 Resnet

op和layer结构 在runtime_ir.cpp中,我们上一节只构建了input和output,对于中间layer的具体实现一直没有完成: for (const auto& kOperator : this->operators_) {if (kOperator->type "pnnx.Input") {this->input_o…

Django-跨域

一、基础概念 cors 跨域资源共享 二、跨域请求-简单请求 满足以下全部条件的请求为 简单请求 1.请求方法如下: GET or HEAR or POS 2.请求头仅包含如下: Accept、Accept-Language、Content-Language、Content-Type 3.ConTent-Type 仅支持如下三种&…

数据结构1 -- leetcode练习

三. 练习 3.1 时间复杂度 用函数 f ( n ) f(n) f(n) 表示算法效率与数据规模的关系,假设每次解决问题需要 1 微秒( 1 0 − 6 10^{-6} 10−6 秒),进行估算: 如果 f ( n ) n 2 f(n) n^2 f(n)n2 那么 1 秒能解决多…

基于Echarts的大数据可视化模板:大数据医疗服务平台

目录 引言大数据在医疗领域的应用ECharts在医疗服务中的作用医疗大数据的应用方向临床决策支持药物研发与安全性监测健康管理与预防流行病监测与公共卫生基因组学与个性化医疗医疗保险与费用管理Echarts与大数据可视化Echarts库以及其在大数据可视化领域的应用优势开发过程和所…

jwt安全问题

文章目录 jwt安全问题jwt简介jwt组成headerpayloadsignature 潜在漏洞空加密算法web346 密钥爆破web348 敏感信息泄露web349 **修改算法RS256为HS256**web350 jwt安全问题 jwt简介 JWT的全称是Json Web Token,遵循JSON格式,跨域认证解决方案&#xff0…

C语言练习题解析:挑战与突破,开启编程新篇章!(2)

💓博客主页:江池俊的博客⏩收录专栏:C语言刷题专栏👉专栏推荐:✅C语言初阶之路 ✅C语言进阶之路💻代码仓库:江池俊的代码仓库🎉欢迎大家点赞👍评论📝收藏⭐ 文…

42、springboot 的 路径匹配 和 内容协商

springboot 的 路径匹配 和 内容协商 对于路径匹配,自己的总结就是: 以前路径匹配时默认不检查后缀,http://localhost:8080/aaa.json 可以直接访问到 RequstMapping(“/aaa”) 的方法。现在不行了。现在会检查后缀了。 内容协商的理解总结&…

antd DatePicker月份不显示中文

import dayjs/locale/zh-cn; import locale from antd/es/date-picker/locale/zh_CN;<DatePickeronChange{changeMonth}picker"month"disabledDate{disabledDate}locale{locale} /> 看着代码没问题执行如下图 查了下原因默认的中文local文件并没有月份的forma…

无涯教程-Android - ImageButton函数

ImageButton是一个AbsoluteLayout,可让您指定其子级的确切位置。这显示了带有图像(而不是文本)的按钮,用户可以按下或单击该按钮。 Android button style set ImageButton属性 以下是与ImageButton控件相关的重要属性。您可以查看Android官方文档以获取属性的完整列表以及可以…

ONLYOFFICE HackerOne 错误赏金计划:2023 年夏季快报

我们的 HackerOne 计划自 2022 年启动&#xff0c;范围持续扩大&#xff0c;节奏不断加快。欢迎您查看今年的数据&#xff0c;了解范围内的新项目——ONLYOFFICE 协作空间&#xff0c;了解如何通过 HackerOne&#xff0c;开启 ONLYOFFICE 解决方案测试之旅。 关于 ONLYOFFICE 赏…

华为OD机试 - 数字序列比大小 - 贪心算法(Java 2023 B卷 100分)

目录 一、题目描述二、输入描述三、输出描述四、解题思路五、Java算法源码六、效果展示1、输入2、输出3、说明 华为OD机试 2023B卷题库疯狂收录中&#xff0c;刷题点这里 一、题目描述 A&#xff0c;B两个人万一个数字比大小的游戏&#xff0c;在游戏前&#xff0c;两个人会拿…

【c语言】输出n行按如下规律排列的数

题述&#xff1a;输出n行按如下规律排列的数 输入&#xff1a; 4(应该指的是n) 输出: 思路&#xff1a; 利用下标的规律求解&#xff0c;考察数组下标的灵活应用&#xff0c;我们可以看出数从1开始是斜着往下放的&#xff0c;那么我们如何利用两层for循环求解这道题&#xff…

Oracle基础用法

操作环境&#xff1a;操作系统为Windows10-64位 操作版本&#xff1a; Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production PL/SQL Developer Version 12.0.7.1837 (64bit) 01.226959 目录 $函数一、nvl与coalesce1、nvl(eExpression1, eExpressio…

Android AGP版本

做个记录&#xff1a; Android AGP版本 https://developer.android.com/studio/releases/gradle-plugin?hlzh-cn

【前端】CSS3新特性

目录 一、前言二、伪元素选择器1、选择器2、注意事项3、代码示例 三、伪元素清除浮动1、第一种伪元素清除浮动2、第二种伪元素清除浮动 四、CSS3盒子模型1、box-sizing&#xff1a;content-box2、box-sizing&#xff1a;border-box 五、CSS3图片模糊处理1、图片变模糊①、CSS3滤…

Hive-安装与配置(1)

&#x1f947;&#x1f947;【大数据学习记录篇】-持续更新中~&#x1f947;&#x1f947; 个人主页&#xff1a;beixi 本文章收录于专栏&#xff08;点击传送&#xff09;&#xff1a;【大数据学习】 &#x1f493;&#x1f493;持续更新中&#xff0c;感谢各位前辈朋友们支持…

小白到运维工程师自学之路 第八十集 (Jumpserver堡垒机管理)2

5、登录普通用户进行测试 这里的操作和在linux系统中的终端操作一样 在Xshell中登录 创建一个普通文件 在web终端中查看 五、审计台 在审计台中可以看到服务器的各种详细操作 在这里可以看到哪个用户在哪个时间对服务器具体使用了什么命令&#xff0c;还可以看到录频回放。 …

提升开发能力的低代码思路

一、低代码理念 在现代软件开发中&#xff0c;低代码开发平台备受关注。那么&#xff0c;什么是低代码开发平台呢&#xff1f;简单来说&#xff0c;它是一种能够提供丰富的图形化用户界面&#xff0c;让开发者通过拖拽组件和模型就能构建应用的开发环境。与传统开发方式相比&am…