魅族大数据之用户洞察平台

2018-04-04 11:32:53 浏览数 (1)

摘要

魅族DMP(用户洞察平台),通过对三方受众数据的汇聚、清洗、智能运算,构建了庞大的精准人群数据中心,提供丰富的用户画像数据以及实时的场景识别力。对内:无缝对接各类业务平台的数据应用,如广告平台,PUSH推送,个性化推荐之间建立了数据通道,支持公司级的精准营销,消息及时送达服务等场景。对外:完善对数据的管理及输出流程,以开放接口形式为全行业从业者提供标准的精准人群标签,帮助优化投放和提升营销效果。达到对受众的精准投放,释放数据真正价值!本文将介绍用户洞察平台所采用的架构,探讨遇到的技术难点和解决过程,回顾目前架构的不足之处以及将来改进的方向。

嘉宾演讲视频回顾及PPT链接:http://www.itdks.com/dakashuo/detail/1270

总体介绍

用户洞察平台的定位

通过对三方受众数据的汇聚、清洗、智能运算,构建了庞大的精准人群数据中心,提供丰富的用户画像数据以及实时的场景识别力。

无缝对接各类业务平台的数据应用,如广告平台,PUSH推送,个性化推荐之间建立了数据通道,支持公司级的精准营销,消息及时送达服务等等。

营销效果评估,反馈数据可进一步加工,用于提升画像标签质量。

核心需求

用户洞察的核心需求包含了以下几个部分。

标签生成:互联网业务变化快,标签需求变更频繁。要求系统快速响应标签需求。

人群洞察:对全量用户任意标签进行过滤以及聚合计算,查询1-2秒内响应。

受众分发:在无缝对接各类业务系统,实现高效实时的精确营销。

标签查询:根据用户ID查询用户画像详情,对于广告业务的查询需要在更苛刻的50ms内返回。

总体架构

集成开发平台之作业调度系统上,配置和运行离线计算任务。流平台(AnyStream)负责实时标签计算。管理模块生成的相关规则,存储在MySQL,供标签生成任务(Hive/MR/流平台)使用。用户画像(标签)宽表保存在ES上。Hbase和Redis提供kv查询。使用开发平台(OpenAPI)提供对外接口。

标签生成

根据生成计算的过程,标签分为两类,其中一类是统计类标签。首先从用户的行为里统计出指标,然后根据标签生成规则和统计指标作为输入,就可以对应到哪个用户属于什么消费等级。

算法类标签计算

标签除了统计类的之外还有一种算法类的。

选取高置信度资料(如用户注册信息)和用户行为数据作输入进行模型训练。然后使用训练好的模型进行属性预测。

单值标签与多值标签

单值标签是指用户在该标签下只能取一个值,不能多选。

多值标签是用户可以取该标签下的多个取值组合。比如用户可以有多个兴趣爱好。 多值标签的存在,会影响存储查询引擎的选型和存储结构设计。

标签生成过程

这种模式的优点是配置化管理,提供 Web UI 管理标签的生命周期;基于配置生成标签,标签宽表数据与元数据100%一致。

尚存的不足是目前配置化管理只涵盖到最终的标签宽表生成。与上游的指标统计和算法预有脱节。上游计算过程是单独开发,指标定义只是另外配置的数据描述(可能存在不一致)。一些标签下线(废除)后,相应的上游任务的依赖需要另外废除,否则会遗留无用的作业浪费计算资源。

标签存储

标签存储总览

ElasticSearch(ES)是一个基于Lucene构建的开源、分布式、RESTful搜索引擎。能够达到实时搜索,稳定,可靠,快速。基于 ES 实现对全量用户任意标签进行在线筛选和聚合分析,秒及响应。Hbase 提供大吞吐量的 key/value 查询。性能要求更为苛刻的 key/value 查询(广告平台)通过使用 Redid 来实现。

Why ElasticSearch (ES)

传统的Vertica社区版有3个节点和1T存储容量限制。随着数据规模和调用数暴增,性能出现瓶颈对于多值标签,只能采用csv方式保存在varchar字段,性能低下。

多值标签检索使用字符串 LIKE 操作;聚合虽能通过一些 trick 来支持,但性能太差。

而现在ES能够达到实时搜索,稳定,可靠,快速。在线更新(实时/准实时更新)水平扩展能力强。Array type完美支持多值标签存储和分析场景。

HBase与Redis

Hbase提供低成本,高吞吐量的 kv 查询。满足一般业务的查询,缺点是查询响应时间不太理想(针对广告业务而言)。

而对于Redis,广告业务提出 50ms 内的查询延迟,这种苛刻要求需用 Redis 实现。 Redis存储目前只服务于广告平台的查询调用。

考虑成本因素,主要使用 Hbase 来提供KV查询。部分要求苛刻的业务,使用 Redis 作为补充。

平台功能

主要功能列表

平台的主要功能有五种,人群管理、人群筛选、画像洞察、受众分发和画像查询。

人群管理可通过两种方式创建。1、指定标签条件;2、导入imei列表,对人群进行修改、删除等操作。

人群筛选是指定标签条件选项,查询满足条件的用户数。

画像洞察分为两步。首先指定标签条件选项选出用户群体,然后再指定要分析的标签,通过聚合运算,分析用户特征。

受众分发需要采取一定的技术手段,把指定人群推至下游的营销渠道(广告平台、推送平台、OTA等)。

画像查询则是对下游系统提供查询接口,调用方指定用户标识(imei)查询该用户的画像标签。

今天的分享就到这里,谢谢大家!

0 人点赞