当前位置: 首页 > news >正文

大数据Hologres(一):Hologres 简单介绍

文章目录

Hologres 简单介绍

一、什么是实时数仓 Hologres

二、产品优势

1、专注实时场景

2、亚秒级交互式分析

3、统一数据服务出口

4、开放生态

5、MaxCompute查询加速

6、计算存储分离架构

三、应用场景

搭建实时数仓

四、产品架构

1、Shared Disk/Storage (共享存储)

2、Shared Nothing

3、Storage Disaggregation(存储计算分离架构) 

4、存储计算分离的架构存在以下优势

五、架构组件介绍

六、执行引擎

1、优势

1.1、分布式执行

1.2、全异步执行

1.3、向量化和列处理

1.4、自适应增量处理

1.5、特定查询深度优化

2、Query执行过程


Hologres 简单介绍

近年来,随着大数据平台、数据仓库实时化、在线化的诉求加剧,催生了一系列的实时数仓架构,Lambda 架构是其中主流,但是随着场景的复杂度和业务多维需求,Lambda 架构的痛点也越来越明显,数据状态存储多不一致,数据同步作业多调度难,数据质量修正周期长等问题严重限制了开发的效率。

一、什么是实时数仓 Hologres

Hologres是阿里巴巴自主研发的一站式实时数仓引擎(Real-Time Data Warehouse),支持海量数据实时写入、实时更新、实时加工、实时分析,支持标准SQL(兼容PostgreSQL协议和语法,支持大部分PostgreSQL函数),支持PB级数据多维分析(OLAP)与即席分析(Ad Hoc),支持高并发低延迟的在线数据服务(Serving),支持多种负载的细粒度隔离与企业级安全能力,与MaxCompute、Flink、DataWorks深度融合,提供企业级离在线一体化全栈数仓解决方案。 

Hologres致力于高性能、高可靠、低成本、可扩展的实时数仓引擎研发,为用户提供海量数据的实时数据仓库解决方案和亚秒级交互式查询服务,广泛应用在实时数据中台建设、精细化分析、自助式分析、营销画像、人群圈选、实时风控等场景。 

二、产品优势

1、专注实时场景

数据实时写入、实时更新,无需批处理,写入即可见。Hologres与Flink、Spark原生集成,支持高吞吐、低延时、有模型、高质量的实时数仓开发,满足业务洞察实时性需求。

2、亚秒级交互式分析

Hologres支持海量数据亚秒级交互式分析,无需预计算,支持多维分析、即席分析、探索式分析、MaxCompute加速分析,满足所见即所得式数据分析。Hologres采用向量化计算和智能索引优化技术,性能和并发能力大幅提升。

3、统一数据服务出口

一个引擎支持多维分析、高性能点查、数据检索等多样化的场景,同时支持负载隔离,简化数据架构,统一数据访问接口与安全策略。

4、开放生态

标准SQL接口,兼容PostgreSQL 11协议,无缝对接主流BI和SQL开发框架,支持19+款主流BI工具,无需应用重写,无额外学习成本。支持数据湖场景,支持JSON等半结构化数据,OSS、DLF简易入湖入仓。

5、MaxCompute查询加速

快速查询分析MaxCompute的数据,Hologres与MaxCompute无缝连接,您无需导入导出即可查询MaxCompute表的数据,快速获取查询结果。支持MaxCompute对接BI工具,支持交互式分析场景。

6、计算存储分离架构

采用计算与存储分离的云原生架构,存储资源和计算资源分离部署并独立扩展。支持动态升降配,您可以根据业务需求灵活地扩容或缩容Hologres资源。资源越多,查询的并发数量越大。

三、应用场景

搭建实时数仓

  • 数据部门搭建阿里云实时数仓产品、展示实时大屏和分析实时Reporting 报表。
  • 运维和数据应用部门执行实时监控、实时异常检测预警与实时调试。
  • 业务部门进行实时风控、实时推荐、实时效果分析和实时训练。

 

  • 实时查询MaxCompute离线数据。
  • 分析MaxCompute离线数据报表。
  • 输出MaxCompute离线数据的在线应用,例如RESTful API的使用。

 

业务数据分为冷数据和热数据,冷数据存储在离线数据仓库MaxCompute中,热数据存储在Hologres中。Hologres可以联邦分析实时数据和离线数据,对接BI分析工具,快速响应简单查询与复杂查询的业务需求。 

四、产品架构

1、Shared Disk/Storage (共享存储)

  • 数据部门搭建阿里云实时数仓产品、展示实时大屏和分析实时Reporting 报表。
  • 运维和数据应用部门执行实时监控、实时异常检测预警与实时调试。
  • 业务部门进行实时风控、实时推荐、实时效果分析和实时训练。

 

2、Shared Nothing

每个计算节点自己挂载存储,一个节点只能处理一个分片的数据,节点之间可以通信,最终有一个汇总节点对数据进行汇总。这种架构能比较方便的扩展,但是它的缺点是节点Failover需要等待数据加载完成之后才能提供服务;并且存储和计算需要同时扩容,不够灵活,扩容后,有漫长的数据Rebalance过程。

3、Storage Disaggregation(存储计算分离架构) 

存储和Shared Storage类似,有一个分布式的共享存储集群,计算层处理数据的模式和Shared Nothing类似,数据是分片的,每个Shard只处理自己所在分片的数据,每个计算节点还可以有本地缓存。

 

4、存储计算分离的架构存在以下优势

4.1、一致性问题处理简单

计算层只需要保证同一时刻有一个计算节点写入同一分片的数据。

4.2、扩展更灵活

计算和存储可以分开扩展,计算不够扩计算节点,存储不够扩存储节点。这样在大促等场景上会非常灵活。计算资源不够了,马上扩容计算就好了,不需要像Shared Nothing那样做耗时耗力的数据Rebalance;也不会像Shared Nothing那样,出现单机的存储容量瓶颈。

4.3、计算节点故障恢复快

计算节点发生Failover之后,数据可以按需从分布式的共享存储异步拉取。因此Failover的速度非常快。

五、架构组件介绍

六、执行引擎

1、优势

1.1、分布式执行

执行引擎是一个和存储计算分离架构配合的分布式执行模型。执行计划由异步算子组成的执行图DAG(有向无环图)表示,可以表达各种复杂查询,并且完美适配Hologres的数据存储模型,方便对接查询优化器,利用各种查询优化技术。

1.2、全异步执行

端到端的全异步处理框架,可以避免高并发系统的瓶颈,充分利用资源,并且最大可能地避免存储计算分离系统带来的读数据延迟的影响。

1.3、向量化和列处理

算子内部处理数据时最大可能地使用向量化执行,与存储引擎深度集成,通过灵活的执行模型,充分利用各种索引,最大化地延迟向量物化和延迟计算,避免不必要的读数据和计算。

1.4、自适应增量处理

对常见实时数据应用查询模式进行自适应增量处理。

1.5、特定查询深度优化

对一些特定查询模式的独特优化。

2、Query执行过程

 


  • 📢博客主页:https://lansonli.blog.csdn.net
  • 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
  • 📢本文由 Lansonli 原创,首发于 CSDN博客🙉
  • 📢停下休息的时候不要忘了别人还在奔跑,希望大家抓紧时间学习,全力奔赴更美好的生活✨

相关文章:

  • 【数据结构初阶】排序算法(中)快速排序专题
  • 人工智能实战用折线图解读产业GDP发展态势
  • 【自用】jlu 数据库 第一章 Introduction
  • 大模型分布式训练并行技术(九)-总结
  • kubernetes配置资源管理
  • Python 从入门到实战31(数据库编程接口)
  • 【个人笔记】数据一致性的解决方案
  • MySQL-数据库约束
  • 翻译:Recent Event Camera Innovations: A Survey
  • Anki 学习日记 - 卡片模版 - 单选ABCD(纯操作)
  • 《Linux运维总结:使用 MongoDB工具备份和恢复mongodb 7.0.14分片集群(方案一)》
  • yolov8环境安装
  • GPT+AI技术实战:构建多端智能虚拟数字人的创新与突破
  • WebRTC中的维纳滤波器实现详解:基于决策导向的SNR估计
  • 0基础学习CSS(六)字体
  • [iOS]Core Data浅析一 -- 启用Core Data
  • Bootstrap JS插件Alert源码分析
  • JavaScript 一些 DOM 的知识点
  • JavaScript标准库系列——Math对象和Date对象(二)
  • java中的hashCode
  • Twitter赢在开放,三年创造奇迹
  • vue中实现单选
  • 动态规划入门(以爬楼梯为例)
  • 悄悄地说一个bug
  • 日剧·日综资源集合(建议收藏)
  • 首页查询功能的一次实现过程
  • 数据可视化之 Sankey 桑基图的实现
  • 协程
  • ​猴子吃桃问题:每天都吃了前一天剩下的一半多一个。
  • #NOIP 2014# day.2 T2 寻找道路
  • #vue3 实现前端下载excel文件模板功能
  • (1)SpringCloud 整合Python
  • (11)MSP430F5529 定时器B
  • (2)STL算法之元素计数
  • (3)医疗图像处理:MRI磁共振成像-快速采集--(杨正汉)
  • (Arcgis)Python编程批量将HDF5文件转换为TIFF格式并应用地理转换和投影信息
  • (Pytorch框架)神经网络输出维度调试,做出我们自己的网络来!!(详细教程~)
  • (附源码)ssm码农论坛 毕业设计 231126
  • (黑马C++)L06 重载与继承
  • (亲测)设​置​m​y​e​c​l​i​p​s​e​打​开​默​认​工​作​空​间...
  • (十六)串口UART
  • (十三)Flask之特殊装饰器详解
  • (一)eclipse Dynamic web project 工程目录以及文件路径问题
  • .libPaths()设置包加载目录
  • .net core 实现redis分片_基于 Redis 的分布式任务调度框架 earth-frost
  • .net core 微服务_.NET Core 3.0中用 Code-First 方式创建 gRPC 服务与客户端
  • .NET Framework 3.5安装教程
  • .Net 代码性能 - (1)
  • .NET 读取 JSON格式的数据
  • .NET/C# 中设置当发生某个特定异常时进入断点(不借助 Visual Studio 的纯代码实现)
  • .NET应用UI框架DevExpress XAF v24.1 - 可用性进一步增强
  • @ConditionalOnProperty注解使用说明
  • [ CTF ] WriteUp-2022年春秋杯网络安全联赛-冬季赛
  • [AIGC] 解题神器:Python中常用的高级数据结构
  • [Algorithm][动态规划][两个数组的DP][正则表达式匹配][交错字符串][两个字符串的最小ASCII删除和][最长重复子数组]详细讲解