零售交易信息处理思路

简介: 零售行业的交易信息呈现无序杂乱,再加上数据采集难度大,业务人员繁琐,拉通不齐等问题,处理起来会相对费时,这里是我整理的一部分思路,可能有不全的地方,也欢迎大佬指正。

关于金额

金额可以说是交易信息中的重中之重,而交易信息的来源渠道又大致可以分为三类,一类是互联网,包括但不仅限于淘宝,京东,自建小程序,团购等;一类是大型商超,比如家乐福,盒马等;最后一类则是线下数据,可能是来自业务人员手工记录的小门店数据,也可能是文本信息扫描后解析出来的数据。

互联网金额数据

针对来自互联网的金额数据,应该要先拆解对接的关系型数据库中的表逻辑,然后在根据自己的模型拿取对应的字段,但是需要注意,ods的数据理论上会在dwd过滤,然后再在dws关联维表,但实际上,因为互联网数据的来源也不同,无法在dws再进行关联。

所以针对这一部分数据,我们需要注意的是关联,确保关联的时候不会造成发散,比如子表有物流状态,模型不需要该状态,就需要在开窗或者分组聚合的时候确保不因为一个状态导致整条数据异常;还需要确保的是关联的逻辑是否真的正确,跟着需求文档走的同时,需要自己明确关联出来的数据大致样子,避免出现无意义的join。

线下数据

这一部分的数据质量最糟糕,不过对于他的需求也基本最简单,不会是非黑即白,基本上只要结果和预期相同,就不会有太大的问题,但是需要留意的是清理脏数据的时候,需要跟需求明确具体的清洗规则,面对商品金额里面放的某个汉字的数据是直接过滤还是单元格置空。

商超数据

商超的数据不会像互联网那么复杂,也不会像线下数据那么凌乱,却也兼备了二者所有的缺点,他需要在没有逻辑中找到合适的逻辑,可能面对关联键的缺失,比如商超退货的时候,退货单号可能就不存在,再比如溢价出售导致优惠金额是负数。

面对这种数据,需要结合互联网数据和线下数据,先摸清楚主要字段的情况,然后找需求以及对接开始拉通,同时在开发的时候尤其要着重确定数据的异常是否是真的异常,避免自己将正确的数据卡掉。

关于用户

交易的用户这一块其实也可能分为两类,一个订单号对应两个用户,以及订单的用户没有出现在用户信息中。

用户的不同

用户重复可能是因为领取优惠券的用户和使用优惠券的用户不是一个用户,面对这个情况需要先确定量级以及金额数,反馈给需求,确定后续调整方案,看是否将二者的用户选择一个,或者是将二者同时保存;当然也可能是因为线下数据等导致脏数据,这里需要让人拉通,选取较为正确的用户id。

用户的缺失

首先看调度,毕竟当你查了一圈,发现订单ods的调度比用户ods的调度要晚一个小时的时候,会是怎么样的心情,你不会想体验。

然后需要跟用户的开发确定用户的逻辑,最好将不同用户的来源拆分开,逐个排查,最好根据分区日期以及创建日期和修改日期来确定具体出现问题的日期,看一下是否是有数据源进行了调整,部分表全量推数,而部分没有。

关于商品

商品这一块只要重点放在商品id的确定以及商品名称的清洗,商品id这一块的重点不会在开发这边,商品名称的清洗会落在开发这边,先是剔除脏乱数据,比如*等无意义字符,然后是各种花里胡哨的标注,这里有人会问为什么不关联商品维表,对不起,不是每一个来源数据都有商品维表的。

关于状态和方式

订单状态,支付状态,维权状态,物流状态;我愿意称为四大流氓,五花八门的定义,在dwd用枚举值统一这四大流氓,请先老老实实将他们的枚举值转换为汉字,然后交给需求,再统一具体的逻辑,这个时候在最外面套个case when,比在里面纠结每个枚举值应该转化成什么,要方便很多。

至于说方式,比起状态来说,支付方式,配送方式,优惠方式...这些和状态是一个道理,只是他们可能无法用枚举值来替代,因为他们的方式的太多了,就单独说支付方式,从基本的现金,到支付宝,微信,银行卡,还有各种组合支付,维表是不错的选择。


目录
相关文章
|
SQL 机器学习/深度学习 人工智能
星熠案例:基于“隐语”多方安全分析的智能化理赔
星熠案例:基于“隐语”多方安全分析的智能化理赔
232 0
星熠案例:基于“隐语”多方安全分析的智能化理赔
|
Java 关系型数据库 MySQL
基于Java实现农产品交易平台的设计与实现_kaic
【摘要】农业是我国国民经济的重要组成部分,随着信息化的普及,4G网络、光纤以及5G网络也日益完善,农业信息化的发展成为了必然。同时,由于本年疫情原因,导致农作物积压销售,甚至腐烂造成不必要的浪费,为了减少类似情况的发生,是设计和开发本系统的目的和意义。 交易平台将以Java语言作为主要语言进行开发,将JSP作为交易平台的前台设计技术,将B/S架构作为交易平台的逻辑架构,使用Eclipse工具作为Java语言的编写工具,通过使用MySQL及Navicat开发和管理本平台的数据库。
|
人工智能 监控 安全
数智洞察 | 安全运输危险品,“红黄蓝三色码”背后的新管理思路
编者按: 过去10年,中国公路货运行业在市场规模迅速扩张的同时,安全风险也居高不下,成为困扰行业性发展的痛点。比起处理事故本身,如何预防类似事件的发生,是一个值得探讨的话题。
301 0
|
机器人 区块链
量化(合约)交易机器人系统开发实现技术案例及源码丨合约(量化)交易机器人系统开发(运营版)
 合约交易系统是一种数字资产衍生产品。用户可以通过判断涨跌,选择买入做多或卖出做空合约来获取数字资产价格上涨/下降的收益。合约交易系统使用差价交割的模式,合约到期时,所有未平仓的仓位,按照指数价格最后一段时间的算术平均价进行平仓,而不是进行实物交割。
个人号码资产化趋势背后 通信安全的商业价值几何?
个人号码资产化趋势背后 通信安全的商业价值几何?
个人号码资产化趋势背后 通信安全的商业价值几何?
|
SQL 自然语言处理 分布式计算
境外银行数据治理——思路分享
前言:在数据治理领域的文章大多都是从业务角度进行切入,本文从纯技术角度切入,介绍了数据血缘关系的图分析思路、领域建模层面构建中间层的思路。以及纯粹从词法分析和语法分析的统计学层面维度。
432 0
境外银行数据治理——思路分享
|
算法 机器学习/深度学习 数据处理
【玩转数据系列三】利用图算法实现金融行业风控
本文将针对阿里云平台上图算法模块来进行实验。图算法一般被用来解决关系网状的业务场景。与常规的结构化数据不同,图算法需要把数据整理成首尾相连的关系图谱。图算法更多的是考虑边和点的概念。阿里云机器学习平台上提供了丰富的图算法组件,包括K-Core、最大联通子图、标签传播聚类等。
13360 1
|
存储 供应链 安全
区块链研究报告:应用场景已涉及供应链金融、贸易金融、跨境支付等
区块链技术在金融领域的应用探索日渐增多,如支付及清结算、贸易金融、证券交易等金融场景的应用,部分应用项目已开始从概念验证迈向生产实践。
常熟银行如何用数字化模式“贴身”服务30万小微客户
利用先进的技术,解决过去最难的问题。
4141 0
下一篇
无影云桌面