本文介绍如何使用Loghub数据源进行数据分析或者交互式开发。
建表语法
CREATE TABLE tbName(columnName dataType [,columnName dataType]*)
USING loghub
OPTIONS(propertyName=propertyValue[,propertyName=propertyValue]*);
Table Schema
创建Loghub表时,必须显式地定义表的字段信息。自定义Schema字段名称要和SLS日志中key的名称相同。
CREATE TABLE loghub_table_test(content string)
USING loghub
OPTIONS(
endpoint="sls.aliyuncs.com",
access.key.id="yHiu*******BG2s",
access.key.secret="ABctuw0M***************iKKljZy",
sls.project="test",
sls.store="myInstance");
DESC loghub_table_test;
content string NULL
Time taken: 0.436 seconds, Fetched 1 row(s)
不带Schema时如下。
CREATE TABLE loghub_table_test
USING loghub
OPTIONS
(...)
DESC loghub_table_test;
__logProject__ string NULL
__logStore__ string NULL
__shard__ string NULL
__time__ string NULL
__topic__ string NULL
__source__ string NULL
__value__ string NULL
__sequence_number__ string NULL
Time taken: 0.436 seconds, Fetched 1 row(s)
配置参数说明
参数 | 描述 | 是否必选 |
---|---|---|
endpoint | LogService API Endpoint。 | 是 |
access.key.id | 您阿里云账号的AccessKey ID。 | 是 |
access.key.secret | 您阿里云账号的AccessKey Secret。 | 是 |
sls.store | LogService项目名。 | 是 |
sls.project | LogStore名。 | 是 |
对于EMR SDK 2.0.0以及以上版本,Loghub Schema为可选项,参数说明如下。
参数 | 类型 | 描述 |
---|---|---|
__logProject__ | String | LogStore名。 |
__logStore__ | String | LogService项目名。 |
__shard__ | String | Logstore的Shard。 |
__time__ | String | 该记录日志时间。 |
__topic__ | String | 日志主题。 |
__source__ | String | 日志服务的来源IP。 |
__value__ | String | 日志服务的内容。JSON格式。 |
__sequence_number__ | String | 记录序列号(通过appendSequenceNumber='true' 开启该字段,默认为NULL)。
|