近几年,汽车行业全面拥抱电气化和数字化,一方面有行业先行者和政策法规的激励作用,另外一方面随着无线网络升级换代以及云计算技术越发成熟,车机端到企业端能够更加实时稳定传输丰富数据。如何利用好这些数据,为生产、营销决策提供支持是各大车企都迫切关心的问题。大数据分析对于车企的价值也更加凸显。
对企业来说如何搭建一个可应对未来数据量几何级增长的数据分析平台?是选在在本地搭建还是云上?在数据湖上如何构建?Kyligence 团队很幸运参与到一家世界领先的车企数字化转型的实际项目中,今天特别邀请到这个项目的负责同事与大家分享 Kyligence 在数据湖上搭建大数据分析平台方面的一些思考。
过去几年,汽车行业在排放法规、激励政策、行业竞争等内外压力驱动下实施了电气化战略、进行数字化转型。产业链借助云计算、IoT、边缘计算、微服务、反应式架构等技术手段完成V2X(Vehicle-to-everything)的建设,已经建立了对车辆电气数据和用车数据全面、准确、实时的收集的能力。
图1:车联网数据链路:车-企业-公共平台
人们对汽车的定位也逐步从机械产品向电子信息系统控制的智能产品转变,由单纯的交通运输工具逐渐转变为智能移动空间和应用终端,有网联能力的新能源汽车保有量也越来越高,行业向纵深发展越来越依赖对数据的应用。
在不久前,中国发改委印发《智能汽车创新发展战略》中提出“加强智能汽车复杂使用场景的大数据应用,重点在数据增值、出行服务、金融保险等领域,培育新商业模式”。这标志着行业在投入了诸多精力打通了车辆端到企业端的数据链路后,整个行业必须尽快驶入挖掘数据更高附加价值的快车道中,深耕数据实在推动业务发展。
以汽车行业电气化和数字战略先行者Tesla公司为例,自2012年起累计生产交付了100万辆电动车,所有这些车辆都可以持续不断上传三电系统、车载雷达、摄像机、车主用车行为和全球主要城市的交通信息数据。若一辆车平均每天行驶2小时,行驶中每秒上传10kb压缩数据,100万辆车每天产生的数据量大约为 70tb。Tesla借助云计算、大数据技术能够处理利用这些数据,用来提升电池安全与性能、提高汽车自动驾驶能力以及为车主提供个性化的用车体验。
Kyligence 服务的这家客户今年将在中国推出第一款纯电动跑车,加上存量车型,到2021 年大约会有 10 多万台具有智联模块的车辆行驶在道路上。虽然车辆端到企业端数据链路建设的十分成熟,但因为还没有数据平台的支持,只能采用低频策略收集有限的数据满足安全监控等基础应用场景,也无法积累更久远的数据,这些导致数据价值得不到很好的发挥,无法满足行业对车辆智能化发展、数据创新型应用的要求。这家企业于去年下半年启动了中国区数据平台建设计划,希望能够借助平台基础能力,将核心经营数据、合作伙伴数据、互联网开放数据、车联网实时数据做综合运用,使数据为业务创造更多价值。考虑到企业级数据平台建设是一个持续迭代的过程,结合客户方中短期内业务部门、IT团队对平台能力的要求,我们确定了首期建设目标是打造企业级数据湖。
数据湖(Data Lake)概念自2011年被推出后,其概念定位、架构设计和相关技术都得到了飞速发展和众多实践,数据湖也从单一数据存储池概念演进为支撑高效、安全、稳定企业级数据应用的下一代基础数据平台,也是客户进行数据平台建设的核心诉求。
基于上述业务背景和客户需求,我们在进行数据湖的方案选择和架构设计时,需要解决的核心挑战主要有以下四个方面:
1. 良好经济的存储方案,平台经济性的要求主要为了应对以下两个问题:
2. 多源集成能力,平台需要能够集成和存储多种来源、多种形式的数据。融合的分析和应用要求企业将车联网数据、互联网数据、企业内部数据和外部供应商数据一起结合,这要求平台不仅需要兼容关系型数据库数据源,还要具有集成文件、媒体数据、流数据、接口来源数据的能力。另外对于数据源的变化,平台也要有实时的感知能力,能够及时更新与之相关的分析结果。
3. 弹性扩展能力,平台需要能应对数据接入和数据计算压力的大范围波动。数据系统在高峰期同时要接受来自前端的查询计算压力,以及来自后端的数据接入、校验、离线或实时仓库数据计算和存储压力,此时需要大量硬件资源来完成工作。但在平峰期系统所需的计算、网络、存储又趋于稳定,可以释放空闲的资源。IT基础设施如果有足够弹性的能力来适应这种大动态的变化,既能显著降低业务高峰期由于IT设施导致的效率瓶颈,又能在业务平峰期减少系统空转带来的资源浪费。
4. 全面安全性保障,平台需要自身以及数据资产的安全得到完善的保障。
数据湖早期的落地案例与Hadoop技术生态的发展息息相关,可以说是共生共存,因此大量的数据湖实践方案都是基于本地的Hadoop集群。而近几年,随着云计算的普及和飞速发展,各家云厂商的云上数据湖方案也逐渐成熟。
两种方案的优缺点对比大致如下:
在方案选择过程中,除上述客观存在的挑战外,客户对平台还有以下几个方面的期待:
1. 较高的敏捷性:平台可以快速响应业务的变化,如新增一个项目或添加一个新的数据格式,在整体架构不进行大的变化下,能满足既定和突发的需求。
2. 良好的灵活性:能够尽可能的用自动化的方式快速部署系统,所需的测试环境能够根据实际需要任意扩大或缩小,按需计费,避免资源和成本的浪费。
考虑到客户的车联网系统和车机数据已经在公有云平台上运行和存储,公有云的安全性及其优势也被企业所熟知。结合客户对数据湖平台架构的期望和需求,项目最终选择基于AWS公有云来构建云上数据湖平台。
Kyligence 团队在一线长期服务客户过程中较为了解客户对数据的实际需求和使用场景,将积累的交付经验与公司在大数据产品、云计算产品研发过程中的积累相结合,以标准化方案和服务作为基础,结合每一个客户的实际需求和条件做出定制,最终帮助客户达成项目期望。
总体架构
分层介绍
1.数据集成
我们为客户采用数据集成工具集(Data Integration Toolkit)+专项定制方案的形式进行源数据的发现和集成,支持主要Raw Data类型有:
2. 数据存储
3. 数据计算
Kyligence 团队使用AWS EMR作为数据处理的计算平台,由于加工前的数据和加工后数据结果集都保存在S3存储中,所以平台很自然的做到了计算与存储分离。
平台大部分时间是依赖EMR自身的监控和策略实现集群规模的Auto-Scaling,而当这些策略无法满足实际需要时,我们采用自定义策略进行Scale Out或Scale In。而能够做到这些的基础是,我们在云上数据湖用到的云资源以及定制化服务,无论是创建、启停、配置、相互集成,都是通过Terraform进行了脚本化实现。
针对离线批和实时流两类场景,目前有多套数据处理Pipeline和运用过程中需要遵循的标准与规范:
4.平台安全
围绕平台安全的建设是持续且多方面的,在我们方案中,保障平台安全可以拆分成五个维度来实施,包括:
针对上述每一个维度,我们又再次进行了拆分。以保障数据安全为例,我们进一步将其拆分成保障下列过程的安全:
在实施过程中,我们主要通过以下手段来完成上述工作:1. 为将云数据湖运营中相关的安全流程与客户现有流程、规定、IT系统相结合,我们进行:
2. 按照四大属性十二个角色,将与数据湖有关的实体对号入座:
3. 根据客户实际情况,制定平台安全运营核心章程,例如:
4. 按照我们从实际经验中总结的经验和公有云厂商的最佳实践指导,借助标准的云资源安全组件和我们标准化方案中提供的产品或组件来进一步完善安全配置:
其他方面
项目价值
云数据湖平台的成功搭建和运营,帮助客户进一步强化了端到端利用大数据价值的能力,让数据变现有了更强的技术平台支撑。其最大价值在于可以帮助用户明确数据接入、存储到汇聚的全过程,更加清晰地了解数据的全生命周期,有效的进行数据拉通,解决数据孤岛问题,有利于数据价值的探索发现,结合着云数据湖平台的技术架构和运营方式能够随需求实时的做出调整和优化,这也鼓励了客户业务部门积极利用平台建设创新型业务场景。
目前项目团队和客户信息部门一起,逐步完成车联网数据的积累并完善平台+数据一体化运营流程,在流程合规、数据安全的前提下,将车联网数据与业务系统中数据相结合,支撑业务部门探索更多场景。不久前,业务部门已完成首例实践,通过车机端用户行为相关数据与内部客户关系数据集结合建模,辅助售后服务部门更有效触达车主需求,提高车主对随车服务的粘性。
随着数据类型及数据量的几何式增长,数据湖很容易变成一个缓慢、僵化的数据沼泽,这在数据质量和治理方面发出危险的信号。我们需要持续优化数据,确保数据得到治理,不会任由数据处于最原始状态,将数据在语义层上保持一致,并且能够满足用户分析需求。数据治理的同时我们也要保障数据的质量及数据的安全,这也是今后我们在云上数据湖的应用中需要侧重探索的方向。让平台更加智能,激活数据资源价值,提升数据应用能力。