酷澎
年收6千亿元的韩国电商酷澎,11月在台湾启用了第二座物流中心,再过半年又会很快的再启用第三座。这家进军台湾来势汹汹的海外电商,近年以惊人成长势态跃居韩国第一大电子商务公司。他们与全球电商龙头亚马逊有许多相似之处,更为他们博得了韩国亚马逊的美名。
这些相似处不只是市场地位、同时贩售自有品牌和第三方卖家商品的模式,也提供付费会员制度等,最具代表性的相似处是,酷澎也靠著高超物流管理能力,来快速履行订单。酷澎全韩国99%订单于一天内送达,甚至在都会区,半夜下的订单,清晨上班时间前便会送达,这正是酷澎最知名的竞争力。
要做到超高速物流,背后技术关键就是数据分析和应用能力。酷澎企业文化十分重视数据驱动决策,数据科学家和数据工程师遍布于企业内不同部门,举凡设计、行销、产品、采购、业务、物流部门,都有能力和意愿利用进阶数据分析技术来支持决策。
酷澎对数据执著到什么程度?打开酷澎App,图示形状和大小、每一步介面操作流程、每一个推荐商品和购物功能、每一则广告,全部都需要进行A/B测试,验证哪一项设计更利于消费者转换,才能上线,他们称自己是无情的优化主义者(Ruthless Prioritization),不靠经验或喜好,凡事讲究数据决策来决定优先顺序。
顾客一送出订单,物流中心的拣货AGV就开始根据订单,计算出行动路径,穿梭于货架间,就算订单上有上百项商品,都能在2分钟能搜齐,交给包货人员。货架上的每一个商品,都利用机器学习模型的订单预测结果来决定摆放位置,才能实现超高效率的捡货能力。
图片来源_酷澎
不只物流士送货路经最佳化,物流管理者送货区域的范围和形状,也能天天依据订单弹性调整划分,甚至可以细分到几栋建筑物一区。分货机器人从流水线上扫瞄出包裹送货地点后,会自动将包裹分配给当天每一区的物流士。物流士上路后,送货和回收环保包材的行车路径也依据地理和最新交通分析结果,规画最佳送货路径。
2010~2016年:从关联式资料库到大数据技术
从行动商务起家的酷澎,自2010年新创阶段以来就相当重视数据对于强化营运决策的价值,随著规模扩大,也多次翻新数据基础架构。
2010年到2013年间,酷澎用MySQL和Oracle等关联式资料库来进行数据储存、处理和取用。他们内部数据架构相当简单,分析师、工程师和DBA都能直接存取这些资料库。
早在这个时期,他们便成立了数据科学与平台团队,大规模进行数据分析,来支援商业决策。数据使用需求大幅提升,更推进酷澎数据基础建设演化至下一个阶段。
2014年到2016年间,随著数据使用需求提升,传统关联式资料库开始不够用,酷澎便开始投资Hadoop、大规模平行处理(MPP)资料库、Hive等技术,以进行巨量数据处理。此时酷澎数据架构由数据源、数据搜集、数据处理、和终端使用者组成,已经有未来数据平台的雏形。
也在这段期间,酷澎设立了专职的日志搜集(Log collection)团队。随著酷澎大数据平台处理的数据来源数量逐渐增加,这个团队陆续打造了许多关键的数据撷取机制。
2016~2017年:基础架构搬迁上云,重构多处数据基础建设
2016年,随著业务规模提升,酷澎数据基础建设无法随著暴增的数据使用需求扩充。许多数据处理作业只能趁著上班时间前后的晨间或晚上进行,否则容易产生延迟或错误。
于是,酷澎花了1年时间,将大数据平台从地端环境迁移上云,重构和新增不少数据基础建设。这包括使用多种容器化大数据工具来增加数据处理能力及可扩充性、打造行动App跟网站上互动资料的搜集和追踪框架,以及重新设计企业数据仓储架构。
此时期酷澎数据仓储设计成星状架构的大规模平行处理系统,分为三大类数据仓储丛集:数据撷取平台、报告丛集,以及实验沙盒丛集。
数据撷取平台主要储存原始数据;报告丛集会储存清洗过后的数据;沙盒则是根据企业内部需求制作客制化数据表或数据集,来进行分析的环境。酷澎不同团队会根据需求存取不同丛集,或要求工程团队打造专属沙盒的丛集来进行分析。
2017~2019年:发展Big Data as a Service模式
前一个阶段的数据基础架构下,酷澎遇到了2大挑战。其一,每个团队都想要有自己的Hadoop丛集,导致建置和管理成本过高。其二,数据撷取机制是用多个商用软体叠床架屋出来的成果,随著数据工作流程更多更杂,数据品质开始降低,进而影响后续决策品质。
为了因应这些挑战,酷澎开始以Big Data as a Service的概念来改造数据基础建设,做法包括标准化关键环节,以减少重工、维持数据处理品质、优化管理策略,以提升资源使用效率,支援更大量数据使用需求,以及新增各式自动化工具,在不需大量人工干涉的情况下维护数据品质。
第一个重要做法是重构数据撷取机制。他们舍弃过往叠床架屋的撷取机制,打造网路日志搜集(Web logging)平台,用标准化方法来撷取数据。为了解决缺漏等数据品质问题,此平台还设计了一个元数据服务,会验证日志数据格式正确且没有遗漏,还提供网页介面供内部查询每一笔日志的数据品质。元数据服务的检查程序不会干扰日志数据的撷取、储存和转换程序,但会在发现异常时通报相关使用者。
日志搜集平台不仅使酷澎用来辅助决策的数据品质提升,后来,酷澎更持续发展此平台,成为今日酷澎数据基础建设两大平台之一,也就是数据撷取平台。
第二个他们著手改善的环节是Hadoop丛集建立及管理。由于许多团队都要求工程团队建立专属丛集,他们预先准备了不同用途的虚拟机器映像档,减少丛集建立时间超过60%。管理政策上,他们一方面更加严格控管每个丛集的生命周期长度,以避免运算资源浪费,另一方面开始根据资源用量峰值分析结果来提前扩充云端资源用量,来确保丛集执行稳定度。
这些做法使酷澎当下能用Hadoop支援更多数据使用需求。不过,随著Hadoop使用需求再次暴增,他们后续又进行了更多优化,具体做法会以另一篇专文来介绍现代数据平台。
第三个更新是企业数据仓储主数据(Master data)的储存模式。酷澎舍弃过往MPP资料库,改用ORC文件格式储存主数据,一方面增加储存效率、降低规模化成本,另一方面使他们可以用Hive和Presto等可以高速处理大量数据的技术来存取企业数据仓储。
他们还打造了一个企业数据仓储管理系统,支援自动数据撷取、自动化产生Airflow DAG、数据监控、数据回填(Backfill)、下游数据依赖性管理、以及早期SLA出问题时的通报机制。
这些更新,使企业数据仓储能支援更多数据处理技术,也有更多新增自动化数据处理与管理机制的选项,进而因应酷澎更多元、更大量的数据使用需求。
除了这些重大更新外,他们还新增了许多做法来完善大数据基础建设,包括多种数据品质检测框架、数据流程异常自动化通报机制、大数据平台SLA监测机制、数据探勘工具等。
以进军多国市场为前提的数据基础建设设计
时至今日,酷澎数据基础建设仍持续演化,这个PB级数据平台一天执行超过5,000个任务,使用超过70个来源的数据,且从中衍生出了送货管理系统、多种自动化供应链管理及订单履行机制,以及支援同时进行上千个独立A/B测试的实验平台等,使他们能持续用数据优化营运环节。这些系统都会于后续文章详细介绍。
成熟的数据基础建设及凡事数据驱动的文化,使酷澎快物流等许多业务面关键竞争力变得可能,也成为他们发展外送平台等多角化经营业务的技术支柱,更有可能成为他们进军多国市场的利器。
数据基础建设中,有许多系统是以适用多国市场为前提来设计。例如,他们地图系统从定位能力和数据管理政策上,就已经设计成容易支援全球物流规画,而非只适用于韩国。用来执行一天破千个A/B测试的实验平台,也有许多为了支援全球市场A/B测试而设,包括分散式运算优化策略及可扩充式设计等。
固然,光靠这些做法,酷澎未必能百分之百将韩国的成功做法移植到海外,不过从技术面瞄准全球化架构的庞大设计,可以看出酷澎想要善用高超数据应用能力,来强化国际竞争力的企图心。
酷澎数据基础建设架构沿革
酷澎数据基础架构从简单的关联式资料库开始,逐步导入大数据相关技术,后经历了上云和多个系统重构。接著,他们开始打造许多标准化数据工作流程、管理策略和检测框架,以期在支援大量数据使用需求同时,仍能维持品质数据、控管成本,并保有进一步扩充的弹性。图片来源/酷澎