##[1号店]电商用户画像(下)

电商用户画像(下) http://sanwen.net/a/bawuobo.html

商品标签存储在hbase的product_tags表
格式为,


用户标签存储在hbase的user_tags表
格式为,


实际生产环境中,HBase会有不少坑,离线写可以通过bulkload等批量写的方式,但是对于在线读,应避免特别大的Scan,我们把画像的数据也写在了分布式索引的Solr,对于批量读,或者二级索引可以优先走Solr,其次再考虑HBase的二级索引,减少HBase的压力。


实践过程
3.3主题推荐标签、用户命名实体等新增标签补充进画像
主题推荐标签
主题和标签的映射关系:


使用标签表中的关键词列表,结合商品的评论、标题数据给商品打标签。
商品打标签公式为:

商品标签存储在hbase的product_tags表
格式为,

用户打标签公式为:

用户标签存储在hbase的user_tags表
格式为,

值得注意的是,在这一步需要统计平均每个用户被打上标签的数量。针对标签稀疏问题,我们在3.3中尝试使用CF对用户标签做平滑处理。
用户命名实体识别的标签
通过用户历史订单地址做地址结构化,再对结构化中的地址做用户命名实时识别,最后对每一个用户的地址做地址匹配,即可识别出用户的公司、小区、校园标签,具体实现方法见作者在2015年qcon上的分享,识别的命名实时数目如下:

3.4HBase的离线和在线分离、KV读和批量读分离
离线Hadoop任务会对数据库某段时间I/O频繁访问,影响实时的性能,把离线和实时的集群分开。在离线集群上应用bulkload生成HBase的元文件hfile,在实时线上集群上拉取离线集群的hfile:
Hadoop dfs -cp hftp://ip1:port/userProfileBulkLoad hdfs://ip2:port / userProfileBulkLoad
实时线上集群通过LoadIncrementalHFiles命令,补上丢失的增量数据:
HBase org.apache.Hadoop.HBase.mapreduce.LoadIncrementalHFiles / userProfileBulkLoad userProfile
这样做避免了对数据库频繁写入的压力,也避免了离线任务对实时任务的影响。


另外,实际生产环境中,HBase会有不少坑,离线写可以通过bulkload等批量写的方式,但是对于在线读,应避免特别大的Scan,我们把画像的数据也写在了分布式索引的Solr,对于批量读,或者二级索引可以优先走Solr,其次再考虑HBase的二级索引,减少HBase的压力。

3.5画像性能优化
处理逻辑和规则
a)离线部分的track解析迁移至统一的行为解析数据库,在加快运行速度的同时,还可以提高行为解析的准确率。
待商榷:
用户行为数据设计到userid和guid:
1)在同一sessionid中,若userid出现过,则该sessionid中的所有行为对应至该userid
2)在guid和userid的对应关系中,滤掉公用电脑和黄牛账户;
b)为了进一步提高离线部分的计算速度,用户的行为权重计算亦可以增量计算。
设Wh为用户对某个类目的历史行为权重,Wc为用户最新一天的行为权重,则总的行为权重
Wt = λWh + Wc, 0<λ<1
采用此权重,带入模型,计算偏好。
然后更新Wh = Wt。
如果采用上述方法,则不必遍历用户的所有的行为数据,每次更新时,只需遍历一天的数据即可。

3.6数据存储优化
画像离线与在线数据的存储结构
离线的数据结构采用Hive。
在线的数据存储:第一版画像的数据存储在Hbase中,每天可支撑数千万次的访问,时延10ms左右,性能尚可,并且存储的数据量是TB级,如果用传统的数据库,随着标签急速的增加,势必要不停的分表,存储的扩展性不是很好,新版画像的在线存储系统仍然使用HBase。考虑到类目偏好使用比较频繁,而导购属性偏好数据量远大于类目偏好,将两者分开存储。
类目偏好离线数据结构-Hive


离线的全量数据进行过滤之后,导入在线部分。过滤原则:
a)每个用户的偏好类目数量小于一个固定值
b)用户偏好得分大于下限,该下限可假设用户当天在某个类目只有一个加车行为,然后带入模型反推出来
类目偏好在线数据结构-HBase
Rowkey: userid,
ColumnFamily:category_level
Column:category_id
Value: weight
导购属性偏好离线数据结构-Hive

离线的全量数据进行过滤之后,导入在线部分。过滤原则:
属性偏好大于一个固定的下限
属性值的数量小于一个上限
属性值偏好大于一个固定下限

效果评价
画像系统使得公司广告投放ROI提升3%;
实时画像(意图)对猜你喜欢栏位的共享占比60%多
首页大轮播的GMV提升千分之三;
应用到首页猜你喜欢、团购、闪购、搜索、推荐、营销等栏位或者产品;
了解受众群体的变迁,适时推出适合的产品;
降低自营商品的采购数量,指导了厂商优化产品结构
基于标签画像的千人千面上线效果:


推广建议
提炼出该案例(或项目)的哲理、方法论。
算法准确度、数据规模、更新速度相互制衡,提高某些指标,必须牺牲其他指标
一个系统遇到性能瓶颈的时候,适度分解系统,以满足不同场景
系统给在线栏位用的时候,一定得考虑降级和延迟环境
数据流各个环节都可能出错,自动化检查各个节点的中间数据
系统演进的时候,有不同的方案,争取多数人支持,减少一个人拍板的方案
不同版本开发的时候,适度换些开发者,融入新的思路,避免少数人思维定式
避免运营驱动,不同时期,过来新的标签需求,如果研发团队只管添加,大部分标签会沉睡,后面基本用不到。研发团队首先确定自己的标准和规范,以筛选新需求的标签和排优先级
数据驱动,通过观察和研究数据,对数据有一定的敏感度,产生新的用户画像数据。

作者简介
陈敏敏
1号店精准化部门架构团队负责人,《Storm技术内幕与大数据实践》一书作者,在此之前曾服务于微软和三星电子等公司,长期从事大数据、搜索和推荐平台相关工作,目前主要关注于NoSQL、实时计算框架、推荐、大数据营销等相关技术。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,937评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,503评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,712评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,668评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,677评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,601评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,975评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,637评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,881评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,621评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,710评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,387评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,971评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,947评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,189评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,805评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,449评论 2 342

推荐阅读更多精彩内容