《邮政寄递业务大客户邮件跟踪系统研究》由会员分享,可在线阅读,更多相关《邮政寄递业务大客户邮件跟踪系统研究(5页珍藏版)》请在金锄头文库上搜索。
1、邮政寄递业务大客户邮件跟踪系统研究 关键词:大客户;邮件跟踪;贝叶斯分类四川邮政各市州分公司的邮件监控能力较弱,业务系统的邮件监控功能均不完善,完成邮件跟踪需要投入大量人力及手工操作,部分市州甚至需要购买付费工具实现邮件跟踪。中国邮政集团有限公司(以下简称“集团公司”)新一代寄递平台在功能上没有着重考虑邮件跟踪问题,邮件轨迹查询与原给据系统无太大差别,依然费时费力。集团公司包裹快递业务智能跟单系统解决了邮件全环节标准时限的跟踪问题,但是由于省内大客户(即协议客户)的产品不同,对邮件时限的要求不同,跟踪系统无法满足大客户的个性化需求。大客户邮件具备以下主要特点:一是邮件数量大。系统要对全省21个
2、地市州产生的大量轨迹信息进行处理。二是邮件轨迹更新快。系统需要及时获取邮件的最新状态,才能提高服务质量。三是时限要求高。系统需要同时考虑标快和普快的时限要求。时限问题可以在系统功能层面上解决,本文重点研究前两个特点引起的问题:邮件轨迹的分析和邮件轨迹的更新。1系统设计1.1系统架构系统采用B/S模式,基于SpringBoot2.0开发,采用主流的MVC三层架构设计,分为表现层、控制层、持久层。其中,前端展现采用JSP、HTML、CSS、Jquery、Bootstrap等,后端使用SpringMVC控制业务跳转及前端展现,通过MyBatis对持久层提供支持。系统架构如图1所示,前端用户入口主要是
3、通过浏览器访问。后端主要通过Web前后端服务与权限验证服务实现用户功能,前者负责业务逻辑处理,后者负责用户资源权限管理。邮件更新服务按时更新用户邮件轨迹,邮件删除服务按时删除保留两个月以上的数据,新一代收寄服务负责接收推送的邮件收寄信息。底层业务数据和用户验证信息均通过MySQL存储,训练集设定的是结构化数据,由MySQL存储。由于新一代推送的收寄信息均为JSON格式的文档数据,适合用MongoDB存储。1.2系统功能用户功能模块主要包括快速查询、邮件跟踪、客户管理、时限设置、重点项目监控、数据报表、大屏展示等功能。快速查询:用于大批量查找邮件状态,单批次查询量理论上没有限制,为了提高查询速度
4、,暂控制在1000条。邮件跟踪:负责跟踪用户邮件,该模块分时段自动对邮件跟踪状态进行展示,将查询后的邮件状态、异常信息等按状态分类展示,用户可以直观地查看邮件时限状态信息,便于及时处理问题邮件。客户管理:对大客户信息进行管理,可按照客户名称进行查询并导出邮件汇总信息,同时也会显示客户邮件数量、跟踪完成度等概要信息。时限设置:用于用户设置邮件寄达地的时限值,判断邮件在运输过程中的时限状态信息,时限可以按省、地市、区县三个层级设置,时限判断优先级为:区县地市省。重点项目监控:根据省内大客户制定的监控服务,基于邮件跟踪功能和时限设置功能进行个性化定制,时限设置更为灵活。数据报表:根据业务需求提供数据
5、报表服务。大屏展示:提供全局的业务数据展示,包括全省邮件收寄情况及全量趋势信息。2邮件跟踪的关键问题2.1邮件轨迹节点分析给据系统提供的轨迹数据为文本格式的轨迹数据,并无明确的状态标志,需要通过对文本字符串进行解析判断,才能获取轨迹节点信息。系统将邮件状态分为妥投状态与未妥投状态,未妥投状态又包括收寄待投、邮件运输、到达投递部、投递下段、异常邮件等,具体根据业务需求调整。使用给据系统作为数据源时,分析邮件轨迹节点的算法如图2所示,该算法能够有效分析邮件状态各节点,比使用图3按轨迹产生时间逐条分析的效率更高。新一代寄递平台提供的轨迹数据为JSON格式,每条轨迹对邮件节点均有标识,只需按轨迹产生的
6、时间顺序分析出节点即可,图3为使用新一代寄递平台邮件轨迹节点的算法,该算法较图2给据系统邮件轨迹数据更简单。2.2邮件轨迹更新方式新一代寄递平台上线之前,邮件轨迹都是通过原有的内网给据系统获取的。在调用原给据系统接口时发现,请求到1条邮件轨迹信息的时间是250ms左右,邮件轨迹解析的时间远远小于250ms,可以忽略不计。在单台计算机上使用单线程的http请求方式,邮件更新速度大概为4条/秒,这种方式因等待请求会造成大量的时间损耗。因此,通过采用多线程异步请求处理的方式能够将单机邮件更新速度提升到16条/秒,日均更新数量达到100万条以上。新一代寄递平台上线后,省分公司调用集团邮件轨迹查询接口有
7、次数限制。四川邮政的日均邮件收寄量在30万40万件之间,由于调用邮件轨迹查询接口的次数限制,每件邮件日均查询不足4次,一定程度上限制了系统邮件轨迹获取的质量。因此,系统选择使用机器学习算法中的贝叶斯分类,用来预测邮件的更新时间,在一定概率上减少不必要的接口调用,提高接口利用率。3基于朴素贝叶斯的邮件更新邮件轨迹数据由集团公司存储,集团公司不会主动下发邮件数据,省分公司只能对邮件进行查询操作,系统无法判断邮件何时进行过更新,只能由本地服务器向集团主动请求最新的邮件数据。主动请求有两种方式:一是不间断更新,不停地发送邮件请求,在极短时间内保证最新的邮件状态信息;二是间断更新,邮件信息在不同投递阶段
8、的更新时间为几小时到十几小时不等,可以间隔几小时发送数据请求。第一种方式很明显是不可取的,第二种方式虽然可以在用户的容忍时间内更新数据,但也会造成系统资源的浪费。由于邮件寄达地不同,在途运输时间一般为几小时到十几小时不等,这时仍采用固定间隔时间T更新,实际更新时间小于T的邮件会更新,实际更新时间大于T的邮件便不会更新。这样就会增加系统不必要的数据请求操作,造成了资源的浪费。如果系统能够预测未妥投邮件下一次的更新时间,只在需要更新的时间调用接口,就能减少每天定时更新邮件的次数。按照这种思路,系统以小时为邮件更新时间单位,一天24小时分为24个更新时间段,将系统同一批次邮件归属到不同的时间段进行更
9、新。邮件更新时间的设置归根到底是时间分类,通过引用朴素贝叶斯算法,对邮件下一次更新时间做出分类预测,计算邮件下一次更新时间隶属哪一类时间段的概率,概率越大,邮件在这个时间段更新的可能性就越高。3.1训练集提取分类的准确率很大程度上由训练集决定,训练集的质量对预测准确率有较大影响。训练集的数据是通过用户的邮件数据提取的,训练集按邮件寄达地归类,不同的邮件寄达地训练集不同。为了兼顾系统性能并保证训练集数据质量,采取以下方法提取训练集。根据系统数据量大小调整训练集计算规则。在系统数据量相对较小的情况下,训练集可按省划分,无需划分到地市或者区县;保证训练集充分可用,尽量限制训练集数量,以免影响系统性能
10、;抽取正常时限范围内的邮件,剔除少量(如5%)的两端数据以及与均值差距较大的极端数据,如图所示。3.2计算邮件更新时间分类遵循朴素贝叶斯算法的基本原则,给出一定数量的类别项,对待分类项计算出此项在给定条件下各个类别项出现的概率,概率最大的项就是该分类项的类别。具体算法为:3.2计算邮件更新时间分类遵循朴素贝叶斯算法的基本原则,给出一定数量的类别项,对待分类项计算出此项在给定条件下各个类别项出现的概率,概率最大的项就是该分类项的类别。具体算法为:、leaveINC、arriveINC、finishINC的累加,前三个属性是已知的,需要计算出finishINC。假设系统需要保证邮件一天更新2次以上
11、,增量的取值范围应设置为大于1小于12的整数,在训练集中,属性值大于12的增量需要设置为12。图4数据为训练集数据,实际训练集远大于10条记录。设待分类的元组:因此,对于元组X,finishINC=5。该邮件单号下次更新的时间为(11+2+10+5)Mod24=4,更新时间为上次更新后的凌晨4点。4应用效果4.1实现邮件信息化监控相比原方式,系统能够大批量自动更新邮件状态,比市场上的工具更准确、更及时地获取邮件状态信息。系统不仅用于大客户邮件跟踪监控,同时适用于其他邮件跟踪相关业务。4.2提升跟踪效率,节省成本按Trackingmore工具付费使用粗略计算,完成一条邮件跟踪产生的费用为0.01元,设全省日均邮件30万件,全年监控费用约100万元。与原来邮件跟踪流程相比,通过系统几步操作即可完成邮件的跟踪。4.3优化邮件查询性能邮件跟踪最关键的是解决数据源问题,提供的邮件轨迹查询接口有限制,通过算法预测邮件更新时间,有效提升了接口利用率。