![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
BigData项目【初学】
项目
江湖侠客
这个作者很懒,什么都没留下…
展开
-
电商用户行为分析项目 第7节 订单支付监控CEP实现
上篇:电商用户行为分析项目 第6节 恶意登录监控CEP实现模块创建和数据准备同样地,在UserBehaviorAnalysis下新建一个 mavenmodule作为子项目,命名为OrderTimeoutDetect。在这个子模块中,我们同样将会用到flink的CEP库来实现事件流的模式匹配,所以需要在pom文件中引入CEP的相关依赖1、创建一个新的子模块 (OrderTimeout...原创 2020-02-26 16:08:21 · 340 阅读 · 0 评论 -
电商用户行为分析项目 第6节 恶意登录监控CEP实现
上篇:电商用户行为分析项目 第5节 恶意登录监控1、CEP编程上一节的代码实现中我们可以看到,直接把每次登录失败的数据存起来、设置定时器一段时间后再读取,这种做法尽管简单,但和我们开始的需求还是略有差异的。这种做法只能隔2秒之后去判断一下这期间是否有多次失败登录,而不是在一次登录失败之后、再一次登录失败时就立刻报警。这个需求如果严格实现起来,相当于要判断任意紧邻的事件,是否符合某种模式。这...原创 2020-02-26 14:49:15 · 277 阅读 · 0 评论 -
电商用户行为分析项目 第5节 恶意登录监控
上篇:电商用户行为分析项目 第4节 实时流量统计1、创建一个子模块LoginFailDetect(1)创建步骤子模块LoginFailDetect创建ok(2)添加pom文件依赖继续在UserBehaviorAnalysis下新建一个 maven module作为子项目,命名为LoginFailDetect。在这个子模块中,我们将会用到flink的CEP库来实现事件流的模式匹配...原创 2020-02-26 11:36:36 · 191 阅读 · 0 评论 -
电商用户行为分析需求梳理
1、基于flink的 电商用户行为数据分析内容主要有:批处理和流处理电商用户行为分析数据源解析项目模块划分1.1、批处理和流处理批处理:批处理主要操作大容量静态数据集,并在计算过程完成后返回结果。可以认为,处理的是用一个固定时间间隔分组的数据点集合。批处理模式中使用的数据集通常符合下列特征:有界:批处理数据集代表数据的有限集合持久:数据通常始终存储在某种类型的持久...原创 2020-02-26 11:40:50 · 1345 阅读 · 0 评论 -
电商用户行为分析项目 第4节 实时流量统计
上篇:电商用户行为分析项目 第2天 更换Kafka 作为数据源1、模块创建和数据准备在UserBehaviorAnalysis下新建一个 maven module作为子项目,命名为NetworkTrafficAnalysis。在这个子模块中,我们同样并没有引入更多的依赖,所以也不需要改动pom文件。在src/main/目录下,将默认源文件目录java改名为scala。将apache服务器...原创 2020-02-25 21:44:47 · 478 阅读 · 0 评论 -
电商用户行为分析项目 第3节 更换Kafka 作为数据源
上篇:电商用户行为分析项目 第2天 实时热门商品统计1、更换Kafka 作为数据源实际生产环境中,我们的数据流往往是从Kafka获取到的。如果要让代码更贴近生产实际,我们只需将source更换为Kafka即可:val properties = new Properties()properties.setProperty("bootstrap.servers", "localhost:9...原创 2020-02-25 17:43:22 · 300 阅读 · 0 评论 -
电商用户行为分析项目 第2节 实时热门商品统计
上篇:电商用户行为分析项目 第1天 项目框架搭建1、对子工程(HotltemsAnalysis)代码编写(1)编写HotItems类HotItems.scalaimport org.apache.flink.streaming.api.TimeCharacteristicimport org.apache.flink.streaming.api.scala.StreamExecut...原创 2020-02-25 11:36:55 · 343 阅读 · 0 评论 -
电商用户行为分析项目 第1节 项目框架搭建
一、框架搭建流程步骤,如下:1、创建maven工程(父工程:UserBehaviorAnalysis)父工程创建ok2、创建子工程(HotltemsAnalysis)子工程(HotltemsAnalysis),创建ok3、对父工程(HotltemsAnalysis),pom文件依赖:...原创 2020-02-24 21:54:16 · 319 阅读 · 0 评论 -
电信客服综合项目 第4天 Kafka控制台消费Flume采集的生产数据
上篇:电信客服综合项目 第3天 数据采集随机生成主被叫电话号码、项目打包发布到Linux1、数据消费 - Kafka控制台消费Flume采集的生产数据(1)启动zookeeper,再启动kafka集群//先关闭防火墙oot@flink102 ~]# systemctl stop firewalld.service//启动zookeeper [root@flink102 bin]# ...原创 2020-04-01 20:25:50 · 972 阅读 · 0 评论 -
电信客服综合项目 第3天 数据采集随机生成主被叫电话号码、项目打包发布到Linux
上篇:电信客服综合项目 第2天 数据产生与搭建项目结构1、数据生产 - 获取通讯录数据(1)子模块ct-common、ct-producer代码编写代码下载处:BigData0323.zip原本的素材:通过代码业务进行对格式的转换,启动程序,控制台运行如下:2、数据生产 - 随机生成主被叫电话号码基本代码实现:/** * 生产数据 */ ...原创 2020-03-24 13:09:08 · 1243 阅读 · 0 评论 -
电信客服综合项目 第2天 数据产生与搭建项目结构
上篇:电信客服综合项目 第1天 项目背景介绍1、搭建项目结构(1)首先,搭建父工程BigData父工程BigData创建ok(2)创建子模块study-project-ct之后,在study-project-ct工程下,创建一个子模块ct-common...原创 2020-03-23 18:00:55 · 508 阅读 · 1 评论 -
电信客服综合项目 第1天 项目背景介绍
1、项目背景通信运营商每时每刻会产生大量的通信数据,例如通话记录,短信记录,彩信记录,第三方服务资费等等繁多信息。数据量如此巨大,除了要满足用户的实时查询和展示之外,还需要定时定期的对已有数据进行离线的分析处理。例如,当日话单,月度话单,季度话单,年度话单,通话详情,通话记录等等+。我们以此为背景,寻找一个切入点,学习其中的方法论。当前我们的需求是:统计每天、每月以及每年的每个人的通话次数及时长...原创 2020-03-23 10:45:54 · 820 阅读 · 0 评论 -
用户行为数据仓库 第 5 节 业务知识准备
上篇:用户行为数据仓库 第 4 节 DWD层数据解析脚本1、业务术语用户用户以设备为判断标准,在移动统计中,每个独立设备认为是一个独立用户。Android系统根据IMEI号,IOS系统根据OpenUDID来标识一个独立用户,每部手机一个用户。新增用户首次联网使用应用的用户。如果一个用户首次打开某APP,那这个用户定义为新增用户;卸载再安装的设备,不会被算作一次新增。新增用户包括...原创 2020-04-11 17:06:03 · 204 阅读 · 0 评论 -
用户行为数据仓库 第 4 节 DWD层数据解析脚本
上篇:用户行为数据仓库 第 3 节 数仓搭建之DWD层1、脚本编写(1)在hadoop1的/home/MrZhou/bin目录下创建脚本[root@hadoop1 bin]# vim dwd_base_log.sh//在脚本中编写如下内容# 定义变量方便修改APP=gmallhive=/opt/module/hive/bin/hive# 如果是输入的日期按照取输入日期;如果...原创 2020-04-11 16:45:19 · 705 阅读 · 0 评论 -
用户行为数据仓库 第 3 节 数仓搭建之DWD层
上篇:用户行为数据仓库 第 2 节 数仓搭建环境及ODS层加载数据脚本对ODS层数据进行清洗(去除空值,脏数据,超过极限范围的数据,行式存储改为列存储,改压缩格式)。1、DWD层启动表数据解析1.1、创建启动表(1)建表语句hive (gmall)> drop table if exists dwd_start_log;CREATE EXTERNAL TABLE dwd_st...原创 2020-04-11 16:04:58 · 3307 阅读 · 0 评论 -
用户行为数据仓库 第 2 节 数仓搭建环境及ODS层加载数据脚本
上篇:用户行为数据仓库 第 1 节 数仓分层概念Hive架构图集群规划服务器hadoop1.x服务器hadoop2.x服务器hadoop3.xHiveHiveMySQLMySQLHive&MySQL安装详细参照自己上次写的博客MySql安装:CentOS7安装MySQLNavicat MySQL连接Linux下MySQL的问...原创 2020-04-10 15:12:12 · 856 阅读 · 0 评论 -
用户行为数据仓库 第 1 节 数仓分层概念
上篇:用户行为数据采集 第9节 总结1、为什么要分层架构图2、数仓分层架构图3、数据集市与数据仓库概念数据集市与数据仓库的区别4、数仓命名规范ODS层命名为odsDWD层命名为dwdDWS层命名为dwsADS层命名为ads临时表数据库命名为xxx_tmp备份数据数据库命名为xxx_bak...原创 2020-04-09 17:20:37 · 437 阅读 · 0 评论 -
用户行为数据采集 第9节 总结
1、数仓概念总结数据仓库的输入数据源和输出系统分别是什么?输入系统:埋点产生的用户行为数据、JavaEE后台产生的业务数据。输出系统:报表系统、用户画像系统、推荐系统2、项目需求及架构总结集群规模计算框架版本选型(1)Apache:运维麻烦,组件间兼容性需要自己调研。(一般大厂使用,技术实力雄厚,有专业的运维人员)(2)CDH:国内使用最多的版本,但CM不开源,但其...原创 2020-04-09 15:41:07 · 580 阅读 · 0 评论 -
用户行为数据采集 第8节 项目经验之Flume内存优化
1、项目经验之Flume内存优化问题描述:如果启动消费Flume抛出如下异常?ERROR hdfs.HDFSEventSink: process failedjava.lang.OutOfMemoryError: GC overhead limit exceeded解决方案步骤:(1) 在hadoop1.x服务器的flume/conf/flume-env.sh文件中增加如下配置e...原创 2020-04-10 11:51:08 · 461 阅读 · 0 评论 -
用户行为数据采集 第7 节 Kafka压力测试、消费数据flume
上篇:电商数仓 第6节 数仓采集Kafka Manager安装脚本测试1、项目经验之Kafka压力测试Kafka压测用Kafka官方自带的脚本,对Kafka进行压测。Kafka压测时,可以查看到哪个地方出现了瓶颈CPU,内存,网络IO)。一般都是网络IO达到瓶颈kafka-consumer-perf-test.shkafka-producer-perf-test.shKafk...原创 2020-04-10 11:49:38 · 424 阅读 · 0 评论 -
用户行为数据采集 第6节 数仓采集Kafka Manager安装脚本测试
上篇:电商数仓 第5节 日志采集分析、ETL拦截器、分类型拦截器及脚本编写1、Kafka安装架构图Kafka集群安装详见:参照自己上次写的博客:Kafka集群部署集群规划:服务器hadoop1.x服务器hadoop2.x服务器hadoop2.xKafkaKafkaKafkaKafkaKafka集群启动停止脚本在/home/MrZhou/bi...原创 2020-04-08 17:47:05 · 306 阅读 · 0 评论 -
用户行为数据采集 第5节 日志采集分析、ETL拦截器、分类型拦截器及脚本编写
1、Flume采集安装Flume上传Flume压缩包[root@hadoop1 hadoop]# lltotal 54408-rw-r--r--. 1 root root 55711670 Apr 3 06:25 apache-flume-1.7.0-bin.tar.gz解压Flume[root@hadoop1 hadoop]# tar -zxvf apache-flu...原创 2020-04-08 11:31:24 · 370 阅读 · 0 评论 -
用户行为数据采集 第4 节 完全分布式的 zk、 xcall、dt、lg脚本编写
上篇:电商数仓 第 3 节 项目经验之Hadoop参数调优1、Zookeeper安装详见参照:zookeeper分布式安装部署集群规划服务器flink105服务器flink106服务器flink107ZookeeperZookeeperZookeeperZookeeper2、编写ZK集群脚本(1)创建一个普通用户名//创建用户名:MrZhou[...原创 2020-04-06 21:03:57 · 241 阅读 · 0 评论 -
用户行为数据采集 第 3 节 项目经验之Hadoop参数调优
上篇:电商数仓 第2节 基准测试1、 HDFS参数调优hdfs-site.xml(1)dfs.namenode.handler.count=20 * log2(Cluster Size),比如集群规模为8台时,此参数设置为60The number of Namenode RPC server threads that listen to requests from clients. If...原创 2020-04-03 17:58:39 · 143 阅读 · 0 评论 -
用户行为数据采集 第2节 基准测试
上篇:电商数仓 第1节 数据采集–日志生成代码编写1、Hadoop安装详见:hadoop集群搭建(完全分布式详细版)1)集群规划:服务器flink105服务器flink106服务器flink107HDFSNameNode DataNodeDataNodeDataNode SecondaryNameNodeYarnNodeManagerResourc...原创 2020-04-03 16:27:19 · 253 阅读 · 0 评论 -
用户行为数据采集 第1节 日志生成代码编写
文档简述,参看:1、创建Maven工程创建log-collector工程创建ok,如图所示:log-collector模块代码编写在pom.xml文件中添加如下内容 <!--版本号统一--> <properties> <slf4j.version>1.7.20</slf4j.version> ...原创 2020-04-03 15:26:24 · 377 阅读 · 0 评论 -
爱奇艺实时项目统计 第1 节 技术点及互联网访问日志概述
1、需求说明今天到现在为止的每个类别的访问量今天到现在为止从搜索引擎引流过来的类别的访问量今天到现在为止每个栏目下面的销售额今天到现在为止每个省份的购买量2、项目使用的技术点:简述:javaweb服务器模仿数据后有一个队列,但同时是有多台服务器,也就是有多个队列,我们这里部署是三台服务器,也就是说有三个队列。我们在javaweb服务器也都安装了flume。之所以在...原创 2020-04-13 17:32:20 · 425 阅读 · 0 评论 -
大数据之实时项目 第11天 canal安装&canal代码&kafka发送
上篇:大数据之实时项目 第10天 es查询分时1、为什么要用canal?作用:同步mysql使用canal的理由做拉链表某些情况无法从日志中获取信息,而又无法利用sqoop等EL工具对数据实时的监控更新redis2、canal工作原理如图所示:·canal的工作原理很简单,就是把自己伪装成slave,假装从master复制数据。3、了解my...原创 2020-03-21 12:38:41 · 450 阅读 · 0 评论 -
大数据之实时项目 第10天 es查询分时
上篇:大数据之实时项目 第9天 es 查询总数1、查询分时代码基本实现PublisherService.javapackage com.study.gmall0315publisher.service;import java.util.Map;public interface PublisherService { //查看总数接口 public Intege...原创 2020-03-18 23:14:44 · 196 阅读 · 0 评论 -
大数据之实时项目 第9天 es 查询总数
上篇:大数据之实时项目 第8天 es保存1、kibana基本操作(1)过滤查询,按条件查询,如查询日期,执行语句GET gmall0315_dau/_search{ "query":{ "bool": { "filter": { "term": { "logDate": "2020-03-18" } ...原创 2020-03-18 17:11:07 · 838 阅读 · 0 评论 -
大数据之实时项目 第8天 es保存
上篇:大数据之实时项目 第7天 es安装说明1、在kibana基本操作如图所示:(1)创建表结构编写代码:创建结构数据PUT gmall0315_test/_doc/1{ "name":"zhangsan", "age":23, "amout":250.1}(2)查询数据如图所示:其中:text:表示分词作用:全文配配、占空间大(磁盘、内存)ke...原创 2020-03-17 18:37:44 · 529 阅读 · 0 评论 -
大数据之实时项目 第7天 es安装说明
上篇:大数据之实时项目 第6天 利用redis进行去重1、为什么要用ES?redismysqlelasticsearchhbasehadoop/hive容量/容量扩展低中较大海量海量查询时效性极高中等较高中等低查询灵活性较差 k-v模式非常好,支持sql较好,关联查询较弱,但是可以全文检索,DSL语言可以处理过滤、匹配、排序、...原创 2020-03-16 22:43:12 · 171 阅读 · 0 评论 -
大数据之实时项目 第6天 利用redis进行去重
上篇:大数据之实时项目–第5天 (kafka消费)1、代码编写(1)利用redis进行去重过滤基本代码实现 //利用redis进行去重过滤 val filteredDstream: DStream[Startuplog] = startuplogStream.transform { rdd => println("过滤前:"+rdd.count()) ...原创 2020-03-16 22:13:35 · 712 阅读 · 0 评论 -
大数据之实时项目--第5天 (kafka消费)
上篇:大数据之实时项目–第3天 ( Nginx)1、realtime工程构建,(1)步骤图(2)realtime工程的pom.xml文件添加jar文件依赖:<dependencies> <dependency> <groupId>com.study.gmall20200213</groupId...原创 2020-02-16 20:24:11 · 287 阅读 · 0 评论 -
大数据之实时项目--第4天 ( Nginx)
上篇:大数据之实时项目–第3天 ( 日志服务器搭建)1、Nginx是什么定义:Nginx (“engine x”) 是一个高性能的HTTP和反向代理服务器,特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。2、nginx与tomcat之间的关系:除了tomcat以外,ap...原创 2020-02-15 23:36:13 · 233 阅读 · 0 评论 -
大数据之实时项目--第3天 ( 日志服务器搭建)
上篇:大数据之实时项目–第2天 ( 日志保存)1、在springboot工程(1)在pom.xml文件添加依赖:<dependency> <groupId>org.springframework.kafka</groupId> <artifactId>spring-kafka</artifactId> &l...原创 2020-02-15 13:35:17 · 150 阅读 · 0 评论 -
大数据之实时项目--第2天 ( 日志保存)
上篇:大数据之实时项目–第一天 第1节( 项目搭建)1、全局配置设置application.propertiesserver.port=802、创建controller类LoggerController.java代码编写:package com.study.gmall20200213logger.controller;import org.springframe...原创 2020-02-14 23:09:48 · 222 阅读 · 0 评论 -
大数据之实时项目--第1天 ( 项目搭建)
1、打开IDEA工具创建maven工程搭建图,如下:搭建ok,如图所示:项目工程依赖关系,流程图如图表示:2、对创建好的工程jar包引入首先,以上是父工程创建完毕后,我们需要在父工程的pom.xml文件做依赖关系,添加依赖jar文件:<properties> <spark.version>2.1.1</spark.version>...原创 2020-02-13 23:10:28 · 287 阅读 · 0 评论