• 整机评测
  • 专项体验
  • 对比评测
  • 拆机
  • 手机
  • 5G
  • 软件
  • 发布会
  • 小道消息
  • 专题
  • 导购
  • 行情
  • 手机报价
  • 产品大全
  • 品牌大全
  • 当前位置: 天一资源网 > 对班子成员画像 正文

    用户画像文档

    时间:2020-07-21 08:06:29 来源:天一资源网 本文已影响 天一资源网手机站

     用户画像

     目录

      TOC \o "1-3" \h \z \u 一、 概念 3

      二、 标签库设计: 3

      三、 用户性别、年龄识别过程: 3

      四、 用户画像本体表数据入库hbase 5

      五、 用户画像程序执行 6

     概念

     用户画像:

      用户画像也叫用户信息标签化、客户信息。

     根据用户的信息和行为动作,用一些标签把用户描绘出来,描绘的标签就是用户画像。

     appID:

     用于标记APP,APP的唯一编号,判断终端安装的APP。

     年龄段说明:

     名称

     说明

     年龄段1

     24岁以下

     年龄段2

     25-30岁

     年龄段3

     31-35岁

     年龄段4

     36-40岁

     年龄段5

     40岁以上

     标签库设计:

     标签库的设计,主要是针对应用市场上主流的App,对App进行分类,App分类信息包括:App名称,男女权重信息,各个年龄段的权重信息。

     AppID

     App名称

     男性权重

     女性权重

     年龄段1

     年龄段2

     年龄段3

     年龄段4

     年龄段5

     见appTab表:

     10001|QQ|0.001|0.001|0|0.2|0.3|0.2|0.3

     10002|飞信|0.001|0.001|0|0.2|0.3|0.2|0.3

     10003|MSN|0.001|0.001|0|0.2|0.3|0.2|0.3

     10004|阿里旺旺|0.001|0.001|0|0.2|0.3|0.2|0.3

     10005|微信|0.001|0.001|0|0.2|0.3|0.2|0.3

     10006|陌陌|0.001|0.001|0|0.2|0.3|0.2|0.3

     10007|米聊|0.001|0.001|0|0.2|0.3|0.2|0.3

     10008|啪啪|0.001|0.001|0|0.2|0.3|0.2|0.3

     10009|飞聊|0.001|0.001|0|0.2|0.3|0.2|0.3

     10010|来往|0.001|0.001|0|0.2|0.3|0.2|0.3

     10011|连我|0.001|0.001|0|0.2|0.3|0.2|0.3

     10012|有你|0.001|0.001|0|0.2|0.3|0.2|0.3

     用户性别、年龄识别过程:

     必备条件:性别比例、年龄比例必须在识别出AppID后进行,如果AppID编号为空,则不做处理。

     性别和年龄的判断,都依赖于标签库的设计,也就是用户手机安装的App,根据手机App计算用户的性别和年龄权重信息,最后判断用户的年龄和性别。

     源代码:

     对男女性别的计算:

     public void protraitSex(double male2, double female2, long times) {

      double sum = (this.male + this.female + (male2 + female2) * times);

      if(sum != 0){

      this.male = (this.male + male2 * times) / sum;

      this.female = (this.female + female2 * times) / sum;

      }

      }

     2、对年龄段的计算:

     public void protraitAge(double pAge1, double pAge2, double pAge3, double pAge4, double pAge5, long times) {

      double sum = (age1 + age2 + age3 + age4 + age5 ) // 之前的APP的 + (pAge1 + pAge2 + pAge3 + pAge4 + pAge5 ) * times;// 当前的APP的 if(sum != 0){

      this.age1 = (pAge1 * times + age1) / sum;

      this.age2 = (pAge2 * times + age2) / sum;

      this.age3 = (pAge3 * times + age3) / sum;

      this.age4 = (pAge4 * times + age4) / sum;

      this.age5 = (pAge5 * times + age5) / sum;

      }

      }

     表结构:用户画像本体表

     字段名

     类型

     长度

     默认值

     说明

     备注

     日期

     记录历史时间

     MSISDN

     byte

     16

     全F

     手机号

     男性权重

     女性权重

     年龄段1权重

     年龄段2权重

     年龄段3权重

     年龄段4权重

     年龄段5权重

     汇总周期:每天汇总一次,建议当天凌晨统计前一天数据

     画像数据:+2SJcwT8h0TSsxVd2pBMjA==|0.508|0.492|0.1|0.2|0.2|0.2|0.3|+2YYprC2jdMfQntMAn8lmA==|0.4|0.6|0.0|0.1|0.3|0.3|0.3|+2k9y/1uapW4IW6LUq0LGQ==|0.7|0.3|0.0|0.2|0.3|0.2|0.3|+3M/cSZerfq+XDC9kMWWcA==|0.5|0.5|0.1|0.2|0.2|0.2|0.3|+3NZW71R8R8nL78M3JB8tw==|0.5|0.5|0.1|0.2|0.2|0.2|0.3|+40FbnopHa5sY/CzDDf8cg==|0.5|0.5|0.0|0.2|0.3|0.2|0.3|+5k9calLrKDGvHyzvO0pvg==|0.5|0.5|0.1|0.2|0.2|0.2|0.3|+5wU5NlU1iJUZ5sMN91DUw==|0.5|0.5|0.2|0.2|0.2|0.2|0.2|+69Ng7CRkKTr2hbYtgeiAw==|0.8|0.2|0.0|0.2|0.3|0.2|0.3|+6YeD7QUw8Hy6qN7Dxk7vQ==|0.8|0.2|0.0|0.2|0.3|0.2|0.3|+A4H4S++fiGw3pKi8xpwrw==|0.698|0.302|0.0|0.199|0.3|0.201|0.3|+AJEIaelS8LGbHqdDaorzg==|0.7|0.3|0.0|0.6|0.3|0.05|0.05|+AbbMhECgaMivqZBr/U+Aw==|0.5|0.5|0.1|0.2|0.2|0.2|0.3|

     用户画像本体表数据入库hbase

     创建hbase表:

     create 'user_draw',{NAME=>'draw',VERSIONS=>1,BLOCKCACHE=>true,BLOOMFILTER=>'ROW',COMPRESSION=>'SNAPPY'},{SPLITS => ['/','+','0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z']}

     入库hbase代码:

      for (Text v2 : val) {

      String[] splited = v2.toString().split("\\|");

      //rowkey

      if(k2.toString().length()!=0){

      Put put = new Put(Bytes.toBytes(k2.toString()));

     

      //跳过写入Hlog,提高写入速度

      put.setDurability(Durability.SKIP_WAL);

      put.add(Bytes.toBytes("draw"), Bytes.toBytes("mdn"), Bytes.toBytes(splited[1]));

      put.add(Bytes.toBytes("draw"), Bytes.toBytes("male"), Bytes.toBytes(splited[2]));

      put.add(Bytes.toBytes("draw"), Bytes.toBytes("female"), Bytes.toBytes(splited[3]));

      put.add(Bytes.toBytes("draw"), Bytes.toBytes("age1"), Bytes.toBytes(splited[4]));

      put.add(Bytes.toBytes("draw"), Bytes.toBytes("age2"), Bytes.toBytes(splited[5]));

      put.add(Bytes.toBytes("draw"), Bytes.toBytes("age3"), Bytes.toBytes(splited[6]));

      put.add(Bytes.toBytes("draw"), Bytes.toBytes("age4"), Bytes.toBytes(splited[7]));

      put.add(Bytes.toBytes("draw"), Bytes.toBytes("age5"), Bytes.toBytes(splited[8]));

      context.write(NullWritable.get(), put);

      }

     

      }

     用户画像程序执行

     程序运行环境:hadoop集群、zookeeper、hbase。

     appTab.txt规则库表hdfs路径:/home/appTab.txt

     程序执行jar包:userdraw.jar

     程序执行命令:hadoop jar userdraw.jar 数据输入路径 job1输出路径 job2输出路径

     文件编码问题需要注意!!!

    相关关键词: 对班子成员画像
    相关热词搜索: 对班子成员画像 画像 文档 用户

    • 范文大全
    • 教案下载
    • 优秀作文
    • 励志
    • 课件
    • 散文
    • 名人名言