作者:邸星星
用户背景
汽车之家成立于2005年,致力于为消费者提供一站式的看车、买车、用车服务,提供优质的汽车消费和汽车生活服务。助力中国汽车产业蓬勃发展。在历经媒体化、平台化、智能化的转型后,全方位服务C端消费者和B1端主机厂、B2端汽车生态各类参与方全面融入平安车生态战略,打造车辆交易的完整闭环。
平台现状
汽车之家实时计算平台的应用场景与其他公司很类似,涵盖了实时指标统计、监控预警、实时数据处理、实时用户行为、实时入湖、实时数据传输这几个方面:
随着业务不断庞大,现有平台升级的需求不断扩大。
首先,由于实时计算离线的存储资源是混用的,离线 Hadoop 集群单独为实时计算拆出了一部分服务器并单独部署了一套 Yarn 供实时计算使用,这部分服务器的磁盘用来支持离线数据的存储,CPU 内存主要用来支持运行 Flink 任务,所以 Flink 计算资源并没有独占服务器,汽车之家也没有对计算资源作严格的管控,所以导致有很多任务分配的资源是不合理的,通常是申请了过多的 CPU 资源但实际的利用率却比较低。随着公司容器化建设的逐步推进,离线和在线混部并错峰分配资源的方式成为可能,这也就意味着 Hadoop 集群的 CPU 内存除了支持 Flink 实时计算,也可以支持在线业务的部署,从而使得对 Flink 计算资源管控的重要性及紧迫程度凸显出来。
其次,推动用户做资源的调优。这部分工作对用户来说存在一定难度。首先要理解 CPU 内存和并行度的调整对任务的影响就是有成本的,而且通常修改任务资源、重启任务就需要几分钟;此外用户还需要持续观察是否对业务产生了影响,比如出现延迟或内存溢出等。简单来说,用户的调优成本是比较高的。
接下来,现有的基于 Hive 的数仓架构需要升级。t+1 或 h+1 的时效性已经无法满足很多业务场景的需求。
最后,早期实时计算平台支持的生态不够完善。汽车之家的人工智能团队主要以 Python 语言为主,基于 SQL + UDF 的方式显然对他们不够友好。
《Apache Flink 案例集(2022版)》——2.数据分析——汽车之家-Flink 的实时计算平台 3.0 建设实践(2) https://developer.aliyun.com/article/1228279