3-日志解析

日志格式


数据清洗

对日志进行解析,得到ip信息(所在国家、省份和城市)、事件类型等,并且过滤无效日志。将解析后的结果存入HBase,为后续任务提供数据。


HBase结构设计

  • RowKey设计
    1. 访客id+会员id+服务器时间+事件类型,经过CRC32(冗余校验码)编码/Hash编码后作为RowKey。
      • 优点:不会出现热点问题,RowKey长度不算特别长
      • 缺点:无法利用RowKey来明确获取某条数据
    2. 服务器时间戳+访客id,作为RowKey。
      • 优点:方便取值
      • 缺点:热点问题
  • 解决热点问题
    1. 按天分表, RowKey随机,没有特别规律的一个字节数组
    2. 在RowKey(有访问规律)之前加一个随机数字(其实就是HBase服务器数量取模)
    3. 在创建HBase表的时候会进行预分区
  • 本项目HBase表结构
    1. 使用第一种RowKey设计方式:将数据按天分表,这样可以有效的减少HBase Split操作。
    2. 采用单列族的设计方式,列族名为info,通过列标签来区分数据。

你可能感兴趣的:(3-日志解析)