Blink SQL之创建交互式分析Hologres源表

创建交互式分析Hologres源表

使用限制

适用于Blink 3.6.0及以上版本。

注意事项

  • 在流数据和批数据处理中都可以使用Hologres源表。
  • Hologres源表支持Projection Pushdown操作,您可以只读取需要的列。
  • Hologres源表使用快照语句高速读取当前数据,读取完后结束作业。如果出现读取数据失败,将重新执行读取操作。
  • 并发的Blink作业都可以读取一个或多个Hologres Shard,建议您配置的Blink并发数小于等于Hologres的Shard数。
  • 实时消费Hologres源表的数据需要开启Binlog。

DDL定义

create table mysource(
  name varchar,
  age BIGINT,
  birthday BIGINT
) with (
  type='hologres',
  dbname='...',
  tablename='...',
  username='...',
  password='...',
  endpoint='...',
  field_delimiter='...' --该参数可选。
);

WITH参数

参数 说明 是否必填 备注
type 源表类型 固定值为hologres。
dbname 数据库名称
tablename 表名称
如果Schema不为Public时,则tableName需要填写为schema.tableName。
username 用户名,请填写阿里云账号的AccessKey ID。
password 密码,请填写阿里云账号的AccessKey Secret。
endpoint Hologres端点 详情请参见访问域名
field_delimiter 导出数据时,不同行之间使用的分隔符。
不能在数据中插入分隔符。
默认值为"\u0002"。
bulkread 是否全量读取列存表数据。 取值如下:
true:全量读取列存表数据。
false(默认值):不全量读取列存表数据。

类型映射

Hologres BLINK
INT INT
INT[] ARRAY
BIGINT BIGINT
BIGINT[] ARRAY
REAL FLOAT
REAL[] ARRAY
DOUBLE PRECISION DOUBLE
DOUBLE PRECISION[] ARRAY
BOOLEAN BOOLEAN
BOOLEAN[] ARRAY
TEXT VARCHAR
TEXT[] ARRAY
NUMERIC DECIMAL
DATE DATE
TIMESTAMP WITH TIMEZONE TIMESTAMP

代码示例

create table mysource(
  name varchar,
  age BIGINT,
  birthday BIGINT
) with (
  type='hologres',
  dbname='...',
  tablename='...',
  username='...',
  password='...',
  endpoint='...',
  field_delimiter='...' --该参数可选。
);


create table print_output(
 a varchar,
 b BIGINT,
 c BIGINT 
) with (
  type='print'
);


INSERT INTO print_output
SELECT 
  a, b, c
from mysource;
上一篇:.net微信公众号开发——消息与事件


下一篇:Scala递归编程练习