通过Flink访问宽表引擎

您可以使用社区版Flink或阿里云实时计算版Flink访问云原生多模数据库 Lindorm宽表。本文介绍同时适用于阿里云Flink和社区版Flink访问Lindorm宽表的方法。

背景信息

您可以将云原生多模数据库 Lindorm宽表作为Flink中的维表或者结果表,通过Flink SQL或者Flink DataStream访问Lindorm宽表。

前提条件

  • 通过社区版Flink访问Lindorm宽表时,宽表引擎为2.4.3及以上版本。如果使用阿里云Flink访问,宽表引擎版本无限制。如何查看或升级当前版本,请参见宽表引擎版本说明升级小版本

  • 已将客户端IP地址添加至Lindorm白名单。如何添加,请参见设置白名单

注意事项

  • 如果您想要通过公网访问或您的实例类型为Lindorm单节点,在执行本文操作前,需要先升级SDK并更改配置。具体操作,请参见通过HBase Java API连接并使用宽表引擎章节中的步骤1。

  • 如果应用部署在ECS实例,通过专有网络访问Lindorm实例前,需要确保Lindorm实例和ECS实例满足以下条件,以保证网络的连通性。

    • 所在地域相同,并建议所在可用区相同(以减少网络延时)。

    • ECS实例与Lindorm实例属于同一专有网络。

  • 使用Lindorm宽表作为Flink的维表或者结果表时,创建表的DDL语句需要使用连接地址。通过Flink访问Lindorm宽表使用的是Lindorm宽表引擎的HBase Java API访问地址。如果使用新创建的用户,请确保该用户有访问Flink表的读写权限,赋予权限的具体操作请参见为指定用户赋予权限

  • 如果使用社区版Flink访问Lindorm宽表,仅支持访问HBase like表,也就是说,您通过lindorm-cli创建的SQL表不能作为社区版Flink维表或者结果表,只能通过HBaseue Shell创建HBase like表提供给社区版Flink进行访问。阿里云实时计算Flink无此限制。

  • 如果您使用阿里云实时计算Flink并采用Flink SQL方式访问Lindorm宽表,那么可以直接使用Lindorm Connector。

创建维表

  • 如果您使用社区版Flink访问Lindorm宽表,具体操作请参见创建维表

  • 如果您使用阿里云实时计算Flink访问Lindorm宽表,具体操作请参见创建Lindorm维表

创建结果表

  • 如果您使用社区版Flink访问Lindorm宽表,具体操作请参见创建结果表

  • 如果您使用阿里云实时计算Flink访问Lindorm宽表,具体操作请参见创建Lindorm结果表