和记娱乐导航

大数据案例 -- 互联网日志实时收集和实时计算的

发布时间:2020-10-20 10:57 发布人:和记娱乐 来源:h88平台官网

        

 

 

 

     

  作为互联网公司网站监测日志当然是数据的最大来源。我们目前的规模也不大每天的日志量大约1TB。后续90%以上的业务都是需要基于日志来完成之前业务中对实时的要求并不高最多也就是准实时延迟半小时以上因此我们使用Flume将数据收集到HDFS然后进行清洗和分析。

  很快通过Flume流到西安Hadoop集群的数据就遇到了问题比原始数据多或者少一些造成这个问题的主要原因是在网络不稳定的情况下Flume Agent发送到西安Flume Collector的过程中会发送失败或者响应失败。另外之前的数据准实时也不能满足业务的需求。

  为了解决数据实时跨外网传输以及实时业务的问题于是有了现在的架构

  数据在进入Kafka分区的时候使用了Flume的从日志中提取用户ID然后通过HASH取模将数据流到Kafka相应的分区中。这种方式一方面完成了简单的负载均衡另一方面确保相同的用户数据都处于同一个分区中为后面实时计算模块的统计提供了极大的便利。

  如果在HDFS Sink中仅仅使用当前时间来确定HDFS目录和文件名称这样会造成一小部分数据没有写入到正确的目录和文件中比如日志中8点59分59秒的数据可能会被写进HDFS上9点的目录和文件中因为原始数据经过Kafka通过外网传输到西安的Flume有个几秒的延时那是很正常的。

  目前我们实时计算的业务比较简单就是类似于根据不同维度统计PV和UV。比如实时统计一个网站当天的累计PV、UV、IP数等目前我们直接开发的JAVA程序使用streamlib统计这些指标UV和IP数这种需要去重的指标有2%以内的误差业务可以接受。

  由于我们的需求是实时统计当天累计的指标而且能接受一定的误差因此采用这种方式。如果需要精确统计累计去重指标那么可能需要采用其它方式比如精确统计当天实时累计用户数一种简单的办法是在HBase中使用计数器来配合完成。

  如果需要实时统计一小段时间比如十分钟、一小时之内的PV、UV等指标那么可以使用SparkStreaming来完成比较简单。如果单独使用Spark Streaming来完成一天内海量数据的累计去重统计我还不太清楚有什么好的解决办法。

  采集模块的设计、数仓架构的设计、实战需求实现、即席查询的实现,我们针对国内目前广泛使用的Apache原生框架和CDH版本框架进行了分别介绍,Apache原生框架介绍中涉及到的技术框架包括Flume、Kafka、Sqoop、MySql、HDFS、Hive、Tez、Spark、Presto、Druid等,CDH版本框架包括CM的安装部署、Hadoop、Zookeeper、Hive、Flume、Kafka、Oozie、Impala、HUE、Kudu、Spark的安装配置,透彻了解不同版本框架的区别联系,将大

  生态体系进行了系统的,对实际企业数仓项目中可能涉及到的技术点都进行了深入的和探讨。同时穿插了大量数仓基础理论知识,让你在掌握实战经验的同时能够打下的理论基础。 三、课程目标 本课程以国内电商巨头实际业务应用场景为依托,对电商数仓的常见实战指标以及难点实战指标进行了详尽,具体指标包括:每日、周、月活跃设备明细,留存用户比例,沉默用户、回流用户、流失用户统计,最近连续3周活跃用户统计,最近7天内连续3天活跃用户统计,GMV成交总额分析,率及漏斗分析,品牌复购率分析、订单表拉链表的设计等,让学生拥有更直观全面的实战经验。通过对本课程的学习,对数仓项目可以建立起清晰明确的概念,系统全面的掌握各项数仓项目技术,轻松应对各种数仓难题。 四、课程亮点 本课程结合国内多家企业实际项目经验,特别加入了项目架构模块,从集群规模的确定到框架版本选型以及服务器选型,手把手教你从零开始搭建大

  集群。并且总结大量项目实战中会遇到的问题,针对各个技术框架,均有调优实战经验,具体包括:常用Linux运维命令、Hadoop集群调优、Flume组件选型及性能优化、Kafka集群规模确认及关键参数调优。通过这部分学习,助学生迅速成长,获取前沿技术经验,从容解决实战问题。

  统计每天pv,uv的sparkStreaming结合redis结果存入mysql供前端展示 构建大

  到HDFS,然后进行清洗和分析。 后来,根据业务需要,我们有了两个Hadoop集群,并且部署在不同的地方(和西安),而所有的

      和记娱乐,和记h88,h88平台官网

              

/和记娱乐