作家
登录

创业公司做数据分析(五)微信分享追踪系统

作者: 来源: 2017-04-07 09:37:19 阅读 我要评论

创虻公司做数据分析(五)微信分享追踪体系

  • 行动,指的是用户对微信海报的操作,比如打开、分享。
  • 关系,指的是在海报传播过程中,用户之间形成的传播关系,比如用户A将海报传播给C。

创虻公司做数据分析(五)微信分享追踪体系

如许的数据的意义在于:第一,统计分析各个渠道的海报的传播效不雅;第二,对传播供献较大年夜的用户发放微信红包嘉奖,进步用户的分享积极性。微信分享追踪体系,就是完查对这两种数据的采集和存储。在以前的一年迈,受到公司营业和运营推广偏向的影响,这部分数据驱动了近一半的推广营业。

起重要说一点的是,其实微信分享追踪体系本身并不复杂,然则与复杂的产品营业浇忧⒔一路,就变得越来越复杂了。若何做到将数据逻辑与产品营业逻辑剥分开,以不变应万变,就是这里要说的筹划演进了。

1. 早期办事

早期的微信分享追踪体系,笔者曾经在浅谈微信"大众,"号营销背后的技巧一文中介绍过,当时序图如下所示。根本流程是:第一,用户打开海报时,经由过程OAuth2授权,将open_id参加到页面链接中;第二,前端上报浏览事宜,须要带上open_id和传播链信息;第三,用户分享时,须要在分享出去的链接中加上传播链信息,所谓传播链信息,就是每个分享过的用户的open_id组合,比如“open_id_1;open_id_2”;第四,上报用户的分享事宜,须要带上open_id和传播链信息。后端收到上报数据后,根据不合的功能需求,将数据保次木不合的数据表中,用于后期花费。跟着营业的成长,这个体系裸露出一些问题:

跟着推广晃荡的调剂,统计和嘉奖政策也随之变更,比如有的根据一度分享者的分享次数进行嘉奖,有的根据一度、二度分享者带来的浏览量进行嘉奖等等,还有须要根据上报的参数不合做不合的处理。所有逻辑都在上报的API请求中处理,来一个需求加一段逻辑,导致该请求的功能赓续膨胀,并且一些推广晃荡已经下线了,相干的逻辑也没有清理掉落。

参数比较纷乱,页面URL中携带了不合的参数,包含微信相干参数、产品相干参数,前端上报时须要携带不合的参数,而前端页面太多,经常搞错。

创虻公司做数据分析(五)微信分享追踪体系

2. neo4j的测验测验

于是,我们思虑,有没有可能在后端直接构建完全的传播信息,后期应用时直接根据前提就可以萌芽出所需的数据,前端上报时也不消携带传播链信息,我们想到了图形数据库存储技巧。

图形数据库是一种非关系型数据库,它应用图形理论存储实体之间的关系信息。在文┞仿开首的那张传播图中,用户的行动数据其实可以归结为用户与海报之间的关系数据,如许,这个体系其实就包含两种实体:用户、海报,三种关系:用户打开海报、用户分享海报、用户之间的传播。在诸多图形数据库中,我们决定选择比较成熟、文档相对丰富的neo4j来做DEMO。采取neo4j的萌芽语法,很简单的就可以萌芽出所需数据,简单示例一下。

创虻公司做数据分析(五)微信分享追踪体系

下图出现基于neo4j存储的新体系时序图,在OAuth2授权的重定向过程中,建立User和Poster节点信息,以及二者之间的OPEN关系信息,并且对页面URL计算hash值(去除无用参数信息),然后将用户open_id和URL的hash值加到页面URL中返回给前端。用户分享时,把该用户的open_id作为parent字段值,加到分享链接中,新用户打开该链接时,会根据该值来建立User与User节点之间的SPREAD关系信息。在用户分享的事伊闼楝做一次数据上报,携带open_id和页面URL的hash值即可,后端拿到信息后,便可以建立User与Poster之间的FORWARD关系信息。如斯,便可以建立完全的微信分享追踪数据了。

创虻公司做数据分析(五)微信分享追踪体系

然而,一切并非预期的那么完美,在DEMO过程中,我们发明有两点问题不克不及很好的知足我们的需求:

在萌芽用户间的关系瓯,会产生误判。比如鄙人图所示的传播关系中,UserA和UserC的传播关系是产生在海报PosterA上的,在PosterB上并没有,然则当我们测验测验萌芽二度分享者时,会将UserA->UserC->PosterB误判为二度分享。

固然这些问题可以想办法绕以前,比如根据时光建立不合的实体节点等等,然则如许会把数据存储做复杂化,经由衡量,我们临时代置了这个筹划。

3. 基于用户行动数据采集体系的筹划

在创虻公司做数据分析(三)用户行动数据采集系同一文中,曾经提到早期的数据采集办事是分散在各个营业功能中的,后来我们从新构建了同一的用户行动数据采集体系。在完成这个体系后,我们开端推敲将上述的微信分享追踪体系并入个中,重要工作有:

数据上报的流程与早期的系同一致,然则改换原有的上报方法,采取用户行动数据采集体系的筹划同一上报微信分享的数据;

数据接入Kafka后,一方面直接将原始数据存储到Elasticsearch,另一方面,以worker的情势来花费数据,根据响应的营业需求提掏出所需的数据存入格局化数据表中,用于统计和嘉奖晃荡。当某个推广晃荡停止后,将其所属的worker停掉落即可。


  推荐阅读

  创业公司做数据分析(六)数据仓库的建设

作为系列文┞仿的第六篇,本文将重点商量数据处理层中数据仓库的扶植。在第二篇运营数据系同一文,有提到早期的数据办事中存在不少问题,固然在做运营Dashboard体系时,对后台数据办事进>>>详细阅读


本文标题:创业公司做数据分析(五)微信分享追踪系统

地址:http://www.17bianji.com/lsqh/34626.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)