全部产品
Search
文档中心

实时数仓Hologres:概览

更新时间:Jun 01, 2023

实时计算Flink版(Alibaba Cloud Realtime Compute for Apache Flink,Powered by Ververica)是阿里云基于Apache Flink构建的企业级高性能的实时大数据处理系统。Hologres与Flink深度连通,支持实时写入Flink的数据,可以实时查询写入的数据,帮助您快速搭建实时数仓。

形态说明

  • 阿里云实时计算Flink版不进行业务存储,所有的数据均来自于外部存储系统持有的数据。阿里云实时计算Flink版支持的数据存储类型如下:

    • 源表

    源表指输入至Flink的数据输入源。Flink的源表指定为Hologres时,使用的是批量导入而非流式导入,Hologres会将全表的数据统一扫描一次后再输出至下游,扫描完成后本次作业结束。

    • 维表

    维表一般适用于点查询场景(Lookup by Key),因此在Hologres中,维表建议使用行存储,并且JOIN的字段必须是完整的主键字段。

    • 结果表

    结果表用于接收并存放经过Flink计算的结果数据,为下游数据继续消费提供各类读写接口。

  • 阿里云实时计算Flink版还支持很多企业级高级能力,通过与Hologres深度集成,提供以下创新能力:

    • Hologres Binlog消费

    使用消息队列的模式消费Hologres表的Change Log。

    • Flink Catalog

    Flink支持导入Hologres元数据为Catalog,在Flink全托管控制台直接读取Hologres元数据,不用再手动注册Hologres表,可以提高开发效率且能保证表结构的正确性。

    • Schema Evolution

    Flink全托管支持Schema Evolution,在Flink读取JSON数据时,可以自动解析类型,自动创建对应表的列,支持数据模型的动态演化。

  • Hologres支持的Flink产品形态及功能如下表所示。

    产品形态

    数据存储类型

    企业级高级能力

    描述

    源表

    结果表

    维表

    Hologres Binlog消费

    Flink Catalog

    Schema Evolution

    Flink半托管

    支持行存储及列存储,Binlog源表建议使用行存储或行列共存。

    支持行存储及列存储

    建议使用行存储或行列共存

    支持

    支持

    支持

    使用EMR Studio开发平台。

    Blink独享(已停售)

    支持行存储及列存储,Binlog源表建议使用行存储或行列共存。

    支持行存储及列存储

    建议使用行存储或行列共存

    Hologres V0.8版本只支持行存储,V0.9及以上版本支持行存储及列存储。建议使用行存储。

    不支持

    不支持

    使用Bayes开发平台。

    推荐使用阿里云Flink全托管。

    开源Flink1.10

    不支持

    支持行存储及列存储

    不支持

    不支持

    不支持

    不支持

    -

    开源Flink1.11及以上版本

    不支持

    支持行存储及列存储

    建议使用行存储

    不支持

    不支持

    不支持

    从开源Flink1.11版本开始,Hologres代码已开源。详细内容请参见GitHub

    开源Flink1.13及以上版本

    支持批量源表

    支持行存储及列存储

    建议使用行存储

    不支持

    不支持

    不支持

    从开源Flink1.11版本开始,Hologres代码已开源。详细内容请参见GitHub

Hologres Connector Release Note

Flink版本

阿里云实时计算VVR版本

Hologres版本

更新信息

相关文档

1.15

6.0.6

1.3.x

源表:

  • JDBC模式消费Hologres Binlog不再强制设置Slotname参数,支持创建默认Slot,从Holohub模式切换更平滑。

  • 新增enable_filter_push_down参数,批量源表不在默认下推filter条件,需要设置此参数值为true

实时数仓Hologres

1.15

6.0.5

1.3.x

  • 通用:作业启动时,会在TasknManager日志中打印所有参数信息,方便排查问题。

  • CTAS/CDAS:支持字段类型宽容模式,使用此模式上游发生数据类型修改事件时,只要所修改类型与原类型的归一化类型相同,都视作修改成功。

  • Hologres Catalog:丰富ALTER TABLE语法,支持修改Hologres物理表属性,支持修改表名、增加列、列重命名和修改列注释。

1.15

6.0.3~6.0.4

1.3.x

源表:

  • 新增JDBC模式消费Hologres Binlog,此模式支持更多的数据类型,且支持自定义账号。

  • 批量源表以及全增量源表的全量阶段,支持Filter下推。

结果表:

支持以Fixed Copy的模式写入,Fixed Copy是Hologres1.3版本新增的能力,相比通过JDBC模式进行写入,Fixed Copy方式可以实现更高的吞吐(因为是流模式)、更低的数据延时和更低的客户端内存消耗(因为不攒批)。

Hologres Catalog:

支持创建Catalog时进行默认的表属性设置。

sdkMode参数:

Hologres不同类型的表都有多种模式可以选择,此版本开始统一整理为sdkMode参数。

1.13以及1.15

4.0.15以及6.0.2

1.1及以上版本

源表:

  • 从该版本开始,批量源表默认大小写敏感。

  • 支持配置批量源表Scan操作所在事务的超时时间。

  • 修复批量源表解析复杂字符串可能失败的问题。

  • 全增量源表新增Upsert模式。

维表:

Hologres维表支持异步请求的超时时间(asyncTimeoutMs)设置。

结果表:

  • 支持PARTITION BY语法,CTAS创建Hologres结果表时可以通过PARTITION BY定义分区表。

  • Metrcis支持currentSendTime指标。

1.13

4.0.13

1.1及以上版本

  • 源表支持全增量一体源表消费。

  • 支持Datastream API。

1.13

4.0.11

0.10及以上版本

支持CTAS、CDAS。

1.13

4.0.8

0.10及以上版本

结果表、源表、维表支持Hologres Catalog。

管理Hologres Catalog

1.13

3.0.0

0.9及以上版本

支持实时消费Hologres。

Flink全托管