基于日志服务(SLS)实现电商数据加工与分析

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,内容安全 1000 次 1年
日志服务 SLS,月写入数据量 50GB 1个月
简介: 基于日志服务(SLS)实现电商数据加工与分析 本文要点(json函数、ip映射函数专题) 如何使用阿里云日志服务-数据加工做清洗数据 如何使用阿里云日志服务强大的SQL做数据分析 如何配置数据仪表大盘 日志数据样例 本文中的日志数据,以某大型电商一段时间的成交量数据为背景来展开工作的。

基于日志服务(SLS)实现电商数据加工与分析

本文要点(json函数、ip映射函数专题)

  • 如何使用阿里云日志服务-数据加工做清洗数据
  • 如何使用阿里云日志服务强大的SQL做数据分析
  • 如何配置数据仪表大盘

日志数据样例

本文中的日志数据,以某大型电商一段时间的成交量数据为背景来展开工作的。具体日志数据如下:
image.png
首先,从日志中可以看出每个用户购买的商品名称、商品价格、商品描述、商品分类以及用户的ip地址。此外,为了客户隐私本文中的隐去用户id。

需求

  1. 根据ip地址解析出用户的地理位置(省市国家信息);
  2. 然后依据每个用户IP解析的位置信息,分析每个省市各类产品之间的销售额,并制定相应的营销战略。

使用数据加工进行数据清洗

加工流程

image.png

加工操作

1、点击搜索框右上第一个按钮“数据加工”进入加工页面
image.png
2、其次点击预览数据,做一些提前的配置
image.png
3、第一次点击的预览界面如下,其中在高级配置ak_id, ak_key主要是为了使用数据加工解析ip函数使用的(使用这种方式主要是安全,如果数据加工语法中没有使用到AK则可以不配置)具体AccessKeyId,AccessKey相关信息请参考访问秘钥配置子账号授权
image.png
4、接下来我们开始使用数据加工

e_set("geo",geo_parse(v("ip"), ip_db=res_oss_file(endpoint='http://oss-cn-hangzhou.aliyuncs.com',
                                                 ak_id=res_local("ak_id"),
                                                 ak_key=res_local("ak_key"),
                                                 bucket='log-etl-staging', file='ipipfree.ipdb',
                                                               format='binary')))
e_json("geo", depth=2)
e_drop_fields("geo")
e_if(e_search("province==中国"),e_drop())

语法详解

  • 首先需要在OSS上存一份IP解析库文件(文中使用的是ipipfree库)
  • 然后使用res_oss_file函数从OSS上拉取存入内存中
  • 在使用geo_parse函数对ip字段进行处理,解析出省市国家信息。此函数返回的是一个json数据

此时,点击下预览效果如下:
image.png

  • 使用e_json把geo字段的json数据展开,并且使用e_drop函数删除geo字段信息

从上图中可以看出解析出来的有脏数据即"province: 中国"这种日志信息,我在这里的处理是使用e_if,e_search和e_drop配合使用删除这些脏数据。
image.png
如上图所示,目前的数据基本上都是正常数据。接下来是对加工的数据进行加工配置,以下图中的右侧图示表示将加工的数据分发到一个shop的logstore中。
image.png

数据加工诊断

image.png
点击上图中提示按钮,可进入数据加工任务详情页面,在这里可以看加工出错日志、加工消费记录等重要信息。具体如下图:
1.png
保存数据加工之后,可能在自己目标的logstore中不能及时看到加工后的数据,是因为使用数据加工会有一个延时速率,具体信息参考数据加工仪表盘,创建告警参考状态监控与告警

使用日志服务SQL语句进行数据分析

以下图是通过sql查询所展示数据仪表大盘:
image.png

SQL分析

注意:在使用sql分析的时候,对应的字段需要提前建立好索引。在shop这个logstore中,我们需要提前建立好category, city, country, province, good_price这些字段的索引(good_price建立索引的时候选择double类型,其他的都为text类型就可以)。
做分析的时候,首先我们需要知道我们需要统计什么信息,对比什么信息,得出什么样的结论等等。在这里我们的需求有以下即方面:
1、统计各个省之间的各个品类的销售额
2、统计单个品类各省之间的销售额
3、统计单个省下各个市之间的销售额
4、对全国销售额进行地图可视化

统计各省之间的各个品类的销售额

我们可以这样写SQL语句进行分析:* | SELECT province, category, sum(good_price) as totalCount GROUP BY province,category
这条语句表示的是选出每个省的每个品类的总价。
下图表示的是在查询框里输入以上sql分析语句之后进入统计图表,然后点击流图进行配置,province为X轴,totalCount为Y轴,category为聚合列。
image.png
通过上图分析可知总体情况,数码产品品类的销售额占所有销售品类的主要部分,其次是化妆品,最后是图书。
此外,通过词云统计,可以统计出山东,广东等省是销售额占比大省。词云具体配置为:
image.png

统计单个品类各省之间的销售额

以下以数码产品为例:

* | SELECT province, category, sum(good_price) as totalCount WHERE category='数码产品' GROUP BY province,category

image.png
由上图分析可知山东,广东省是数码产品消费大省,后续可以加大促销力度。

统计单个省下各个市之间的销售额

以下示例以浙江省为示例:

* | SELECT province, category,city, sum(good_price) as totalCount WHERE province='浙江' AND city!='null' GROUP BY province,category,city

image.png
从上图中可以分析出浙江省各个市之间的各个品类的销售额。

数据仪表大盘

点击以下图中的“添加到仪表盘”按钮
image.png

会跳出以下界面
image.png
配置完成之后,点击以下图中示意标记进入仪表大盘中心
image.png
其中的右上角的编辑,可以调整各个图的大小以及位置等

相关实践学习
通过日志服务实现云资源OSS的安全审计
本实验介绍如何通过日志服务实现云资源OSS的安全审计。
目录
相关文章
|
18天前
|
SQL 人工智能 监控
SLS Copilot 实践:基于 SLS 灵活构建 LLM 应用的数据基础设施
本文将分享我们在构建 SLS SQL Copilot 过程中的工程实践,展示如何基于阿里云 SLS 打造一套完整的 LLM 应用数据基础设施。
352 43
|
24天前
|
数据采集 运维 监控
不重启、不重写、不停机:SLS 软删除如何实现真正的“无感数据急救”?
SLS 全新推出的「软删除」功能,以接近索引查询的性能,解决了数据应急删除与脏数据治理的痛点。2 分钟掌握这一数据管理神器。
133 18
|
2月前
|
存储 缓存 Apache
StarRocks+Paimon 落地阿里日志采集:万亿级实时数据秒级查询
A+流量分析平台是阿里集团统一的全域流量数据分析平台,致力于通过埋点、采集、计算构建流量数据闭环,助力业务提升流量转化。面对万亿级日志数据带来的写入与查询挑战,平台采用Flink+Paimon+StarRocks技术方案,实现高吞吐写入与秒级查询,优化存储成本与扩展性,提升日志分析效率。
325 1
|
1月前
|
监控 安全 搜索推荐
使用EventLog Analyzer进行日志取证分析
EventLog Analyzer助力企业通过集中采集、归档与分析系统日志及syslog,快速构建“数字犯罪现场”,精准追溯安全事件根源。其强大搜索功能可秒级定位入侵时间、人员与路径,生成合规与取证报表,确保日志安全防篡改,大幅提升调查效率,为执法提供有力证据支持。
|
2月前
|
存储 关系型数据库 数据库
【赵渝强老师】PostgreSQL数据库的WAL日志与数据写入的过程
PostgreSQL中的WAL(预写日志)是保证数据完整性的关键技术。在数据修改前,系统会先将日志写入WAL,确保宕机时可通过日志恢复数据。它减少了磁盘I/O,提升了性能,并支持手动切换日志文件。WAL文件默认存储在pg_wal目录下,采用16进制命名规则。此外,PostgreSQL提供pg_waldump工具解析日志内容。
198 0
|
2月前
|
数据采集 运维 监控
|
5月前
|
监控 容灾 算法
阿里云 SLS 多云日志接入最佳实践:链路、成本与高可用性优化
本文探讨了如何高效、经济且可靠地将海外应用与基础设施日志统一采集至阿里云日志服务(SLS),解决全球化业务扩展中的关键挑战。重点介绍了高性能日志采集Agent(iLogtail/LoongCollector)在海外场景的应用,推荐使用LoongCollector以获得更优的稳定性和网络容错能力。同时分析了多种网络接入方案,包括公网直连、全球加速优化、阿里云内网及专线/CEN/VPN接入等,并提供了成本优化策略和多目标发送配置指导,帮助企业构建稳定、低成本、高可用的全球日志系统。
658 54
|
11月前
|
XML 安全 Java
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
本文介绍了Java日志框架的基本概念和使用方法,重点讨论了SLF4J、Log4j、Logback和Log4j2之间的关系及其性能对比。SLF4J作为一个日志抽象层,允许开发者使用统一的日志接口,而Log4j、Logback和Log4j2则是具体的日志实现框架。Log4j2在性能上优于Logback,推荐在新项目中使用。文章还详细说明了如何在Spring Boot项目中配置Log4j2和Logback,以及如何使用Lombok简化日志记录。最后,提供了一些日志配置的最佳实践,包括滚动日志、统一日志格式和提高日志性能的方法。
3078 31
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
|
10月前
|
监控 安全 Apache
什么是Apache日志?为什么Apache日志分析很重要?
Apache是全球广泛使用的Web服务器软件,支持超过30%的活跃网站。它通过接收和处理HTTP请求,与后端服务器通信,返回响应并记录日志,确保网页请求的快速准确处理。Apache日志分为访问日志和错误日志,对提升用户体验、保障安全及优化性能至关重要。EventLog Analyzer等工具可有效管理和分析这些日志,增强Web服务的安全性和可靠性。
274 9

热门文章

最新文章

下一篇
oss教程