日志服务提供灵活便捷的数据加工功能,支持对采集到的日志数据进行清洗过滤、内容脱敏、数据分裂和数据分发。本文档介绍数据加工的原理与能力、限制等信息。
在大数据、流式计算等场景下,往往需要将各类日志处理为结构化的数据,例如对格式混乱的日志进行字段内容提取、格式转化等日志内容规整操作,或需要将日志分发到多个数据处理下游系统进行存储或计算,供不同的业务系统使用。日志服务提供实时的数据加工服务,对日志数据进行清洗过滤、内容脱敏、数据分裂和数据分发。创建数据加工任务之后,日志服务会创建一个消费组用于提取源日志主题中的日志数据,并按照指定的加工规则和指定的 DSL(Domain Specific Language) 加工函数对这些日志数据进行逐条加工处理,完成加工后,将处理后的数据写入指定的日志主题,用于后续的日志统计分析、数据转储等。
数据加工功能提供多个 DSL 内置加工函数,支持多种复杂场景的数据结构化与清洗、脱敏等需求。目前支持的加工语法请参考语法简介。
此外,日志服务提供数据加工的服务日志,用于查看数据加工任务的进度和运行速率等信息。详细说明请参考服务日志。
数据加工功能支持以下多种场景的数据处理能力:
数据加工服务涉及到日志服务的数据加工费用,详细的定价及计费方式请参考日志服务计费项。
限制项 | 说明 | 备注 |
---|---|---|
任务数量 | 每个日志项目中最多可以创建 100 个数据加工任务,每个日志主题最多可以创建 30 个数据加工任务。包括页面展示的所有状态的任务。 说明 已暂停和已完成状态任务占用配额。如果确认不再使用此状态的任务,建议及时清理任务列表,以减少配额占用。详细信息,请参考管理数据加工任务。 | 如需调整配额,请参考申请资源配额。 |
目标日志主题数量 | 在 1 个数据加工任务中,最多可以配置 20 个不同的日志主题,用于存储加工后的数据。 | 如需调整配额,请参考申请资源配额。 |
执行预览 | 数据加工的执行预览功能用于在线调试数据加工的代码,请注意以下限制:
| / |
加工性能 | 加工任务的总体速率计算公式为 | / |
概念 | 说明 |
---|---|
ETL | ETL(Extract, Transform, Load)是指对源端业务系统的数据进行抽取、转换、加载至目标端的过程,从而达到整合、标准、统一数据的目的。日志服务支持加载指定源日志主题中的日志数据,并将数据加工处理后的结果输出到指定的目标日志主题。 |
事件、数据、日志 | 在数据加工功能中,事件、数据都指代日志数据,例如一个事件对应一条日志。保留事件函数 |
源日志主题 | 数据加工中,源日志主题表示待加工的日志存储的位置,日志服务会从中消费数据,并进行数据加工。 |
目标日志主题 | 经过加工后的数据写入的日志主题即目标日志主题。 |
TLS DSL | TLS DSL(Domain Specific Language)是日志服务提供的类 Python 的脚本语言,用于指定数据加工过程中的数据处理逻辑。TLS DSL 提供四十多种函数语法,可支持各种大数据分析与数仓处理场景的数据加工需求。函数列表请参考函数列表。 |
加工规则 | 数据加工的执行脚本,是 TLS DSL 编排的逻辑代码的集合。 |
加工任务 | 数据加工的调度单元,其中定义了源日志主题、目标日志主题、加工规则等多个配置项。 |