StarRocks 2.5 LTS 版本新特性介绍及阿里云EMR Serverless StarRocks火热邀测中

本文涉及的产品
Serverless 应用引擎免费试用套餐包,4320000 CU,有效期3个月
函数计算FC,每月15万CU 3个月
简介: StarRocks 2.5 LTS 版本于近期发布,阿里云EMR Serverless StarRocks也在火热邀测中。本文将重点介绍StarRocks 2.5版本核心功能以及阿里云EMR Serverless StarRocks特性。

🎉 StarRocks 2.5 版本发布啦!

核心功能有:

  • Catalog 支持 Delta Lake、支持 Apache Hudi MOR 表、支持查询湖上 MAP及STRUCT 数据类型、提供 Local Cache;
  • 多表物化视图支持基于外表、物化视图创建,并支持查询改写;
  • 支持 Query Cache;
  • 支持 Lambda 表达式和高阶函数;
  • 主键模型表支持条件更新等。


2.5 版本也将是 StarRocks 的 LTS(Long Term Support)版本,欢迎伙伴们使用体验。

StaRocks GitHub 地址:https://github.com/StarRocks/starrocks


StarRocks 2.5版本介绍

StarRocks 是新一代极速全场景MPP(Massively Parallel Processing)数据平台,致力于让用户无需经过复杂的预处理,就可以支持多种数据分析场景的极速分析。StarRocks 相信数据科学的创新将全面驱动业务发展,希望能帮助企业建立“极速统一”的湖仓新范式,助力企业全面数字化经营。


2.5 版本是 3.0 之前的最后一个版本,囊括了很多重要功能。在 2.5 版本中:


  • 数据湖进一步增强,在数据源生态、查询速度、使用体验上都做了大量优化,让您可以更加方便、快捷地进行数据湖分析。
  • 多表物化视图进一步完善,在物化视图构建、刷新机制优化上都取得了新的进展,并且支持了透明加速,让您可以更加方便地基于物化视图来简化数据建模流程。
  • Query Cache 让“语意等价”的查询性能更上一层楼。
  • Lambda 表达式和高阶函数让您的查询分析更加灵活。
  • 主键模型的条件更新能够解决乱序数据更新问题。


2.5 版本的功能较多,下文挑选了几个重要功能进行详细介绍。


新增核心功能介绍

1、Data Lake Analytics

2.5 版本对数据湖进行了大量增强,具体包括:


更多数据源生态对接

  • 支持 Delta Lake Catalog:使您无需数据迁移,即可分析 Delta Lake 当中的数据。
  • 支持 Apache Hudi 的 MOR 表:借助该特性,在数据实时入湖场景(例如上游 Apache Flink CDC 到 Hudi),StarRocks 就可以更好地支持用户对实时落盘数据的分析需求。
  • 支持 Parquet/ORC 文件外表:您无需借助 Metastore 也可以直接对 DFS/对象存储的文件直接进行分析。
  • 支持集成AWS Glue作为湖分析的 Metastore(支持 Apache Hive / Apache Hudi / Apache Iceberg / Deltalake),更好的对接 AWS 公有云生态。


更快的查询性能

  • 支持 Local Cache:通过对切分后的原始文件进行本地缓存(支持本地磁盘和内存作为混合存储介质),在热点查询场景下大幅度提升从对象存储的数据拉取效率,进一步提升数据湖分析的性能,测试结果接近 StarRocks 内部表。
  • 优化 Apache Hive, Apache Hudi, Apache Iceberg 在查询规划阶段的元数据访问效率。


更好的查询体验

  • 开箱即用的 Meta Cache Policy:借助该特性,Adhoc 场景里的业务团队无需关心和感知具体的分区数据更新,也可以在 StarRocks 访问到保证正确性的数据结果。
  • 湖分析支持 Map/Struct 数据类型:Hive Catalog 完整支持分析 Parquet/ORC 文件格式中的 Map 和 Struct 数据类型,让您的数据分析更加流畅。


2、物化视图

在 2.4 版本中,StarRocks 支持了异步刷新的多表物化视图。在2.5 版本中,物化视图的能力进行了进一步增强,具体包括:

提供多种构建方式,完善建模能力

  • 支持基于外部 Catalog 构建物化视图,并且支持各类复杂查询和内外 Catalog 的关联,使您可以更加方便地在 StarRocks 内直接基于湖中原始数据进行建模,并构建查询加速层。
  • 支持基于物化视图来创建物化视图,简化了多层建模流程。
  • 支持独立的物化视图生命周期管理,完善了数据管控。


提供多种刷新策略,降低不必要的刷新开销

  • 可以设置单次刷新的最大分区数,以保证大的刷新任务可以分批、稳定完成。
  • 可以设置刷新排除表,以避免不必要的历史数据重刷。
  • 可以定义自动刷新范围,仅刷新最近数据。


实现透明查询改写,享受无缝查询加速

  • 支持 Select / Projection / Join / Group by 的查询改写。
  • 支持部分分区、谓词的 Union 改写。
  • 支持嵌套物化视图的查询改写。


通过上述功能的加强,相较 2.4 版本,物化视图真正具备了数据建模的基础能力。未来,StarRocks 会继续对多表物化视图进行增强,包括支持增量更新、支持主键模型的物化视图等。


3、Query Cache

Query Cache 在 BE 的内存中缓存了查询的中间计算结果,给那些“语意等价”的查询进行复用,来降低延迟,提高 QPS 。目前,SELECT,GROUP BY,ORDER BY 以及 WHERE 中谓词的重排等操作均可以对 Cache 进行复用,并且也可以充分利用 WHERE 中谓词的分区 Cache,从而提升查询性能。

Query Cache 在如下的几个场景中更能发挥作用:

  • 宽表模型下的单表聚合查询。
  • 聚合查询以非 GROUP BY 聚合和低基数 GROUP BY 聚合为主。
  • 查询的数据以按时间分区追加的形式导入,并且在不同时间分区上的访问表现出冷热性。


未来,StarRocks 也会继续对 Query Cache 进行优化,包括支持多表 join 聚合查询的复用等。


4、Lambda 表达式及高阶函数

StarRocks 致力于为用户提供灵活好用的分析引擎,2.5 版本中 StarRocks 发布了 Lambda 表达式和数组类型的高阶函数。目前支持了 4 个高阶函数:array_map, array_filter, array_sum, array_sortby。通过这些函数,用户可以方便的对 array 内的元素进行计算、筛选、排序等操作,在变量捕捉、用户行为分析等场景都起到了重要作用。


未来,StarRocks 也会继续补充更多高阶函数,致力于为用户提供更加灵活、方便的数据分析体验。


5、主键模型

  • 主键模型支持条件更新,通过条件更新您可以指定某一非主键列为更新条件,只有当导入的数据中该列的值大于当前值的时候,更新才会生效,从而保证新的数据不被老的数据覆盖,保证数据的正确性。


  • 优化主键模型表导入数据时的内存占用,峰值内存占用降低 50%。


未来 ,StarRocks 将持续在主键模型更新能力上进行优化,包括更全面的 upate 能力支持、更高的 partial update 执行效率。


6、数据导入

StarRocks 在 2.5 版本中对数据导入进行了诸多优化,包括:

  • 支持通过资源组对导入计算进行资源隔离,从而间接控制导入任务对集群资源的消耗。
  • 支持按物理存储进行数据复制的模式,整体性能提升 1 倍。
  • Broker Load 支持定义导入作业的优先级。
  • 无需部署 Broker 即可从对象存储(S3、OSS 等) 或 HDFS 里进行数据导入。
  • 优化 Broker Load 在大量 ORC 小文件场景下的导入性能。


7、备份恢复

StarRocks 历史版本中,备份恢复仅支持表级别,并且对表的类型也有一定限制。在 2.5 版本中,备份恢复的功能全面覆盖所有模型,新增主键模型的备份恢复支持。同时也支持数据库级别的备份恢复,简化备份恢复管理。


8、其他特性

  • 支持在建表时自动设置适当的分桶数,用户无需显式指定分桶数。
  • 支持用户自定义变量,您可以自行设置变量,并在后续 SQL 中使用,以简化 SQL 语句的编写并避免重复计算。
  • 新增 zstd、snappy、zlib 数据压缩的支持,用户可在建表时指定压缩算法。
  • 建表时支持指定 uuid() 或 uuid_numeric() 函数返回的结果作为列默认值。
  • 优化 information_schema 数据库中的 tables 表和 columns 表数据信息;新增 table_config 表,用于访问表的配置属性等信息。
  • 函数新增/优化:
  1. 窗口函数支持使用 QUALIFY 来筛选查询结果;
  2. 新增 map_size、map_keys、map_values、max_by、sub_bitmap、bitmap_to_base64、host_name、date_slice ;
  3. unnest 函数支持变参;
  4. window_funnel 函数支持严格递增模式,防止计算重复的时间戳;
  5. array_agg,array_sort,array_concat,array_slice,reverse 函数支持 JSON 数据类型。


官方发布记录:https://docs.starrocks.io/zh-cn/main/release_notes/release-2.5


EMR StarRocks

开源大数据平台 E-MapReduce(简称“EMR”)是云原生开源大数据平台,向客户提供简单易集成的Hadoop、Hive、Spark、Flink、Presto、Clickhouse、StarRocks、Delta、Hudi、HBase 等开源大数据计算和存储引擎。


随着数据分析需求的发展,数据湖成为大数据架构领域新趋势。为了满足更多用户对于极速分析数据的需求,同时让 StarRocks 强大的分析能力应用在更加广泛的数据集上,阿里云EMR 联合StarRocks社区一起增强了 StarRocks的数据湖分析能力,并出了首款 StarRocks 云上产品。使其不仅能够分析存储在 StarRocks 本地的数据,还能够以同样出色的表现分析存储在 Apache Hive、Apache Iceberg 和 Apache Hudi 等开源数据湖或数据仓库的数据。


阿里云EMR StarRocks 整体架构

在存储层,有阿里云的对象存储 OSS 作为数据湖的统一存储,可以存储常见的 Parquet/ORC/CSV 等文件格式。


在湖管理与优化层,EMR 会通过数据湖构建(DLF),去进行整体数据湖的元数据管理和一体化构建。同时在数据湖分析实践过程中,对象存储相对于传统的 Apache Hadoop(以下简称 Hadoop),HDFS 会存在一些性能问题。为了解决这个问题,在阿里云EMR,我们自研了 Jindo FS 系统,以便对数据湖存储层访问进行加速和优化。


同时针对常见的数据湖存储格式,包括 Parquet、ORC 的格式。比如像 Hudi、Iceberg,在索引统计版本信息、版本维护、小文件合并以及生命周期等方面,都做了优化和增强。有了存储以及针对数据湖管理的优化等工作,就可以在此之上构建分析层,也就是数据开发与治理层。


在数据开发与治理层,StarRocks 在阿里云EMR 分为两个角色,一部分是固定节点,一部分是弹性节点。有了 StarRocks 数据湖分析引擎之后,就可以对接 EMR 上开源的 Apache Airflow以及 Jupyter 等,也可以对接阿里云的 Dataworks 做数据开发和调度。

阿里云EMR StarRocks 架构图

EMR StarRocks 详细信息:https://help.aliyun.com/document_detail/404790.html


EMR Serverless StarRocks

EMR Serverless StarRocks 是开源 StarRocks 在阿里云上的全托管服务,您可以通过 EMR Serverless StarRocks 灵活的创建和使用 StarRocks 服务。


EMR Serverless StarRocks 架构的核心为FE(Frontend)和BE(Backend)两类进程,不依赖任何外部组件,方便部署与维护。FE和BE都可以在线水平扩展,元数据和业务数据都有副本机制,确保整个系统无单点。StarRocks提供MySQL协议接口,支持标准的SQL语法,您可以通过MySQL客户端方便地查询和分析StarRocks中的数据。


EMR Serverless StarRocks主要在企业级功能方面做了以下增强:

  • 可视化的StarRocks实例管理控制台,使得实例的整体运维和管理更方便。
  • 可视化的监控及运维能力。
  • 支持小版本自动升级,方便StarRocks进行版本升级管理。
  • 增加EMR StarRocks Manager,提供了企业级的StarRocks管理能力:
  • 安全能力:支持用户及权限管理。
  • 诊断分析:支持可视化慢SQL,及SQL查询分析能力。
  • 数据管理:提供数据库、表、分区、分片、任务的查询能力,方便运维管理。


目前阿里云EMR Serverless StarRocks正处于邀测阶段,如果您感兴趣可以加入钉钉群 24010016636 参与交流。


EMR Serverless StarRocks 邀测申请表https://survey.aliyun.com/apps/zhiliao/EEb00jXa7

相关实践学习
【文生图】一键部署Stable Diffusion基于函数计算
本实验教你如何在函数计算FC上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。函数计算提供一定的免费额度供用户使用。本实验答疑钉钉群:29290019867
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
目录
相关文章
|
8天前
|
数据采集 运维 DataWorks
DataWorks on EMR StarRocks,打造标准湖仓新范式
本文整理自阿里云计算平台产品专家周硕(簌篱)在阿里云DataWorks on EMR StarRocks解决方案介绍中的分享。介绍了阿里云DataWorks与EMR Serverless StarRocks的结合使用,详细阐述了在数据同步、数据消费、数据治理三大场景中的核心能力。DataWorks作为大数据开发治理平台,提供了从数据建模、数据集成、数据开发到数据治理的全链路解决方案,结合StarRocks的高性能分析能力,帮助企业实现OLAP分析、湖仓一体开发及数据综合治理,满足复杂业务场景下的需求,提升数据处理和分析效率。
35 4
|
1月前
|
SQL 存储 缓存
阿里云EMR StarRocks X Paimon创建 Streaming Lakehouse
本文介绍了阿里云EMR StarRocks在数据湖分析领域的应用,涵盖StarRocks的数据湖能力、如何构建基于Paimon的实时湖仓、StarRocks与Paimon的最新进展及未来规划。文章强调了StarRocks在极速统一、简单易用方面的优势,以及在数据湖分析加速、湖仓分层建模、冷热融合及全链路ETL等场景的应用。
252 2
阿里云EMR StarRocks X Paimon创建 Streaming Lakehouse
|
24天前
|
SQL 存储 缓存
降本60% ,阿里云 EMR StarRocks 全新发布存算分离版本
阿里云 EMR Serverless StarRocks 现已推出全新存算分离版本,该版本不仅基于开源 StarRocks 进行了全面优化,实现了存储与计算解耦架构,还在性能、弹性伸缩以及多计算组隔离能力方面取得了显著进展。
253 6
|
21天前
|
SQL 分布式计算 Serverless
EMR Serverless Spark:一站式全托管湖仓分析利器
本文根据2024云栖大会阿里云 EMR 团队负责人李钰(绝顶) 演讲实录整理而成
110 2
|
28天前
|
SQL 存储 缓存
阿里云EMR StarRocks X Paimon创建 Streaming Lakehouse
讲师焦明烨介绍了StarRocks的数据湖能力,如何使用阿里云EMR StarRocks构建基于Paimon的极速实时湖仓,StarRocks与Paimon的最新进展及未来规划。
119 3
|
29天前
|
人工智能 弹性计算 运维
触手可及:阿里云函数计算助力AI大模型的评测
阿里云推出的面向AI服务器的功能计算(Functional Computing, FC),专为AI应用提供弹性计算资源。该服务支持无服务器部署、自动资源管理和多语言支持,极大简化了AI应用的开发和维护。本文全面评测了FC for AI Server的功能特性、使用体验和成本效益,展示了其在高效部署、成本控制和安全性方面的优势,并通过具体应用案例和改进建议,展望了其未来发展方向。
125 4
|
2月前
|
SQL 分布式计算 Serverless
阿里云 EMR Serverless Spark 版正式开启商业化
阿里云 EMR Serverless Spark 版正式开启商业化,内置 Fusion Engine,100% 兼容开源 Spark 编程接口,相比于开源 Spark 性能提升300%;提供 Notebook 及 SQL 开发、调试、发布、调度、监控诊断等一站式数据开发体验!
146 3
阿里云 EMR Serverless Spark 版正式开启商业化
|
2月前
|
人工智能 运维 大数据
阿里云“触手可及,函数计算玩转 AI 大模型”解决方案评测报告
阿里云“触手可及,函数计算玩转 AI 大模型”解决方案评测报告
93 2
|
2月前
|
人工智能 自然语言处理 Serverless
阿里云函数计算 x NVIDIA 加速企业 AI 应用落地
阿里云函数计算与 NVIDIA TensorRT/TensorRT-LLM 展开合作,通过结合阿里云的无缝计算体验和 NVIDIA 的高性能推理库,开发者能够以更低的成本、更高的效率完成复杂的 AI 任务,加速技术落地和应用创新。
149 13
|
3月前
|
Serverless API 异构计算
函数计算产品使用问题之修改SD模版应用的运行环境
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。

热门文章

最新文章

相关产品

  • 函数计算