助力降本增效,ByteHouse打造新一代云原生数据仓库

news/2024/11/19 21:35:28/文章来源:https://www.cnblogs.com/bytedata/p/18433047

随着数据量的爆炸式增长、企业上云速度加快以及数据实时性需求加强,云原生数仓市场迎来了快速发展机遇。据 IDC、Gartner研究机构数据显示,到 2025 年,企业 50% 数据预计为云存储,75% 数据库都将运行在云上,全球数据处理预计有 30% 为实时数据处理,80% 数据预计为非结构化数据,这将驱使云原生数仓愈加受到企业青睐。

近期,火山引擎云原生数据仓库ByteHouse产品负责人李群受邀出席“CSDI summit中国软件研发创新科技峰会”,围绕“新一代云原生数仓ByteHouse关键技术与最佳实践”主题,从云数仓历史和前沿出发,介绍ByteHouse整体架构、关键亮点、性能突破、存算分离的关键设计,以及ByteHouse在抖音集团内外多样化场景中的业务实践。

基于ByteHouse在金融、游戏、泛互联网等多行业的经验总结,李群首先介绍了云原生数据仓库目前面临的难点和挑战。高性能、高并发、高吞吐写入,已经是当今企业对云数仓的基础需求。随着互联网不断发展,数据增长迅速,特别是埋点日志类数据,一些较为活跃的APP,每天数据达到百亿甚至千亿级别,大规模杀手级应用每天更是产生数千亿事件量。这要求数据平台不仅要支持高吞吐写入、实时去重,面对业务请求还要达到毫秒级响应。

除此之外,企业还面临数据架构复杂、灵活性欠缺、成本控制难的问题。例如,为了实现一个数据分析功能,企业可能需要引入三、四个甚至更多的组件来构建,导致扩容较难、运维压力大,人力维护成本高。

为了解决以上问题,ByteHouse首先在性能上实现突破。在复杂查询上,ByteHouse从RBO(基于规则的优化能力)、CBO(基于代价的优化能力)、分布式计划生成方面推出了自研优化器,能够准确的计算出效率最大化执行路径,大幅度降低用户查询时间。除此之外,ByteHouse还从Exchange、Runtime Filter以及并行化重构等方向进行了优化。针对实时吞吐慢、BI报表慢、离/在线复杂分析慢、湖+仓联邦分析慢、人群圈选慢、以图搜图慢六大场景,ByteHouse都推出了定制解决方案,并在客户实际场景中产生实效。

在提升效率同时,ByteHouse也专注于帮助用户节省成本。基于ByteHouse弹性伸缩能力,用户只需基于时间、资源负载等条件就能进行扩容、缩容配置,减轻手动管理的负担,提升资源利用率。在存储层面, ByteHouse采用 Serverless 架构,具有低成本、无限扩展的能力。在计算层面,ByteHouse则基于PaaS 模式,通过容器化实现无状态或弱状态,将整个计算组包装成租户和应用呈现给用户,保证租户之间不会发生资源征用冲突或性能劣化,让计算资源在秒级内实现弹性拉起和弹性扩缩容。

最后,为了给用户提供更便捷的使用体验,ByteHouse也在一体化、生态兼容性以及全场景引擎方面进一步提升易用性。以全场景引擎为例,ByteHouse通过构建统一的平台为用户提供更丰富的数据分析能力,实现数据效能最大化,已经推出了全文检索引擎、GIS引擎、Vector引擎,让用户在享受OLAP极致性能的同时,无需引入其他架构,就能使用文字检索、地理空间分析、向量检索能力。

在应用场景方面,李群则从实时数仓、企业级OLAP中台、广告精准营销三个场景,带来ByteHouse最佳实践分享。

以广告精准营销场景为例,随着移动互联网的流量红利消退,精细化营销模式随之跃迁为主流。从数以亿计的人群中,优选出最具潜力的目标受众,是精细营销的题中之义,也是作为基础引擎的数据仓库能力所面临的挑战。从ByteHouse曾服务的某个短剧广告营销公司来看,一方面,该公司投放在业务上需要实时调整策略,要求数据分析、更新时效性在3s内,并发QPS达到2000;另一方面,在营销场景中,海量数据实时更新会产生大量数据碎片,拉低查询性能、浪费存储空间。

通过引入ByteHouse、连山云、巨量引擎联合解决方案,该广告营销公司搭建了一套 ”一键实时同步、极简架构、低门槛技术” 的短剧行业通用解决方案,提升广告数据处理效率与投放ROI。

在效果上,通过多级索引,如排序键索引、分区键优化、跳跃索引等,ByteHouse有效减少了广告营销查询时扫描的数据量,在每天千万查询量的情况下,数据返回时效也能保障在秒级,较之前5倍提升。在计算组隔离策略中,ByteHouse为广告营销场景中的数据读、写分别构建独立的计算资源,再通过灵活的SQL分发机制,已可以支持超过2000 QPS的查询高并发。

据介绍,ByteHouse还与中国地震台网中心、莉莉丝游戏、极客邦科技等诸多行业企业达成了深度合作,凭借新一代的云原生架构,高效方便的运维模式,以及高性能更灵活的实时查询能力,为企业抓稳数字化机遇建立了夯实的地基,推动企业的数智化转型升级。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

.NET 工具库高效生成 PDF 文档

前言 QuestPDF 是一个开源 .NET 库,用于生成 PDF 文档。使用了C# Fluent API方式可简化开发、减少错误并提高工作效率。利用它可以轻松生成 PDF 报告、发票、导出文件等。 项目介绍 QuestPDF 是一个革命性的开源 .NET 库,它彻底改变了我们生成 PDF 文档的方式。 QuestPDF 的核…

【数据库】生产问题(数据迁移)

MySQL 亿级数据平滑迁移实战(来自vivo) https://www.cnblogs.com/vivotech/p/183736231、方案选型 常见的迁移方案大致可以分为以下几类:而预约业务有以下特点:读写场景多,频率高,在用户预约/取消预约/福利发放等场景均涉及到大量的读写。 不可接受停机,停机不可避免的会…

Git 分支管理全攻略:一篇博客带你玩转代码分支!

什么是分支?在 Git 里,分支其实就有点像一个树的枝杈,每个分支上可以有不同的文件的版本,并且不会互相干扰。什么是分支?在 Git 里,分支其实就有点像一个树的枝杈,每个分支上可以有不同的文件的版本,并且不会互相干扰。 ​ 分支功能有什么用?在工作中,我们经常是需要…

关于python自动化测试

最近在家搭建了一套可以复用的自动化测试框架,本项目实现接口自动化的技术选型:Python+Requests+Pytest+YAML+Allure 通过 Python+Requests 来发送和处理HTTP协议的请求接口,使用 Pytest 作为测试执行器,使用 YAML 来管理测试数据,使用 Allure 来生成测试报告

加油站智能视频分析盒

加油站智能视频分析盒通过深度学习视频分析技术,加油站智能视频分析盒代替人眼,7*24小时不间断实时对加油站现场人员行为及设备进行识别站。加油站智能视频分析盒不同于传统安防监管方式,加油站智能视频分析盒可以全年24小时不停歇的对现场人员不合规行为并进行一直持续不断…

【C++】C++提高编程

C++提高编程 本阶段主要针对C++泛型编程和STL技术做详细讲解,探讨C++更深层的使用 1. 模板 1.1 模板的概念 模板就是建立通用的模具,大大提高复用性 模板的特点:模板不可以直接使用,只是一个框架 模板的通用并不是万能的1.2 函数模板C++另一种编程思想称为泛型编程,主要利…

【C++】C++核心编程

C++核心编程 本阶段主要针对C++面向对象编程技术,C++中的核心和精髓。 1. 内存分区模型 C++程序在执行时,将内存大方向分为4个区域:代码区:存放函数体的二进制代码,由操作系统进行管理 全局区:存放全局变量和静态变量以及常量 栈区:由编译器自动分配释放,存放函数的参数…

矿山安全生产监测预警系统

矿山安全生产监测预警系统通过计算机视觉技术,矿山安全生产监测预警系统对矿山生产过程中的人的不安全行为”、“物的不安全状态”、“环境的不安全因素”三方面出发进行实时监测,当矿山安全生产监测预警系统监测到现场画面中人员未穿反光衣行为、明火烟雾、未穿安全帽行为、…

算法与数据结构——简单排序算法(选择、冒泡、插入)

简单排序算法 时间复杂度均为O(n2) 选择排序 选择排序(selection sort)的工作原理非常简单:开启一个循环,每轮从未排序区间选择最小的元素,将其放到已排序的区间的末尾。 算法流程 设数组长度为n,选择排序的算法流程如下。初识状态下,所有元素未排序,即未排序(索引)区…

广州C++信奥老师解一本通题 1260:1282:最大子矩阵

​ 【题目描述】已知矩阵的大小定义为矩阵中所有元素的和。给定一个矩阵,你的任务是找到最大的非空(大小至少是1 1)子矩阵。 比如,如下4 4的矩阵 0 -2 -7 0 9 2 -6 2 -4 1 -4 1 -1 8 0 -2的最大子矩阵是9 2 -4 1 -1 8这个子矩阵的大小是15。【输入】输入是一个NN的…

煤矿AI智能视频分析识别系统

煤矿AI智能视频分析识别系统是在现场已有监控系统的基础上,煤矿AI智能视频分析识别系统通过计算机视觉技术对现场人员行为以及物体状态进行实时分析检测。煤矿AI智能视频分析识别系统对皮带跑偏、撕裂、堆煤、异物、非法运人、有煤无煤状态等异常情况,以及人员工服穿戴、反光…

shell脚本之删除固定天数之前的文件

shell脚本之删除固定天数之前的文件 需求:删除30天之前的文件该需求一般用于自动清理程序日志,程序日志按每天分割之类的场景。#!/bin/bash #文件目录 addr=/apps/logs #需要删除的文件名称 file_name="*.log" #天数 days=30#查询并删除文件 find $addr -type f -m…