分享

京东用大数据的方法解决【物流】建配送站的问题

本帖最后由 levycui 于 2016-11-15 17:05 编辑
问题导读:
1、大数据如何转化为智慧系统?
2、如何理解京东大数据平台架构?
3、如何构建智慧物流系统?




2015年,在国务院提出“互联网+”行动战略之后,以“互联网+物流”的智慧物流概念也被不断提及,但是,由于物流系统本身的复杂性和业务差异性,究竟如何打造智慧物流系统,鲜有落地的方案。

很多人对京东物流的高效印象深刻,用户体验受到广大用户的认可,但是,在这些体验背后隐藏着高昂的运营成本。青龙系统作为支撑京东物流的核心系统,在这个过程中,也逐渐为外界瞩目,日处理数百万订单,大促销期间上千万单,数十万操作人员在这个物流网络中服务,智慧化物流系统成为迫切需求。

青龙系统从2012年研发版本1.0,到目前的6.0的演进过程中,我们也逐步认识到,以大数据处理为核心是构建智慧物流的关键。

“大数据”的经典定义是可以归纳为4个V:海量的数据规模(volume)、快速的数据流转和动态的数据体系(velocity)、多样的数据类型(variety)和巨大的数据价值(value)。从青龙系统看,每天处理亿级数据,具有海量信息的数据规模;支持快速的数据流转,实现了物流各个节点实时数据监控优化;系统处理各种各样的信息,包含了结构化和非结构化数据;数据具有极大的价值,推动系统成本和效率优化1%,可以节约上亿成本,具有了显著的大数据特征。

如何从大数据到智慧系统


我们在实战中认识到,把大数据转化为智慧系统,需要具备两个基础:

首先是业务数据化,并且具有数据质量保障。京东物流在青龙系统的支撑下,实现了所有物流操作的线上化,也就是数据化,并且,对每个操作环节都是可以进行实时分析,这就奠定了很好的基础。如果业务都是线下操作,或者系统无法准确及时收集数据,那么,即时数据量够大,缺乏关键数据和数据不准确,也会给大数据处理带来很大的困难。

第二基础就是大数据处理技术,包括收集,传输,存储,计算,展示等一系列技术。青龙系统在数据处理技术上也踩过很多坑,最早我们用数据库生产库做一些数据的分析,发现很快性能就不行了,因为数据分析SQL一执行,生产库性能急剧下降,然后开始利用读库,并结合MQ,也就是操作数据库的时候,会发出一个MQ,数据分析处理系统接收MQ重新解析,但是,也不能很好解决问题。后面,我们总结发现一点,作为传统的技术人员,我们是试图用OLTP的方法来解决OLAP的问题,这在方向上就存在问题。
2016-11-15_160311.jpg

上面的图是我们的总结,当你做一个大数据应用,首先要分清你自己的应用场景。至少有两个维度:一个是实时性的维度,你做大数据分析是秒级的还是离线的,也就是24小时以后拿到也没问题。另一个是一致性维度,你对一致性到底是什么样的要求,要求是百分之百一致的,另外很多场景不要求一致,很多的消息推送不要求一致。

从这两个维度来看可以划分四个场景,强实时性强一致性、强实时性弱一致性、弱实时性强一致性、弱实时性弱一致性。到底你的应用落在什么样的场景,你要分清楚。

你如果问你的运营团队和业务团队,他肯定说要百分之百一致,肯定要实时,不仅是分钟量级的,最好是秒级的,甚至比秒级还小,完全一样的。你可以告诉他,要实现这个没问题,但你要实现这个对应的代价非常大,你用代价换取价值是不是足够。

另外还有一个维度,就是数据量。你的数据到底是什么样的量级,GB、TB,甚至是PB。从现在新系统发展来看,架构支撑业务两年发展已经足够了,要对两年内数据量有一个预估。

这几个维度确定以后,现在从ETL数据抽取到数据传输、数据存储,以及数据计算,技术相对比较成熟了,你可以选择合适的技术。

下面是京东大数据平台的系统架构。
2016-11-15_160354.jpg
这个系统对于实时数据,离线数据,都有完整的解决方案,对于青龙系统来讲,可以基于公司大数据平台,进行对应的实时数据处理和离线数据分析。大数据平台技术栈很多,有些公司可能不会自己开发,但它非常重要,因为它可以从技术上提供基础数据质量保障。如果数据质量得不到保障的,那你后面做所进行的分析就是不靠谱的,数据平台本身数据质量就很差。

另外如果你对一致性要求很高,它可能10%的信息都丢失了,如果你对实时性要求很高,它可能延迟好几个小时,在这种情况下数据分析应用不可能做好。

在可靠的数据源和处理技术基础上,就可以逐步构建智慧物流系统。

第一步主要是通过大数据技术准确及时还原业务。也就是我们可以及时准确采集业务运行的数据,并分不同层次需求展示出来。
2016-11-15_160433.jpg
上图是著名的南丁格尔的玫瑰图,从这张图中可以清楚看到,因为卫生条件差、治疗和估计不足,导致的可治疗却死亡了的人数所占比重非常大,是因为受伤而死亡人数的几倍。

对于物流系统来讲也是一样,图形化展示,一图胜千言。在时间维度,实时展示实各个节点的生产量,相邻节点的差异,可以很好把控业务。我们还发现,移动端的开发,对业务非常有帮助。
2016-11-15_160646.jpg
对于物流来讲,是商品流,实物流,资金流,信息流的结合,因此,地理维度展示也非常有帮助。青龙系统做到了车辆,配送员实时展示,例如在京东APP上就可以查看订单的实时轨迹。
2016-11-15_160732.jpg
第二步就是通过大数据提升业务。这块对于离线数据,大家都比较熟悉,包括业务日报,周报,月报等,这都是业务管理的基础,如果不能做到及时准确,数字化运营是无法进行的,更不用说智慧化了。对于物流这种劳动密集型行业,我们利用实时数据,进行业界排行,对现场也起到很好的激励作用。
2016-11-15_160828.jpg
2016-11-15_160852.jpg
在对业务能够进行实时监控和准确评估后,就可以进行第三步,也就是利用大数据对业务进行预测。

预测一直是大数据应用的核心,也是最有价值的地方。对于物流行业,如果能够提前进行业务量预测,那么,对于资源调度等非常有意义,不仅能够实现更好的时效,而且能够避免浪费。举一个青龙系统的例子,就是单量预测,根据用户下单量,仓储生产能力,路由情况等,可以进行建模预测。
2016-11-15_160926.jpg
最后一步就是依托大数据进行智能决策。做到了这一步,才可以称作智慧物流。目前,做决策最好的方式依然是人机结合,能够利用大数据和人工智能的技术,为人工提供辅助决策,让人工的决策更加合理。

我们也有一个实际案例,京东的用户,都有过配送员给大家送货的经历,配送员也就是从配送站取货送给客户。因为京东业务每年增长也非常快,就遇到如何增加配送站的问题。在以前没有系统辅助决策,就只能拍脑袋,但随着规模越来越大,发现拍脑袋代价会很大,于是,我们就想用大数据的方法来解决一下如何建配送站的问题。

首先,建站依赖于什么?大家看过《大数据时代》的话就知道,利用大数据进行预测,非常重要的是找到它的关联物,建站最直观的是跟订单相关的,我们也从订单开始着手来分析这个问题。

我们从订单分布数据,加上我们的客户分布数据进行分析,通过订单聚合等技术手段,找到订单很密的点,这个过程有很多的模型可以供参考。然后,加入更多的数据,包括位置信息、当地租金成本、管理成本、从分拨中心到传站的距离等,我们就能输出一个模型分布,根据不同的维度,将建站预测展示给用户,辅助业务管理人员进行决策,并且,可以根据业务人员的使用情况,输入更多的业务知识,形成业务闭环,让系统更加智能化。
2016-11-15_161027.jpg
上面的图,是研发青龙系统的总结,分成了两个维度,一个是你做这个系统的难度,另一个是你做这个系统的价值。

首先,要选择应用场景,选择合适的大数据技术架构,把数据质量能够做好。然后,要对业务进行分析,第一步主要进行业务还原,包括业务节点,环比、同比,环节差异,最好用图形化的方式展示出来。

之后可以进行下一步,做业务评估,评估业务健康度,这也有很多的方法,如同比,环比,和业界平均指标对标的方法。如果能通过大数据做到和友商实时对标,就能发现自己的薄弱点,哪块是需要改进的,就可以进行优化,优化完,系统指标运行一下,可以看看是不是真的改进了。

利用灰度的方法,也可以对业务改进进行效果评估。大数据来讲最核心预测,作为一个业务负责人,如果能够提前知道业务情况,现场的管理就能处理的更好。再往上走就是业务决策系统,Google的AlphaGo就是一个典型例子,但是实际的业务可能更加复杂。

智慧物流,我们认为就是以大数据处理技术作为基础,利用软件系统把人和设备更好的结合起来,让人和设备能够发挥各自的优势,达到系统最佳的状态,当然,这个是不断进化的过程。
2016-11-15_161104.jpg
当前,青龙系统已经具备初步智能化的特征,上面是我们2016年的规划,我们会持续进行软件系统优化,利用机器学习等智能化技术,另外,引入更多的智能硬件,不断将智能化深入,从而支持京物流更加高效,为用户提供更好的体验。

来源:InfoQ
作者:李鹏涛

已有(5)人评论

跳转到指定楼层
An5 发表于 2016-11-15 17:25:50
不错,学习了
回复

使用道具 举报

xuliang123789 发表于 2016-11-16 09:59:34
谢谢楼主,学习一下,赞~~
回复

使用道具 举报

空空未空 发表于 2016-11-20 08:49:51
很好的知识,有劳
回复

使用道具 举报

cherubimsun 发表于 2017-1-17 13:52:43
谢谢楼主,学习一下
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条