基于SLS与表格存储对电商平台用户行为日志进行加工富化

本文涉及的产品
表格存储 Tablestore,50G 2个月
日志服务 SLS,月写入数据量 50GB 1个月
简介: 网络时代中电商平台在企业和商家的品牌推广、商品和服务销售等环节发挥着日益重要的作用。但随着国内互联网行业人口红利的逐渐消失,电商平台间竞赛逐渐进入了下半场。运营模式和发展战略正不断向精细化、增转存方向转变。

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中存储平台的商品信息,包含字段:商品IDItemID、商品名称(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


相关实践学习
消息队列+Serverless+Tablestore:实现高弹性的电商订单系统
基于消息队列以及函数计算,快速部署一个高弹性的商品订单系统,能够应对抢购场景下的高并发情况。
阿里云表格存储使用教程
表格存储(Table Store)是构建在阿里云飞天分布式系统之上的分布式NoSQL数据存储服务,根据99.99%的高可用以及11个9的数据可靠性的标准设计。表格存储通过数据分片和负载均衡技术,实现数据规模与访问并发上的无缝扩展,提供海量结构化数据的存储和实时访问。 产品详情:https://www.aliyun.com/product/ots
目录
相关文章
|
19天前
|
XML 安全 Java
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
本文介绍了Java日志框架的基本概念和使用方法,重点讨论了SLF4J、Log4j、Logback和Log4j2之间的关系及其性能对比。SLF4J作为一个日志抽象层,允许开发者使用统一的日志接口,而Log4j、Logback和Log4j2则是具体的日志实现框架。Log4j2在性能上优于Logback,推荐在新项目中使用。文章还详细说明了如何在Spring Boot项目中配置Log4j2和Logback,以及如何使用Lombok简化日志记录。最后,提供了一些日志配置的最佳实践,包括滚动日志、统一日志格式和提高日志性能的方法。
156 30
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
|
1月前
|
XML JSON Java
Logback 与 log4j2 性能对比:谁才是日志框架的性能王者?
【10月更文挑战第5天】在Java开发中,日志框架是不可或缺的工具,它们帮助我们记录系统运行时的信息、警告和错误,对于开发人员来说至关重要。在众多日志框架中,Logback和log4j2以其卓越的性能和丰富的功能脱颖而出,成为开发者们的首选。本文将深入探讨Logback与log4j2在性能方面的对比,通过详细的分析和实例,帮助大家理解两者之间的性能差异,以便在实际项目中做出更明智的选择。
244 3
|
3月前
|
Kubernetes Ubuntu Windows
【Azure K8S | AKS】分享从AKS集群的Node中查看日志的方法(/var/log)
【Azure K8S | AKS】分享从AKS集群的Node中查看日志的方法(/var/log)
136 3
|
1月前
|
存储 缓存 关系型数据库
MySQL事务日志-Redo Log工作原理分析
事务的隔离性和原子性分别通过锁和事务日志实现,而持久性则依赖于事务日志中的`Redo Log`。在MySQL中,`Redo Log`确保已提交事务的数据能持久保存,即使系统崩溃也能通过重做日志恢复数据。其工作原理是记录数据在内存中的更改,待事务提交时写入磁盘。此外,`Redo Log`采用简单的物理日志格式和高效的顺序IO,确保快速提交。通过不同的落盘策略,可在性能和安全性之间做出权衡。
1645 14
|
1月前
|
Python
log日志学习
【10月更文挑战第9天】 python处理log打印模块log的使用和介绍
35 0
|
1月前
|
数据可视化
Tensorboard可视化学习笔记(一):如何可视化通过网页查看log日志
关于如何使用TensorBoard进行数据可视化的教程,包括TensorBoard的安装、配置环境变量、将数据写入TensorBoard、启动TensorBoard以及如何通过网页查看日志文件。
213 0
|
1月前
|
存储 分布式计算 NoSQL
大数据-136 - ClickHouse 集群 表引擎详解1 - 日志、Log、Memory、Merge
大数据-136 - ClickHouse 集群 表引擎详解1 - 日志、Log、Memory、Merge
42 0
|
1月前
|
缓存 Linux 编译器
【C++】CentOS环境搭建-安装log4cplus日志组件包及报错解决方案
通过上述步骤,您应该能够在CentOS环境中成功安装并使用log4cplus日志组件。面对任何安装或使用过程中出现的问题,仔细检查错误信息,对照提供的解决方案进行调整,通常都能找到合适的解决之道。log4cplus的强大功能将为您的项目提供灵活、高效的日志管理方案,助力软件开发与维护。
59 0
|
2月前
|
Java
日志框架log4j打印异常堆栈信息携带traceId,方便接口异常排查
日常项目运行日志,异常栈打印是不带traceId,导致排查问题查找异常栈很麻烦。
|
2月前
|
存储 监控 数据可视化
SLS 虽然不是直接使用 OSS 作为底层存储,但它凭借自身独特的存储架构和功能,为用户提供了一种专业、高效的日志服务解决方案。
【9月更文挑战第2天】SLS 虽然不是直接使用 OSS 作为底层存储,但它凭借自身独特的存储架构和功能,为用户提供了一种专业、高效的日志服务解决方案。
159 9
下一篇
无影云桌面