MRS OpenTSDB输出流
功能描述
DLI将Flink作业的输出数据输出到MRS的OpenTSDB中。
前提条件
语法格式
1 2 3 4 5 6 7 8 9 10 |
CREATE SINK STREAM stream_id (attr_name attr_type (',' attr_name attr_type)* )
WITH (
type = "opentsdb",
region = "",
tsdb_metrics = "",
tsdb_timestamps = "",
tsdb_values = "",
tsdb_tags = "",
batch_insert_data_num = ""
)
|
关键字
参数 |
是否必选 |
说明 |
---|---|---|
type |
是 |
输出通道类型,“opentsdb”表示输出到MRS的OpenTSDB。 |
region |
是 |
MRS服务所在区域。 |
tsdb_link_address |
是 |
MRS中OpenTSDB实例的服务地址,格式为http://ip:port或者https://ip:port。
说明:
配置项tsd.https.enabled为true时,需要使用https,注意https暂时不支持证书认证。 |
tsdb_metrics |
是 |
数据点的metric,支持参数化。 |
tsdb_timestamps |
是 |
数据点的timestamp,数据类型支持LONG、INT、SHORT和STRING,仅支持指定动态列。 |
tsdb_values |
是 |
数据点的value,数据类型支持SHORT、INT、LONG、FLOAT、DOUBLE和STRING,支持指定动态列或者常数值。 |
tsdb_tags |
是 |
数据点的tags,每个tags里面至少一个标签值,最多8个标签值,支持参数化。 |
batch_insert_data_num |
否 |
表示一次性批量写入的数据量(即数据条数),值必须为正整数,上限为65536,默认值为8。 |
注意事项
当配置项支持参数化时,表示将记录中的一列或者多列作为该配置项的一部分。例如当配置项设置为car_${car_brand}时,如果一条记录的car_brand列值为BMW,则该配置项在该条记录下为car_BMW。
示例
将流weather_out的数据输出到MRS服务的OpenTSDB中。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
CREATE SINK STREAM weather_out (
timestamp_value LONG, /* 时间 */
temperature FLOAT, /* 温度值 */
humidity FLOAT, /* 湿度值 */
location STRING /* 地点 */
)
WITH (
type = "opentsdb",
region = "xxx",
tsdb_link_address = "https://x.x.x.x:4242",
tsdb_metrics = "weather",
tsdb_timestamps = "${timestamp_value}",
tsdb_values = "${temperature}; ${humidity}",
tsdb_tags = "location:${location},signify:temperature; location:${location},signify:humidity",
batch_insert_data_num = "10"
);
|