E-MapReduce 交互式分析Hologres源表

By | 2021年4月23日

本文为您介绍交互式分析Hologres源表DDL定义、WITH参数、代码示例和类型映射。

什么是交互式分析Hologres

交互式分析Hologres兼容PostgreSQL协议,与大数据生态紧密连接,支持高并发、低延时实时分析处理PB级数据,让您轻松使用现有BI(Business Intelligence)工具对数据进行多维分析和业务探索。

DDL定义

create table hologres_source(
  name varchar,
  age BIGINT,
  birthday BIGINT
) with (
  'connector'='hologres',
  'dbname'='<yourDbname>',
  'tablename'='<yourTablename>',
  'username'='<yourAccessID>',
  'password'='<yourAccessSecret>',
  'endpoint'='<yourEndpoint>',
  'field_delimiter'='|' --该参数可选。
);
说明

  • Flink不支持源表中定义计算列。
  • Flink以批模式读取Hologres源表数据,即只扫描一次Hologres全表,扫描结束,消费结束,新到Hologres源表的数据不会被读取。

WITH参数

参数 说明 是否必填 备注
connector 源表类型 固定值为hologres
dbname 数据库名称
tablename 表名称
username 用户名,请填写阿里云账号的AccessKey ID。
password 密码,请填写阿里云账号的AccessKey Secret。
endpoint Hologres端点 详情请参见访问域名
field_delimiter 导出数据时,不同行之间使用的分隔符。

说明 只有在
bulkread = true时有效。

默认值为"\u0002"

代码示例

CREATE TEMPORARY TABLE hologres_source (
  name varchar, 
  age BIGINT,
  birthday BIGINT
) with (
  'connector'='hologres',
  'dbname'='<yourDbname>',
  'tablename'='<yourTablename>',
  'username'='<yourAccessID>',
  'password'='<yourAccessSecret>',
  'endpoint'='<yourEndpoint>',
  'field_delimiter'='|' --该参数可选。
);

CREATE TEMPORARY TABLE blackhole_sink(
  name varchar,
  age BIGINT,
  birthday BIGINT 
) with (
  'connector'='blackhole'
);

INSERT INTO blackhole_sink
SELECT 
   name, age, birthday
from hologres_source;

类型映射

交互式分析Hologres和Flink字段类型对应关系如下,建议使用该对应关系进行DDL声明。

Hologres字段类型 Flink字段类型
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

请关注公众号获取更多资料

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注