• 首页
  • 产品中心

    产品中心

    覆盖数据实时处理与智能分析全生命周期

    数据核心引擎
    全内存分布式数据库 AI智算加速卡
    数智一体化交付
    云能平台 AI+Data系列一体机
    大数据平台
    大数据平台 一体化流湖仓
    智能开发平台
    人工智能平台 向量数据库
    咨询及知识服务
    产品月刊
  • 解决方案

    解决方案

    释放数字生产力,赋能行业创新!

    智改数转
    智慧化工 智慧农牧 智慧码头 智慧矿山 智能制造
    能源
    电力大数据价值挖掘 电力物资仓储智能作业大脑
    政府
    智慧社区 智慧住建 智慧城市大脑
    运营商
    数据中台基础能力 业务经营多维分析 行业智能短信服务
    金融
    实时数仓 数据归档 湖仓一体
  • 生态合作
  • 产品试用
  • 新闻中心
  • 关于我们
    公司介绍 标准专利 党建工作 联系我们

首页 新闻中心 柏睿一体化流湖仓基于Iceberg的查询优化实践

柏睿一体化流湖仓基于Iceberg的查询优化实践

发布时间:2023-06-20  |  阅读:25355

导语


本文将介绍柏睿数据基于Iceberg实现一体化流湖仓平台的查询优化实践。主要包括以下内容:

  • 背景

  • 柏睿一体化流湖仓架构及优势特性

  • 柏睿一体化流湖仓湖内查询的优化

  • 未来展望





背景




近年来,随着各行业数字化转型的深入,企业海量数据的实时性分析处理、多模数据智能化处理需求快速增长,以期通过数据驱动实现业务增长、业务创新。


柏睿数据在现有全内存分布式计算引擎RapidsDB的基础上,通过Iceberg打造柏睿一体化流湖仓产品Rapids Lakehouse,将数据仓库、数据湖和实时流数据处理集成起来,并基于Iceberg进行湖内查询优化,实现每秒百万级的湖内数据查询性能,助力企业解决海量多模数据实时分析能力不足的问题。




柏睿一体化流湖仓架构及优势特性




Apache Iceberg是一种开放的数据湖表格式,可简单理解为基于计算层和存储层的一个中间层。它将存储和计算解耦,构建了存储格式之上的数据组织方式。在此基础上,Iceberg提供基于快照的读写分离和回溯能力,支持流批统一的写入和读取,支持表schema的拓展和分区演进,并支持ACID,用户彼此之间读写没有影响。


1.png

Apache Iceberg架构图


基于Iceberg的重要特性,柏睿数据构建了一站式多模数据管理与服务平台——柏睿一体化流湖仓。它集成了数据仓库、数据湖和实时流数据处理,支持20+多源异构的大数据流批采集、实时数据处理、统一存储与分析,结合AI/ML技术,提供即时数据洞察,助力企业全面发掘数据价值,提升业务能力和行业领导力。


柏睿一体化流湖仓架构如下。


2_副本.jpg

在数据入湖方面,柏睿一体化流湖仓Transformer 提供实时(Stream)和批量离线(Batch)两种方式入湖,并给用户提供对数据进行加载、转换、整合的能力。


在数据湖内,基于Iceberg 做到存储管理上统一,包括两个方面:


1) 提供格式、位置明确的多模数据支持, 包括HDFS、S3,对象存储在内的多种存储位置和Parque、Avro、Orc等多种存储格式。


2)提供统一的湖内数据管理,包含过期快照删除、小文件合并、数据组织的优化等。


在湖内交互式分析方面,以RapidsDB作为统一的分析处理引擎,RapidsDB Iceberg 连接器融合了RapidsDB特有的自下而上(Bottom-up)、数据驱动的推送执行模型(push-based model),并利用即时编译技术进行特殊代码生成(code specializtion) , 使Rapids Lakehouse实现每秒百万级的湖内数据查询速度。




柏睿一体化流湖仓湖内查询的优化




基于Iceberg,Rapids Lakehouse 提供了多种湖内数据查询优化策略,以实现极致的湖内数据查询性能。具体可分为RapidsDB Iceberg连接器查询的优化和Iceberg数据治理和组织的优化两大类,用户可以根据不同的数据场景和查询需求进行选择,从而实现更高效的数据管理和查询。



01
RapidsDB Iceberg连接器查询的优化 


1)RapidsDB MPP架构与Iceberg TableScan 的结合


RapidsDB使用MPP架构(大规模并行处理架构),在计算时可以将一个查询任务拆分成多个并行执行的小任务,并分发给MPP集群中的多个节点来执行,从而有效提升任务、算子执行的并行度,提高RapidsDB的查询性能。


而在RapidsDB Iceberg连接器中,我们将MPP架构与Iceberg API中的TableScan结合起来。Iceberg TableScan 即为Iceberg读取一个表之前所生成的执行计划,它通过读取snapshots和其相关联的清单文件形成一个最终的CombinedScanTask集合。每个CombinedScanTask包含所需读取的文件地址,文件读取的开始和结束位置等信息,每个CombinedScanTask都是相对独立的。


RapidsDB Iceberg连接器从Iceberg拿到List<CombinedScanTask>后,将每个CombinedScanTask 对应成RapidsDB内部的小任务,并分发给集群中的多个节点并行执行。这样极大提升了Scan的并行度,提升查询性能。


2) RapidsDB Lambda Flow与Iceberg查询结合


RapidsDB的Lambda Flow利用即时编译技术(JIT Compiler),在查询时将频繁执行的方法进行特殊代码生成,再编译为机器代码,提升执行效率。例如,针对WHERE条件判断、聚合运算等场景,RapidsDB计算引擎实时地将表达式的路径编译为具体代码执行,在原过程中产生的大量不必要的调用和分支跳转则都会被优化掉。


在查询Iceberg表时,针对Iceberg的表结构,RapidsDB Iceberg连接器定制了读取和解析元组的代码。在解析元组的流程中,根据表结构动态生成的代码,无需做数据类型的重复判断,只需按照顺序解析数据。另外,在获取部分列时,实现直接根据对应偏移量提取数据,跳过不需要提取的列,从而降低计算及I/O开销。随着处理的数据量增加,节省的计算及I/O量是惊人的。


  • 上一篇:柏睿数据助力国有银行释放数据价值,推动普惠金融高质量发展
  • 下一篇:eq

热门新闻

  • DeepSeek 模型选择指南:从基础到深度,看看哪款适合你!
  • 全面接入Deepseek,柏睿AI知识库一体机焕新升级“睿枢Agent”
  • 政企双向奔赴 | 朝阳区委、区政府致柏睿数据新春感谢信
  • 柏睿数据核心参编的《数据资源治理通用技术要求》地方标准正式发布

中国的国际智能数据算力公司

联系方式

  • 010-64700868 400-088-1960

  • 品牌市场:brmarketing@boraydata.com

    人才招聘:hr@boraydata.com

    销售合作:400RapidsDB@boraydata.com

  • 北京市朝阳区酒仙桥北路乙十号院

快速链接

  • 产品中心
  • 解决方案
  • 生态合作
  • 产品试用
  • 新闻中心
  • 关于我们

关注我们

  • 微信视频号

  • 微信公众号

COPYRIGHT ©2014-2025 北京柏睿数据技术股份有限公司京ICP备16005192号隐私协议法律声明

京公网安备 11010502043838号