共计 2972 个字符,预计需要花费 8 分钟才能阅读完成。
作者:周桂民,大数据架构师和负责人,次要负责大数据平台根底建设工作
酷开科技,全称深圳市酷开网络科技股份有限公司,成立于 2006 年,自主研发了智能电视操作系统——酷开零碎。酷开科技先后承受来自爱奇艺、腾讯、百度的投资入股,市场估值近百亿元,次要业务有客厅经营业务、数字化营销业务、融媒体业务、共享屏业务等。截止 2022 年 3 月,中国共计有 3 亿台客厅智能终端,激活量 1.9 亿,日活用户冲破 1.2 亿人,日均开机率达 40 %。其中,酷开科技领有 5900 万终端数、3076 万月活以及 457 分钟均匀开机时长。
酷开大数据部门负责公司大数据体系框架建设,次要工作是撑持日常的 BI 剖析、数据看板、人群画像等场景。客厅经济背景下的公司业务增长带来了数据量的激增,不同的数据需要衍生出多种数据服务,不同的数据服务抉择不同的数据库和数仓技术,比方 MySQL、ElasticSearch、Apache HBase、ClickHouse 等。为了最大化升高运维老本、提供高性能的数据服务,做到真正的极速对立,从 2021 年下半年开始,酷开大数据部门正式引入 StarRocks。
无论是多表关联查问还是单表查问,StarRocks 在稳定性和查问速度上都有超预期的体现。50 亿数据量的明细表中查问去重操作,查问效率根本能管制在毫秒级别,目前反对在线数百人同时应用,人群画像标签计算由原来的 2-3 小时缩短到秒级返回计算结果,大大提高了业务经营的效率和体验。
目前,酷开大数据部门正在用 StarRocks 反对更多的剖析场景,对立 OLAP 剖析引擎,缩小多引擎保护老本。
01
业务背景
—
1、酷魔方数据平台
酷魔方数据平台次要面向外部业务人员,提供数据集成、数据荡涤、数据分析以及可视化等服务。该产品买通外部各业务数据,为业务剖析人员提供多种分析方法和分析模型,进步业务剖析效率,晋升沉闷、留存和营收转化等。酷魔方的数据服务接口给各业务线提供数据 API 服务、数据订阅等。
平台次要提供三大剖析性能:
- 标准化行为剖析
- 可视化图表剖析
- 数据看板
平台次要提供三大方面性能:
- 标签治理:自定义标签,通过离线和实时工作对标签进行计算和解决
- 自主圈人:业务经营人员能够依据任意的业务规定进行用户分群和二次圈定
- 用户画像:业务经营人员在自定义的用户群进行画像剖析
2、万户画像平台
万户画像平台是智能经营平台,帮忙业务对指标客户进行人群圈定、标签治理、智能投递等人群洞察性能。次要是对 OTT 终端用户属性、行为偏好、兴趣爱好等信息进行标签化解决和计算,辨认出不同的用户类别,依据不必的类别进行人群圈定,对指标用户进行精细化经营,开掘更有价值的用户群体。
02
历史架构和痛点
—
![上传中 …]()
SDK 埋点数据通过 Lua 脚本服务采集后,发送到 Apache Kafka,通过 Apache Spark(以下简称 Spark)工作把数据落到 HDFS。或者通过 Apache Flink(以下简称 Flink)落地到 HDFS,再用 Spark 或者 Apache Hive(以下简称 Hive)进行数据加工解决,数据汇总后把数据放到 MySQL 或 ElasticSearch 中对外提供服务。
酷魔方数据平台里的业务明细数据,通过 Hive 或者 Spark 离线解决,或通过 Flink 实时处理,数据汇总聚合后放在 MySQL 里对外提供数据服务。
该计划在进行多维度剖析时候,特地是业务数据高达数十亿的时候,单库 MySQL 是不能满足查问性能要求的,只能通过分库分表的形式来做数据拆分,这样就减少了平台的运维老本。随着业务倒退,业务流量越来越大,对仅能反对单表千万级别数据的 MySQL 来说,即便采纳分库分表计划,查问性能也难以撑持,还有数据压缩占比少,运维老本低等劣势。
万户画像平台次要用来满足用户标签查问需要,但对于简单数据结构类型,ElasticSearch 就不能满足。有时还须要对用户标签进行剖析解决,须要通过 Spark 提交计算工作,通常须要跑 20-30 分钟。对于业务剖析人员来说,数据交互体验是十分不敌对的,减少的是数据处理复杂度和数据存储老本,同时在计算时会占用十分多的队列资源。
03
引入 StarRocks
—
为了解决下面的业务痛点,咱们从 2021 年下半年开始调研 StarRocks 和 ClickHouse,并做了两者的比照测试,应用了 10 台服务器(32C+256G+SSD),80 亿数据量,失去以下测试后果:
测试 SQL | 并发度 | StarRocks(95%rt) | ClickHouse(95%rt) |
---|---|---|---|
单表明细过滤 | 10 | 3190 | 10283 |
单表全量分组聚合 | 30 | 6027 | 24518 |
单表分组过滤聚合 | 30 | 405 | 4305 |
依据这个测试后果,咱们选型了 StarRocks,并把业务逐渐切换到 StarRocks 上,彻底解决了运维老本高、平台性能无奈满足业务需要的痛点。
在万户画像平台,经营在做人群圈选和人群剖析的运算时,之前是通过传递动静参数组成 SQL,应用 Spark SQL 去计算生成数据,再通过数据接口提供给业务方应用。整个计算过程的几十亿数据大略须要用时 30 分钟左右。引入 StarRocks 后基本上可能秒级返回计算结果,特地是通过 Bitmap 高效去重带来了较大的性能晋升。
在酷魔方数据平台对立接口服务中,应用 StarRocks 做数据存储和计算,在升高了原来的 MySQL 分库分表计划运维老本的同时,还晋升了计算性能。之前采纳基于 MySQL 分库分表的计划,须要安顿一位长期的专职运维,采纳 StarRocks 后,只需在初期测试和性能调优时安顿运维人员即可。在进行千万级别数据的查问时,应用 MySQL 分库分表的查问,性能就会显著变得吃力,到亿级别的数据查问时更是须要分钟级别响应。而在雷同数据体量、应用雷同 SQL 的状况下,StarRocks 根本都能做到毫秒级或秒级响应。
总的来说,StarRocks 不仅撑持了 BI 剖析零碎、对立数据接口服务和画像平台业务等业务剖析要求,也简化了数据处理链路过程,帮忙酷开科技实现了对立极速的剖析引擎。
04
总结与布局
—
在应用 StarRocks 期间次要有以下几点惊喜体现:
- 极速的剖析性能,几十亿的数据量状况下,进行多维分析能够达到秒级别的响应
- 准确的数据去重,疾速实现了人群留存计算
- 大大降低了运维老本和分析师的 SQL 语法学习老本
- 丰盛的数据存储模型能够间接在业务场景中应用
后续心愿 StarRocks 能在酷开科技更多的业务场景中应用,减少更多个性,比方简单的数据结构类型目前反对的 Array,目前业务数据格式很多时候是 JSON、Map、Struct 类型等。酷开大数据团队也在尝试数据湖剖析场景应用,心愿能推动 StarRocks 在数据湖剖析的利用。
对于 StarRocks
StarRocks 创建两年多来,始终专一打造世界顶级的新一代极速全场景 MPP 数据库,帮忙企业建设“极速对立”的数据分析新范式,助力企业全面数字化经营。
以后曾经帮忙腾讯、携程、顺丰、Airbnb、滴滴、京东、众安保险等超过 110 家大型用户构建了全新的数据分析能力,生产环境中稳固运行的 StarRocks 服务器数目达数千台。
2021 年 9 月,StarRocks 源代码凋谢,在 Github 上的星数已超过 3000 个。StarRocks 的寰球社区飞速成长,至今已有超百位贡献者,社群用户冲破 5000 人,吸引几十家国内外行业头部企业参加共建。