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

摘要

魅族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)查询该用户的画像标签。

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

原文发布于微信公众号 - IT大咖说(itdakashuo)

原文发表时间:2018-03-09

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏云计算认知升级

【腾讯云的1001种玩法】十分钟轻松搞定云架构之一 :从上云开始

本文是 【十分钟轻松搞定云架构】的第一节:从上云开始,从这节开始,我们来一起学习云端架构。

29611
来自专栏BestSDK

深度解析——短视频SDK的前世今生

2016 年中国移动短视频用户数为 1.5 亿,今年预计会达到 2.4 亿,增长率高达 58.2%,可见短视频的热度在一直提升;近几年,短视频的生产模式在不断演...

1.2K7
来自专栏腾讯移动品质中心TMQ的专栏

【探索式测试基础系列】初恋的味道

在学习探索式测试的过程中,也会有酸甜苦辣,只有了解它的人才知道这种味道。不妨和探索测试一起再回味一下初恋的味道。

1.5K10
来自专栏数据星河

教你七步优化数据库

       用户现在不仅需要更复杂和灵活的分析,还需要更及时的信息——数据必须全天候可用,并且在许多业务中用户要求在事件发生的几小时内(在某些情况下,几分钟甚...

1050
来自专栏Python中文社区

Django开发之简书推荐作者可视化

專 欄 ❈ 罗罗攀,Python中文社区专栏作者 专栏地址: http://www.jianshu.com/u/9104ebf5e177 ❈ 折腾了几天,终...

2718
来自专栏大数据和云计算技术

​大数据和云计算技术周报(第35期)

“大数据” 三个字其实是个marketing语言,从技术角度看,包含范围很广,计算、存储、网络都涉及,知识点广、学习难度高。

1172
来自专栏带你撸出一手好代码

做游戏与web的区别 - 服务器篇【1】

在一间游戏公司的两个部门待过, 前一个部门以做web开发为主,后一个部门做游戏开发,我在两边都是做后端的。

2172
来自专栏顾宇的研习笔记

为什么“时间管理四象限”没有用处?

这个图是把当前工作按照紧急程度和重要程度进行分类,以便更好的安排工作时间做最有意义的事情。

841
来自专栏Kirito的技术分享

以Dubbo为例,聊聊如何为开源项目做贡献

Github 上有众多优秀的开源项目,大多数 IT 从业者将其当做了予取予求的工具库,遇到什么需求,先去 Github 搜一把,但有没有想过有一天自己也可以给开...

1303
来自专栏Java进阶架构师

「架构技术专题」架构核心指标之可扩展架构设计的三要素(4)

这一理念在“云计算”概念疯狂流行的今天,得到了广泛的认可!对于一个规模迅速增长的系统而言,容量和性能问题当然是首当其冲的。但是随着时间的向前,系统规模的增长,除...

1063

扫码关注云+社区

领取腾讯云代金券