StarRocks叶谦:新一代MPP数据库助力企业打造“极速统一”数据分析新范式 | 甲子引力
数据分析能力是企业全面数字化经营的核心。
编辑 | 栗子
4月27日,中国科技产业智库「甲子光年」线上举办了2022年「甲子引力X」数字经济高峰论坛。本次论坛以“产业科创新坐标”为主题,试图在有限性、无限性和不确定性中寻找数字经济的“坐标系”。
在下午的“数字生产力”专场中,StarRocks联合创始人&COO叶谦带来了《全新数据分析能力赋能数字生产力全面升级》的主题演讲。他认为,数据分析是企业数字生产力的核心,新一代极速全场景MPP数据库StarRocks的价值便是释放数字生产力。
以下为叶谦的演讲实录:
大家好,我是StarRocks联合创始人&COO 叶谦,很高兴能参加甲子引力数字经济高峰论坛,和大家分享一些StarRocks对于数据分析和数字生产力的思考。
近年来有关数字的内容一直是企业关注的热门话题。随着企业数字化转型不断深入,数据驱动的概念越来越被各行各业所接受,想要真正实现数据驱动并将数字转换成生产力,核心就是数据分析的能力。
国际著名分析机构Gartner在2021年数据和分析趋势报告中指出,数据分析已经成为企业一项核心业务职能。企业的各个业务线开始打破原有的数据孤岛将数据整合起来分析,以发掘更大的业务价值。与此同时,美国著名投资机构A16Z的报告也显示,2021年国际著名投资机构对于数据相关的企业异常关注,纷纷投下重注。2021年各个海外著名投资机构在有前景的数据创业类公司中投下的资金量是2020年超3倍,各类分析报告均指向了同一事实:数据分析已经成为企业数字生产力的核心。
StarRocks 成立两年多来倾力打造世界顶级的新一代极速全场景 MPP 数据库,就是希望能够帮助企业建立“极速统一”的数据分析新范式,从而实现企业全面数字化经营。
StarRocks高度注重技术驱动,公司研发人员比例达到70%。StarRocks 采用Open Core的模式,于去年9月份开放源代码之后,在Github上的星数已超过2400个。当前已经有超过110家估值或市值在10亿美金以上的中大型用户,在生产环境中使用StarRocks,这些用户来自于各行各业。
1.极速统一的新一代数据架构
我们的产品特性可以用两个关键词总结:极速、统一。主要从4个核心价值来理解。
首先,StarRocks可以给公司业务带来全新的业务洞察速度。对于任意维度的OLAP分析和AdHoc查询,StarRocks都可以做到秒级反馈,让数据分析人员拥有极速的体验。StarRocks 单节点每秒可以处理多达100亿行数据,综合处理查询速度比其他产品要快10到100倍。
其次,StarRocks可以给业务带来全新的业务洞察实时性。数据实时导入StarRocks可实现即时可见。不仅如此,StarRocks还支持数据更新操作,数据在实时导入和更新的时候,查询的速度依然能够表示在秒级。对于业务数据更新需求大的用户来说是非常友好的特性;
第三,StarRocks支持数千人同时进行数据分析工作。对那些需要数据驱动一线运营的公司来说,在部分场景StarRocks可以到达1万以上并发量,并且还可以控制TP99在1秒以内。
第四,由于能够在多种场景下实现极速查询的目标,这使得StarRocks可以灵活使用各种数据建模的方式,数据工程师和数据分析师可以使用大宽表,也可以使用星型模型或者雪花模型。不再依赖于预计算或者大宽表去提速,业务交互的速度可以得到极大改善。不少用户在使用StarRocks之后,业务速度从周加快到小时,甚至是分钟级别,生产力得到极大提升。
基于StarRocks,用户可以打造一个全新的极速统一的数据架构。在这个数据架构里,整个OLAP分析层可以统一到StarRocks中,它不仅能实现OLAP多维分析、实时数据分析、高并发查询以及探索式分析等多场景下的极速分析效果,还可以极大减少不同数据分析组件的建设和维护成本。应用新一代数据架构之后,企业可以在更多场景使用星型模型、雪花模型来替代原有的预计算和大宽表模式,免除了数据链路建设复杂性,并且增强了数据分析的灵活性。
作为一个成熟的企业级数据库产品,StarRocks不仅产品安全稳定、服务可靠,生态也很完善。
首先,StarRocks是一个完整、独立的系统,整个系统无单点,任何节点宕机均不影响系统的可用性。StarRocks具有很好的弹性伸缩能力,可以实现在大数据规模下在线扩容,相对其他产品运维成本更低。更值得一提的是StarRocks的稳定性,经历过“双十一”这样极端业务流量的检验。
其次,StarRocks相关生态非常完善。产品支持标准SQL语法,兼容MySQL协议,支持各类主流的BI系统,包括Tableau 、永洪等,支持各类主流数据源的接入,包括各种TB数据库、HDFS、S3等。
StarRocks周边运维工具也比较完善,不仅有自研的运维工具,还可以很方便对接各类流行的开源工具。
最后,StarRocks提供了可靠的企业级服务保证。StarRocks核心技术完全自研可控,在出现问题时,可以为企业客户提供全天候不休的原厂技术支持。我们在全国六地都有技术支持中心,包括北京、上海、杭州、广州、成都、西安等城市。在企业有特殊需求的时间点,比如说“双十一”或者年度大促,可以安排原厂的工程师进行现场支持。
目前,已经有数百家客户在线上生产环境部署和使用了StarRocks。其中估值或市值在10亿美金以上的大客户超过110家,还有像Airbnb 这样市值超过千亿美金的美国企业。这些客户包含了互联网金融、物流、制造等各行各业的头部企业,每个客户从开始测试到生产环境上线StarRocks平均周期约为两个月,这对于软件来说是非常短的时间周期。
2.三大核心能力支持企业典型业务场景
大家可能会非常感兴趣,这些用户主要将StarRocks应用在哪些场景呢?
首先是面向用户的报表。这类报表一般是给终端用户看的数据产品,其特点是数据时效性很高、同时使用人很多,因此并发查询量会比较高。由于每个人只看自己的数据,不会看别人的数据,所以每次查询高广泛的数据量是十分有限的。这种类型的数据报表对于系统并发能力、数据实时导入要求很高,没有办法使用预计算系统来进行支持。
第二是面向经营的报表。这类报表的主要受众是管理层和业务方,其特点是对聚合计算能力要求比较高,需要查询速度非常快,因为老板都不喜欢等待。而且,这种类型的报表一般需求会比较多,对于需求完成的时间点要求严格,所以如果以基于预计算或者大宽表的方式来完成此类报表,过程对操作人员而言会十分“痛苦”。
第三是用户画像。用户画像是非常普遍的场景,基本任何初期的运营场景都会遇到。它涉及到很多人群相关的操作,包括标签的圈选、根据个人ID来查询标签等。在这个场景下的StarRocks Bitmap数据类型会大有用武之地。
第四是运营分析场景。主要来源于公司内部一线的运营或者分析人员的需求。它的特点是对于数据的时效性要求很高,以及这些分析往往涉及到多个相关的业务,有多张数据报表。不仅如此,这类场景往往还会涉及到数据权限控制的问题,需要根据员工组织架构来判断企业数据权限的范围。比如,我们一个从事零售业务的客户,在全国有上万家门店,每个门店的运营情况都由店长查看,但是店长责任范围是在不断变化和调整的。这类分析场景只能用星型模型操作,如果是使用大宽表的方式,每天重算的数据量将非常巨大且难以做到实时。
第五是订单分析。这类分析的主要特点是数据为流式导入,并且订单往往有分析的需求。例如,订单的状态会随着时间的推移发生变化,这要求底层数据分析系统能够支持实时数据的分析和更新,这两点都是StarRocks的强项。
第六是自助分析。这里包括自助报表和指标管理平台、数据探查等。此类场景普遍要求对接上层BI系统,这类分析所产生的SQL语句较为复杂,并且通常涉及多张数据表,这就要求数据分析系统能够处理复杂的SQL。不仅要支持复杂的SQL语法,还需快速返回,给分析人员良好的交互式体验。
StarRocks有哪些核心能力支持上述场景呢?
首先是对复杂查询的处理能力。我们为此实现了以下关键点:
全面向量化执行引擎。StarRocks通过实现全面向量化执行引擎,充分发挥了CPU的处理能力。经过标准测试集的验证,StarRocks的全面向量化引擎可以将算子执行性能提高3到10倍。 CBO(Cost-Based Optimizer)。在多表关联的场域场景下,仅仅靠优秀的查询执行引擎没有办法获得极致的执行性能。而通过StarRocks全新自研的优化器,可以实现多种优化手段,帮助向量化引擎发挥更加极致的特性。 分布式Join。StarRocks可以实现多种类型的分布式Join操作,适合于包括大表和小表的Broadcast Join、大表和中表的Shuffle Join、大表和大表的Colocate Join。 资源隔离。对于数据分析系统用户,常常会担心单条查询过大,将整个集群资源耗尽,从而导致其他查询没有办法执行。解决这个问题的关键就在于一个优秀的资源隔离机制。
极速多表Join。StarRocks的多表Join性能在行业里处于领导地位。 实时数据导入。StarRocks可以支持从Kafka实时导入数据,并且导入数据支持事务,可以做到不丢不重。支持Flink - CDC,可以直接从OLTP数据库直接对接数据。 实时更新能力。StarRocks具有独特的更新模型。更新模型可以很好支持数据的实时更新,并且能够保证数据在实时更新时查询的低延时。这个能力目前在同类型产品中非常独特。 现代化物化视图。StarRocks可以支持多种聚合算子,在数据实时导入物化视图过程中自动构建、自动计算,并且物化视图在使用时对于用户来说是透明的。
微信扫码关注该文公众号作者