处理SLS中的弱结构化日志数据有三种方案。数据加工方案:在SLS控制台创建目标Logstore,通过数据加工任务完成清洗后写入新Logstore,Flink从新Logstore读取结构化数据。缺点是需要创建额外的中间Logstore。Flink方案:将原始字段作为源表字段,在Flink SQL中使用正则函数和JSON函数解析,解析后写入临时表再分析。缺点是需要在Flink中创建临时表,SQL逻辑复杂。SPL方案(推荐):在Flink SLS Connector的query参数中配置SPL语句,数据在SLS服务端完成清洗后直接映射到Flink源表字段。这种方案最轻量,无需创建中间Logstore或临时表,在离数据源最近的位置完成清洗,让Flink专注于业务分析,同时减少网络传输流量。SPL支持正则提取、JSON解析、字段重命名、列裁剪等丰富的清洗能力。
加载中...