SLS简介
日志服务(Log Service,简称SLS)是云原生观测与分析平台,为Log、Metric、Trace等数据提供大规模、低成本、实时的平台化服务。日志服务一站式提供数据采集、加工、查询与分析、可视化、告警、消费与投递等功能,全面提升您在研发、运维、运营、安全等场景的数字化能力。
数据加工服务是阿里云SLS推出的面向日志ETL处理的服务,主要解决数据加工过程中转换、过滤、分发、富化等场景。数据加工DSL是专门为日志实时行处理定制的一套语言,目前支持200+的行处理函数。随着用户在 SLS 存储的数据越来越多,除了最常见的运维等场景,如何进一步挖掘数据的价值,就成为了下一步的重要目标,这里来通过一个实例说明数据加工DSL中的e_tablestore_map函数如何对电商平台的行为日志进行数据富化。
场景应用
网络时代中电商平台在企业和商家的品牌推广、商品和服务销售等环节发挥着日益重要的作用。但随着国内互联网行业人口红利的逐渐消失,电商平台间竞赛逐渐进入了下半场。运营模式和发展战略正不断向精细化、增转存方向转变。因此,对平台用户的行为进行分析,跟进用户的产品需求,依此来优化产品的推广销售,是一项重要环节。
由于平台用户的行为日志数据量大,且需要实时分析,刚好SLS可以满足这个特点,所以可将用户行为日志存储在Logstore中;而电商平台的商品信息内容比较固定,不会频繁更新,且数据量不会太大,则可以存放在数据表Tablestore中。SLS通过对用户的行为日志进行加工富化,可以实时的分析用户行为、检测系统异常等。
实践案例
Logstore数据导入
这里导入的数据参考阿里巴巴提供的一个淘宝用户行为数据集,日志字段包含用户ID、商品ID、商品类目ID、行为类型(行为包括点击、购买、加购、喜欢)和时间戳,如下:
Tablestore数据
数据表Tablestore中存储平台的商品信息,包含字段:商品ID(ItemID)、商品名称(ProductName)、商品价格(Price)、商品品牌(Brand),实例名为"d00s0dxal11b",表名为"sale_table",如下:
数据加工
使用数据加工的e_tablestore_map函数,通过Logstore日志中的商品ID(ItemID)在商品数据表(sale_table)中查找每个商品ID对应的商品及其价格,如下:
e_tablestore_map(
["ItemID"],
"https://d00s0dxal11b.cn-hangzhou.tablestore.aliyuncs.com",
"access-key-id",
"access-key-secret",
"d00s0dxal11b",
"sale_table", output_fields=["ProductName","Price"])
加工结果
经过数据加工处理后,结果Logstore中的日志包含原始日志中的用户行为字段和及对应的商品及价格,如下:
其他参考
1、淘宝用户购物行为数据集:https://tianchi.aliyun.com/dataset/649
2、数据加工文档:https://help.aliyun.com/document_detail/125384.html
3、e_tablestore_map函数使用指南:https://help.aliyun.com/document_detail/125489.htm?#section-yn2-qsj-afl