SQL数据分析实例及优化-记一次中台数据迁移

本文详述了一次在企业业务中台建设后,利用MySQL进行数据迁移和分析的过程。面对几千万级别的数据,通过SQL查询语句,如分组查询、窗口函数等解决了一次性分析任务。同时,介绍了如何通过索引优化、EXPLAIN分析、内存调整等手段提升查询速度,以及在处理NULL和内存占用方面应注意的细节,确保在30秒内完成可接受的分析速度。
摘要由CSDN通过智能技术生成

背景

企业内多个C端系统造成了一些业务流程不统一、客户体验不一致,于是建设了业务中台来解决相关问题,建成后需要迁移多个系统的数据到业务中台,就涉及到了很多合并问题,业务上提了很多分析统计任务用于辅助决策合并规则。
这些统计分析工作基本都是一次性工作,这次用以后不会周期性执行。数据量在几千万级别,加上时间紧,技术侧考虑低投入来解决这些问题,所以并没有引入一些大数据例如MPP、spark等工具,加上数据量不大(单表最大三千万),所以仅仅依托mysql数据库来完成工作。

常用语句示例

分组查询统计

假定vehicle表,包含user_id和车架vin码
user表包含user_id和mobile

查一车被多人绑定

select vin,count(user_id) as '用户数量',from vehicle
group by vin having count(user_id) >=2;

这个语句查到了数量,如果还想把具体是哪些ID也列出来在一行,可以用下面语句:

select vin,count(user_id) as '用户数量',group_concat(user_id) as '用户列表' from vehicle
group by vin having count(user_id) >=2;

假定相同mobile的不同user_id为一个人,再分析

select vin,</
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

day walker

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值