Yeahmobi基于阿里云的数据湖最佳实践

易点天下CTO 王一舟

本文讲述了Yeahmobi作为一家全球化的智能营销服务商所遇到的挑战和大数据在应对这些挑战时所发挥的作用。

Yeahmobi是一家以技术驱动的全球智能营销服务公司,公司主要提供的服务包括了效果营销、品牌服务,以及各个垂类的综合性的营销解决方案。公司主要帮助有全球化视野和需求的客户,完成在全球范围内的用户获取、品牌宣传跟提升,以及商业变现等关键性的一些诉求。公司在广告主端主要服务的行业包括了跨境电商,游戏、工具应用、社交、生活应用、金融以及旅游等多个不同的行业。在媒体端公司也对接了包括FaceBook、Twitter、Instagram在内的一系列主流的头部媒体,以及厂商OEM的流量,包括开发者的中长尾流量,还有rtv类的exchange的流量,基本做到了全球流量的一个全覆盖。在对接完两端的需求及供给之后,公司通过一系列专业的服务和自研的智能化平台来去进行两端的业务撮合,去实现精准营销、效果营销,以及最终帮助客户达成它的全球化诉求。

Yeahmobi基于阿里云的数据湖最佳实践

全球化业务分布在全球不同的国家区域,往往很多不同的媒体,但是由于不同广告主间的用户以及一个广告主在不同地区之间的用户都有着一定的相关性和相似性,特别是落在数据分析跟模型建立以及对用户行为的预测上。因此我们大量的不同的产品,最终需要打通上下游的数据,将所有的数据统一进行治理和管理,才能最终完成一个广告主在全球不同国家和区域,甚至是不同的广告主在同一个国家和区域的精准营销及品牌宣传的目标和目的。

Yeahmobi基于阿里云的数据湖最佳实践

在数字营销广告业务的执行过程当中,为了实现这种统一的全球数字资产的一个治理,实际上我们是需要面对几个不同的挑战的。

第一点就是由于我们服务的国家分布较广,为了实现服务质量的一致性,我们首先要实现不同区域的本地化的部署,因此在全球范围内的部署是我们必须去做到的一项工作内容,随之而来的就是由于本地化的部署,原生数据生成时会分布在全球不同的区域,统一的数据治理就需要完成跨洲际的数据统一采集,以及收归之后的统一的管理,那么在网络以及存储的多个方面,会提出更高的要求。这是有关全球网络的方面。

第二点是由于我们覆盖了全球超过40亿的互联网用户,所以首先在业务高峰期的时候,我们要接受超过每秒百万次的业务请求,所以我们对于每一个数据中心及节点的并发处理能力要求是非常之高的。其次,由于全球不同国家跟区域互联网用户在当地时间的行为有波峰波谷,在业务这个量相对较小的时候,我们也需要去实现本地服务能力的缩容,以实现成本的节约。

第三点就是在如此庞大的数据规模之下,我们这个数据驱动业务不是以采集数据作为最终目标,而是以数据如何去进行运算和反哺最后的业务决策,去真正帮助这个广告主以更低的成本去实现用户获取为目标的。所以在如此庞大的数据规模之下,如何能够有效的进行实时和离线的运算,给业务以及相关的智能系统以辅助和支撑,也是至关重要的一个环节。

Yeahmobi基于阿里云的数据湖最佳实践

我们刚才其实有提到,我们需要在全球各个国家,特别是各个大洲做到本地化的部署,以实现就近服务去提高服务的质量。我们在对数据中心的选取过程当中是有比较严格的要求的。

一方面出于自身内部产品的和运维的需求,我们需要不同的数据中心内在的云原生服务的能力一致,且业务的可靠性和资源的可靠性是有足够的保证的。其次我们需要保证各个数据中心对周边用户的辐射,网络质量是可靠稳定且高效的。

另一方面由于我们需要同时启用数10个不同的数据中心,那么在数据中心之间的数据通信,特别是数据的收集、采集、实时分析,出于业务指标的要求,比如说我们在归因场景下要求是毫秒级的归因统计以及分钟级的实时报表,那么在不同数据中心之间的网络的可靠性上就会有非常严格的要求。在这点上阿里云其实给了我们很多的支持跟帮助,我们基本上启用了阿里云所有的数据中心,以满足我们对全球化业务的需求。

Yeahmobi基于阿里云的数据湖最佳实践

在满足了基础设施要求之后,我们的广告可以正常的投递并且进行统计分析。那么下一步就是我们如何更好的去利用我们所设计跟采集到的各类数据,最大化这些数据的价值,要知道其实广告这个业务它的数据量级是相对来说较为庞大的,以我们的业务为例,我们日均每秒的新数据写入量大概是在20万左右,这是一个均值,高峰期的话可能会在数百万的量级,那么每天落盘的日志量也在接近20个tb左右,这些数据不是图片视频这些本身就是高存储的文件格式,而是用户设备信息、用户应用、行为数据、广告行为数据、用户的电商消费数据等这样的一些日志类的数据,所以这个数据量级其实是非常庞大的。

其实大家都应该知道,落盘只是数据分析中相对来讲最为简单的一步,重点是如何对这些数据进行有效的使用,由于我们所服务的客户分布的行业不同,国家不同,以及他们可能拥有不同的商业目标。比如说电商客户可能是以实际销售承担为目标的,而游戏类客户可能往往会采用游戏应用的安装为商业目标。所以在不同的用户日志数据之间,如何去进行有效的治理跟分析,是我们一个比较重要的任务。

在不同的场景下,首先我们往往需要去支撑运营团队,在不同时间维度上去做这种聚合报表。包括我们需要在某些场景,比如电商在营销场景需要去实时更新用户竞价清单,即竞价预测的模型,又比如我们在应用类的新增用户场景下,往往有需要去做用户 look like等相关度的分析。不同的场景下,原本我们是构建了不同的服务,这个过程中就会有非常多的数据冗余存储,以及计算资源的浪费。

在使用了DLA之后,我们所做的第一步就是实现了我们绝大多数数据运算场景的运存的分离,我们将绝大多数原始日志放置在oss之上,然后使用不同的云原生服务或者是自建服务去检索这些原始日志,一方面可以降低我们的存储成本,另外一方面也提高了数据的一致性和数据的有效性。

Yeahmobi基于阿里云的数据湖最佳实践

大家应该都知道在所有的数据分析场景中,除开特定的实时运算和实时预测模型以外,其中很大一部分其实都是离线运算或者说更大规模的模型预测。这一部分通常我们都是去使用,比如像Hadoop集群、Hive、Spark等类型的集群来去完成的。以往我们都是通过自建集群来去完成这一部分的工作。但其实考虑到运维管理的成本,因为其实很难在这个任务的完成效率和资源的利用率,以及不同业务线和不同任务之间的调度中达到一个很好的平衡。特别是关于底层计算资源和存储资源的管理、释放、新增,其实往往也是一个比较繁琐且很难处理的很好的事情。

这一块阿里云给我们提供了非常大的帮助,我们从一开始的完全自建的独立集群,逐渐迁移到了混合式的就是自建预留式的集群加弹性EMR到现在基本上绝大多数的任务都会跑在按量需求的EMR集群之上,极大程度的释放了我们的运维管理成本,帮助我们能够更好的去把工程师的精力放在业务分析和实现业务需求上。要知道我们每天都要有数百封不同的业务报表需要去出,有数百个不同的业务模型需要去进行重新分析和更新,有数百个不同的特征要去重新筛选、提取和评估。那么所有的这些背后,我们现在通过1~2个运维人员就能完成整个集群的维护和管理工作,这个对我们的帮助是非常之大的。

Yeahmobi放眼未来

其实说到数字广告营销行业的发展,大家可能已经听多了,甚至听腻了,像精准营销这样的一些词汇,但实际广告行业的现状是什么?可能如果我们拉全网的数据来看,有一个虽然不算非常精确,但大体上准确的一个数字就是可能我们每看100个广告物料才会产生一次有效的广告点击,而100次广告点击背后可能才会有一次广告承担。那么试想一下,精准程度实际上还是相当的低的,这个里面原因很多,所以我们一直都在致力于去提升转化漏斗中每一个环节的比例,因为越高的比例就意味着一方面我们在互联网上看,用户所看到的广告就越为精准,那么对用户的打扰就会越少。另外一方面也有助于提高商业变现的效率,以及我们每一个广告主在做广告的时候获客成本的降低。我们现在和以后主要会关注的领域也是为了去提升这些部分。核心其实还是数据。

这里面我们现在正在去做和未来会主力去做的几块东西如下。

首先第一部分我们沿着广告的转化模型来说,我们如何去认知和理解用户到底需要什么,这样我们才能真正传递给用户精准的广告内容。那么在这个背后为了实现这个点,很多公司包括我们在内都做了大量的数据分析和建模的工作,但是我们也都知道说建模它是一个挖掘的过程,但原始数据依然是极其重要的,因此如何能够打通上游从广告主到媒体端,以及像我们这样的中间服务商和平台间的数据,去创造更大的数据价值。比如说通过联邦学习,在不侵犯各自商业数据隐私及用户隐私的情况之下,将更多的数据纳入到训练模型当中,是我们现在以及未来会核心关注的一块重要的内容。

第二部分,当我们知道了用户需要什么之后,如何将用户需要的商品内容或者服务内容有效的传递给用户,抓住用户的眼球。现在大家都知道这是一个图片,甚至说是短视频为王的时代,常规的人工式的短视频加工,视频和图片加工的方式成本其实是相当之高的。那么如何通过像nlp,像图像AI技术来去在理解用户需求的前提之下,实现智能的创意物料的加工、组装、拼接和展示,真正能够做到短视频时代的千人千面,也是我们一直去致力追求的一个大的方向。

最后其实要说做到以上所有的这些内容,一定是会需要大量的运算资源跟IT资源的,当然现在的公有云已经为我们提供了非常好的底座,但是对于做应用端的公司来讲,我们依然需要去提升我们的资源利用的效能,来去降低我们服务过程中的成本,这样我们才能有更多的精力去cover更多的数据跟场景。这个里面我们主要在过去几年以及以后,我们都会继续再向弹性运算,像serverless computing等方面去加大投入,提高我们在不同场景下的资源利用率,以提高我们的服务效能,降低服务成本。

上一篇:Spring之拆分spring配置文件,整合web项目


下一篇:机器学习技术在亲宝宝的业务应用