新型航空电商架构平台建设研究及应用
摘要:本文主要介绍基于移动互联网、大数据等新形势背景下,航空公司电商架构平台建设所面临的挑战,以及通过建设新型航空电商架构平台去应对挑战。此电商架构平台已应用在某航空公司电子直销平台,并取得了一定的效果。新型航空电商平台建设在航空公司电商销售系统建设中具有较大的借鉴和推广价值。
一、 综述
互联网二次革命移动互联网时代、大数据时代,面对国资委“提直降代”要求、高铁的冲击、航旅消费人群的变化,如何吸引及留住用户、提升系统响应、拓展辅加服务,提升用户体验及系统销量,实现“千人千面”营销,在激烈的竞争中脱颖而出,是各航空公司面临的重要课题。本文结合新形势、“互联网+”环境下,运用先进的互联网技术,研究新型航空电商平台的构建,探索这种新型航空电商平台在航空公司电商销售平台建设中的应用。
二、 航空公司电商平台建设面临的挑战
(一)业务需求的急速增长
电商平台就如同超市,没有客流就不会有销量,提升直销销量最重要途径之一,是提升网站及移动端用户访问量、活跃度。实现的方式是推出各种营销活动,吸引大量用户的关注和参与,并最终转化成购票行为。例如东航推出的机票秒杀活动、国航推出双11机票抢购活动、海航每月8号会员日活动等。活动期间必然导致访问请求量、并发量激增,高峰期可能是平时5-20倍的量级增长。如图2-1,某航空公司某次营销活动日请求量与平时对比。
图2-1 某航空公司营销活动日与平时请求量对比
(二)业务逻辑日益复杂化
广告机票等由传统“千人一面”变成“千人千面”,由B2C模式向C2B模式转变,后台基础服务要支撑包括机票、支付、优惠券、升舱、餐食、付费行李、付费选座、里程兑换、机上wifi等各种业务处理。
(三)业务数据多样化,异构化
业务模块增多,数据源越来越多,接入的数据结构由以前的结构化数据整合转为销售订单数据、访问大日志数据、网页访问行为数据、各种埋点数据等多元化异构数据整合。
(四)业务的高速发展和迭代
业务高速发展和迭代,新增大量的业务需求,而且业务需求不断发展变化,部分业务需求有很高的时效性要求。行业数据显示,航空旅游消费主力群体集中在25岁-40岁之间,这部分人基本出生在改革开放后,较乐于接受新鲜事物,习惯手机网购,不仅仅满足于航空点到点的运输服务,期望对出行各环节、全流程全面的服务提供,更注重个性化产品服务体验,期望得到及时回应的互动式服务体验。消费群体变化,导致在航空出行全流程涌现各种不同的业务需求,包括个性化运价、线上线下营销、机票打包、微信营销、机上娱乐等。对项目研发效率、项目管理方式、项目技术架构提出新的更高要求。
在这种新形势下,传统航空电商应用架构不得不变,要对系统应用架构的自我重生和涅槃,需要改为大数据及新的高并发架构,来应对业务需求激增及高速迭代带来的挑战。
三、 应对挑战的系统架构改造思路
面对这些挑战,我们的应用系统架构应该如何涅槃?总体思路上从四个方面进行:
(一)系统的存储
存储是航空电商交易的核心,这一点对于整个系统的吞吐量和并发量的提升起到最关键的作用,需要结合数据存储模型和具体应用的场景。
(二)系统的计算
主要从横向和纵向考虑:横向主要是增加并发度,增加并行链路及使用集群分布式。纵向拆分就是要求我们找到计算的结合点从而进行分层计算处理,将各层次计算完后的结果整合,尽可能最大化系统整体的处理能力。
(三)业务层架构
要求系统的良好的模块化设计,清楚的定义模块的边界,模块自升级和可配置化。在模块化基础上,引进最新的微服务架构,并能实现容器部署。
(四)开发管理模式转变
软件工程管理有自身特点,需求总是在不断变化,充满很多不确定性,需要通过不断的自我调整、不断迭代、阶段交付,与需求不断碰撞、与用户频繁交互等,去适应各种变化。传统的从上而下的 “瀑布模型”已不能适应业务需求的高速发展和迭代,需要用新的快速迭代的方式去适应。
四、 应对挑战的新型航空电商架构平台设计
面对这些挑战,航空电商架构平台如何涅槃?下面参考第三章中的思路,主要从对系统架构设计最重要的五个方面,即存储的设计、架构层设计、业务计算的设计、敏捷模型、云服务介绍新型航空电商架构平台设计。
(一)存储的设计
三分技术,七分数据,得数据者得天下。马云也曾说:人类正从IT时代走向DT时代。在大数据时代,数据是企业的一种宝贵资源,但最关键的是如何存储、使用和利用好数据。航空电商传统结构化Oracle等数据存储,已无法满足业务需求,需要使用行业先进的存储技术,如Memcache、Redis、H2、Zookeeper、MongoDB、Hadoop等。
航空公司电商现状是需要安全存储海量的数据,高吞吐,并发能力强,同时随着数据量和请求量的快速增加,能够通过加节点来快速扩容。另外还需要支持故障转移,自动恢复,无需额外或只是很低的运维成本。综上几个主要因素,通过大量的调研和测试,发现Memcache在重启后缓存的航班票价数据会丢失,只支持key-value形式,数据类型单一,Redis却没有这些缺点。对比如下:
表4-1 Memcache和Redis对比
技术选型 |
持久化 |
多类型数据 |
分布式 |
数据备份 |
Memcache |
× |
× |
√ |
× |
Redis |
√ |
√ |
√ |
√ |
对比H2和MongoDB,H2很轻量级,跟java很好的融合,但其集群部署性能不如MongoDB,对大数据量存储存在局限性,当数据量及连接并发数大时容易出现OutOfMemoryError内存溢出错误。Hadoop Database是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,可以很好的支持例如用户访问行为的大日志数据分析。
总体上,航空公司可以根据需要存储的数据大小、数据类型、数据读写频度等不同的业务场景需求,选择对应的存储技术。
图4-2 某航空公司电商架构设计模型
(二)架构的设计
1.模块化:很多航空电商平台还在使用传统单体式应用架构,所谓单体式应用架构,简单的说就是将复杂的业务模块放在一个应用里面,开发、升级、部署都在一起。针对航空电商业务特点,可将其进行模块化拆分,将航班票价查询、机票下单模块、支付模块、登录模块、订单管理模块、优惠券管理模块等独立出来,单独更新升级、独立部署。
2.微服务:微服务架构是一种架构风格和设计模式,他提倡将应用分割成一系列细小的服务,每个服务专注于单一业务功能,运行于独立的进程中,服务之间边界清晰,采用轻量级通信机制(如HTTP/REST)相互沟通、配合来实现完整的应用[2]。微服务是在模块化基础上的升级。实现微服务之后,可以将航空公司众多的业务功能点分散在各个微服务中实现,可以支撑快速响应开发,快速部署。
(三)计算的设计
1. 在线计算
横向扩展。应对访问量、销售量快速增长,使用增加并发链路、分布式部署方式,增加横向计算能力。例如针对移动端访问量新增,可扩大移动平台并发链路,对Redis集群部署等。
纵向扩展。拆分业务模块,对原来只有一层的单一应用,拆分成多层,例如把航班票价查询接口拆分成票价获取、航班获取、票价航班组合处理;针对机票下单拆分成票价校验、订座生成PNR、订单入库等。对存储拆分,对查询频率高的热数据放到缓存中,对冷数据则基于下一级存储,例如Mysql。
业务层推荐策略。根据用户搜索、用户点击浏览、用户曾经购买记录等,推测用户意图,推荐策略生成的产品数据集合,接着按照场景规则,业务逻辑重新过滤,聚合、排序。例如分析发现某用户对“广州-三亚”关注度很高,且根据其曾经购票行为判断为价格敏感型用户,则提前缓存近1-2个月“广州-三亚”、“广州-海口”航线最低价数据,有针对性的推荐给用户。
2. 离线计算。
主要分四个阶段:
数据收集阶段:在网站、手机、触屏前端、应用端、接口端建立起各种“埋点” ,收集各种用户数据。
预处理阶段:这块主要为后续数据挖掘做一些数据的准备工作,数据去重,过滤,对缺失信息的补足。举例来说用户打开APP,系统采集定位到该用户所在城市为北京,通过连接后台会员库、销售库获取该用户为银卡用户,过两天飞“北京-悉尼”,系统主动为其推送机上wifi、机上餐食等。
数据挖掘阶段:主要运用一些常用的数据挖掘算法进行模型训练和推荐数据的输出。
数据导入展示阶段:对挖掘结果数据进行导入存储,并界面化、图形化进行展示。
(四)敏捷模型
敏捷开发是一种以人为核心、迭代、循序渐进的开发方法。在敏捷开发中,软件项目的构建被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征。对于快速增长变化的航空业务需求,“敏捷模型”可以很好的解决需求不断变化的问题,实现快速迭代、快速交付。下图4-1为敏捷的一个模型图,以2周为一个迭代周期。
图4-2 敏捷迭代模型
(五)云服务
阿里巴巴2016年“双11”交易峰值达到17.5万笔/秒,支撑如此高并发处理的正是阿里“电商云化”架构。随着航空公司大规模营销活动、促销活动深入开展,国际化战略的深入,越来越需要得到一种可以弹性伸缩、可扩展的基础架构服务IaaS、平台服务PaaS、软件服务SaaS,并能够解决海外信息数据平台建设的问题。云服务部署能很好的解决上述问题。
五、 应用案例
根据上述新型航空电商架构建设研究分析结果,某航空公司在传统结构型数据存储Oracle基础上,使用新互联网存储技术构建分布式电商存储平台,并构建模块化应用Shopping、Booking、UPP(支付收银台)等,并在模块化基础上基于Spring cloud做成微服务架构,新架构性能较原来提升2倍以上,超过99%的请求在2秒内响应。同时,在其2016 “年终大促抽奖”项目开发中,使用敏捷模型实践,从需求到开发实现高效沟通、响应,实现快速迭代、交付,开发周期缩短了一半。并将“抽奖模块”应用部署在阿里云上,单链路处理能力提升1.5倍,带宽容量提升100%,解决自建机房带宽不足问题。
基于此构建的新型航空电商平台,支撑其直销平台每年超过50%的增长,电子直销单日破亿的梦想变成现实,并渐趋常态化;移动商旅平台年销售额突破45亿元,同比提高超过100%,单日销售额突破3000万元;电商平台年访问量近1.4亿人次,同比增长60%,支撑单日最高超过100万用户访问, APP单日活跃用户数超过25万,社交媒体粉丝量超过1000万;并初步构建起精准营销、一站式全流程服务电商架构支撑体系。
六、 结论
本文研究的航空电商平台建设,主要基于中国南方航空的实际业务特点及对应的发展现状。国内航空公司电商平台的发展虽然也有各自特点,其发展历程及面临的问题跟南航有很多类似和可以借鉴的地方。所以,基于南航的这套新型航空电商架构平台建设,在国内航空中具备一定的普遍性。
目前,中国已拥有互联网用户6.4亿,移动宽带用户5.3亿,手机用户13亿,互联网上市企业市值近4万亿,社会电子商务交易额近13万亿元。在航空机票领域,国际上的在线旅游网站EXPEDIA\ORBITZ等,国内的携程、艺龙、淘宝旅行,在线搜索企业KAYAK、国内的QUNAR等公司,纷纷进军航空旅游,不断冲击航空旅游企业。国内航空企业如果能积极应对,在航空电商平台架构建设上进行创新,利用“互联网+”构建自己新型电商架构平台,将大大提升航空公司效益,提升竞争力。
参考文献
[1]Andrew Ryan. Under the Hood:Hadoop Distributed Filesystem reliability with Namenode and Avatarnode(Z). Facebook Blog, 2012.6.
[2] Kristina Chodorow,Michael,Dirof. MongoDB:The Definitive Guide, 2nd Edition(M). O'Reilly Media, 2013.5.ISBN: 978-1-4493-4468-9.
[3]Eric Siegel. Predictive Analytics: The Power to Predict Who Will Click, Buy, Lie, or Die(M). Wiley, 2013.2. ISBN: 978-1-4571-6194-0.
[4]戴国良, C2B模式电子商务的产生、发展与展望(J). 电子商务,2013(9),ISSN:1009-6108.
[5]孙海洪, 微服务和容器技术应用[J]. 金融电子化,2016年第5期.
[6]阿里巴巴双11技术团队, 不一样的技术创新—阿里巴巴2016双11背后的技术[Z],2016年12月.
(作者:黄文强 中国南方航空股份有限公司 )