【CDH数仓】Day01:概念、环境搭建、CDH数仓搭建、用户行为数仓搭建


一、数仓之Cloudera Manager
1、CM简介
拥有集群自动化安装、中心化管理、集群监控、报警功能的一个工具
快速安装,快速运维,提高集群的效率

CM架构

2、阿里云服务器准备
注册账号
购买ECS云服务器
ECS配置及安全组修改(开放各服务的端口)
3、CM部署准备
服务器连接
修改hosts文件
通过生成公钥和私钥配置SSH免密登录
编写集群同步脚本xsync
编写集群整体操作脚本vim xcall.sh
关闭防火墙和SELINUX
配置NTP时钟同步
4、CM安装部署
安装JDK
安装MySQL及其驱动(hadoop102上操作)
搭建本地yum源安装CM
进入/var/www/html/路径,并开启http服务
安装并修改CM配置文件
在MySQL中建数据库
启动服务:systemctl start cloudera-scm-server
查看日志并访问web ui
关闭服务
二、数仓之CDH
1、选择使用版本
免费版
2、部署CDH集群
选定物理节点
添加本地parcel库
自定义安装组件
角色分布


测试数据库连接
三、数仓搭建环境准备
1、Flume 安装部署
添加服务

选择依赖及部署节点
2、Sqoop安装部署
3、配置Hadoop支持LZO

配置-gplextras parcel库的url
Parcel列表中出现了GPLEXTERAS,依次点击下载、分配、激活
修改HDFS配置压缩编码解码器,加入com.hadoop.compression.lzo.LzopCodec
配置Hive 辅助 JAR 目录
修改Sqoop配置,配置项中搜索“sqoop-conf/sqoop-env.sh 的 Sqoop 1 Client 客户端高级配置代码段(安全阀)
4、修改yarn配置参数
配置内存大小“yarn.nodemanager.resource.memory-mb”,修改成4G
“yarn.scheduler.maximum-allocation-mb”,修改成2G
重启相关组件
5、HUE使用概述
HUE=Hadoop User Experience(Hadoop用户体验),Hadoop的UI系统
http://hadoop102:8888(未优化)或http://hadoop102:8889(优化)
6、HUE用户管理
新建一个用户组——hive,并添加hive用户
四、数仓之用户行为数仓搭建
1、用户行为日志生成
分发jar包log-collector-1.0-SNAPSHOT-jar-with-dependencies.jar
并启动lg.sh脚本(将打印的数据读入)
2、日志数据导入数仓
日志采集Flume配置

Flume拦截器:ETL拦截器LogETLInterceptor(编写工具类调用)、日志类型区分拦截器LogTypeInterceptor
ETL拦截器主要用于,过滤时间戳不合法和Json数据不完整的日志
日志类型区分拦截器主要用于,将启动日志和事件日志区分开来,方便发往Kafka的不同Topic。
拦截器打包放入lib目录并进行分发
消费Kafka Flume配置

调用日志生成脚本lg.sh
#! /bin/bash
for i in hadoop102 hadoop103
do
ssh $i " source /etc/profile ; java -classpath /opt/module/log-collector-1.0-SNAPSHOT-jar-with-dependencies.jar com.atguigu.appclient.AppMain $1 $2 >/opt/module/test.log &"
done
3、ODS层-原始数据层,存放原始数据
创建数据库:创建数据仓库目录、修改hive配置并启动、创建并使用gmall数据库
创建启动日志表ods_start_log
ODS层加载数据脚本:将指定日期数据加入表中
4、DWD层启动表数据解析
创建启动表、DWD层启动表加载数据脚本dwd_start_log.sh
5、DWS层(需求:用户日活跃)
统计当日、当周、当月活动的每个设备明细

编写加载数据脚本
6、ADS层(需求:用户日活跃)
目标:当日活跃设备数
编写ADS层加载数据脚本
#!/bin/bash # 定义变量方便修改
APP=gmall # 如果是输入的日期按照取输入日期;如果没输入日期取当前时间的前一天
if [ -n "$1" ] ;then
do_date=$1
else
do_date=`date -d "-1 day" +%F`
fi sql="
set hive.exec.dynamic.partition.mode=nonstrict; insert into table "$APP".ads_uv_count
select
'$do_date' dt,
daycount.ct
from
(
select
'$do_date' dt,
count(*) ct
from "$APP".dws_uv_detail_day
where dt='$do_date'
)daycount;
" beeline -u "jdbc:hive2://hadoop102:10000/" -n hive -e "$
增加执行权限并使用:ads_uv_log.sh 2019-09-03
【CDH数仓】Day01:概念、环境搭建、CDH数仓搭建、用户行为数仓搭建的更多相关文章
- 【Hadoop离线基础总结】CDH版本Hadoop 伪分布式环境搭建
CDH版本Hadoop 伪分布式环境搭建 服务规划 步骤 第一步:上传压缩包并解压 cd /export/softwares/ tar -zxvf hadoop-2.6.0-cdh5.14.0.tar ...
- Cloudera Manager安装_搭建CDH集群
2017年2月22日, 星期三 Cloudera Manager安装_搭建CDH集群 cpu 内存16G 内存12G 内存8G 默认单核单线 CDH1_node9 Server || Agent ...
- 搭建 CDH 版本hive
搭建一个完整的cdh 的版本,由于涉及的产品和步骤太多,在客户那里部署环境时,很容易出现意外,所以如果只是需要部署一个测试环境来进行验证,我们没有必要完完整整的部署整个cdh. 下面是通过命令行的 ...
- CentOS7安装CDH 第十一章:离线升级CDH版本
相关文章链接 CentOS7安装CDH 第一章:CentOS7系统安装 CentOS7安装CDH 第二章:CentOS7各个软件安装和启动 CentOS7安装CDH 第三章:CDH中的问题和解决方法 ...
- Material Design 概念,环境和基本属性
Material Design 概念,环境和基本属性 Material Design是随Android 5.0推出的一种设计概念, 涉及到了跨平台和设备的视觉,动态,交互设计等方面. 设计概念 M ...
- 记一次生产环境tomcat线程数打满情况分析
前言 旨在分享工作中遇到的各种问题及解决思路与方案,与大家一起学习. -- 学无止境, 加油 ! Just do it ! 问题描述 运行环境描述 tomcat-8.5 单节点(该应用集群20个节点) ...
- 转载:IIS 之 连接数、并发连接数、最大并发工作线程数、队列长度、最大工作进程数
一.IIS连接数 一般购买过虚拟主机的朋友都熟悉购买时,会限制IIS连接数,顾名思义即为IIS服务器可以同时容纳客户请求的最高连接数,准确的说应该叫“IIS限制连接数”. 客户请求的连接内容包括: [ ...
- IIS 之 连接数、并发连接数、最大并发工作线程数、队列长度、最大工作进程数
一.IIS连接数 一般购买过虚拟主机的朋友都熟悉购买时,会限制IIS连接数,顾名思义即为IIS服务器可以同时容纳客户请求的最高连接数,准确的说应该叫“IIS限制连接数”. 客户请求的连接内容包括: [ ...
- 异数OS 星星之火(三)--异数OS-织梦师云 微服务编写入门
. 异数OS 星星之火(三)–异数OS-织梦师云 微服务编写入门 本文来自异数OS社区 github: https://github.com/yds086/HereticOS 异数OS社区QQ群: 6 ...
- 一个int 数组,里面数据无任何限制,要求求出所有这样的数a[i],其左边的数都小于等于它,右边的数都大于等于它。能否只用一个额外数组和少量其它空间实现。
一个int数组, 比如 array[],里面数据无任何限制,要求求出 所有这样的数array[i],其左边的数都小于等于它,右边的数都大于等于它.能否只用一个额外数组和少量其它空间实现. 分析:这题很 ...
随机推荐
- acme.sh官方中文说明文档
转载自:https://github.com/acmesh-official/acme.sh/wiki/说明 acme.sh 实现了 acme 协议, 可以从 letsencrypt 生成免费的证书. ...
- 使用工具SecureCRT通过ssh远程连接Windows server 2019
Windows Server 2019 开通SSH Server服务 在需要安裝的ws2019开启powershell,执行安装 openssh server 指令 Add-WindowsCapabi ...
- Pyhton实践项目之(一)五子棋人机对战
1 """五子棋之人机对战""" 2 3 import random 4 import sys 5 6 import pygame 7 im ...
- 换工作?试试远程工作「GitHub 热点速览 v.22.40」
近日,潜在某个技术交流群的我发现即将毕业的小伙伴在焦虑实习.校招,刚好本周 GitHub 热榜有个远程工作项目.不妨大家换个思路,"走"出去也许有更多的机会.当然,除了全球的远程工 ...
- .Net CLR异常简析
楔子 前面一篇研究了下C++异常的,这篇来看下,CLR的异常内存模型,实际上都是一个模型,承继自windows异常处理机制.不同的是,有VC编译器(vcruntime.dll)接管的部分,被CLR里面 ...
- Java注解(1):码农的小秘
很多码农在写代码的时候不太爱写注释,结果任务一多,时间一长,需求一改,就完全不知道当初自己都干了些啥了.好在现在大多数编程语言都有注释功能,能够在代码里面做一些备注,不至于时间长了忘掉.但这些注释只是 ...
- python学习笔记----必备知识
一.必备知识 二.流程控制 https://blog.csdn.net/weixin_43304253/article/details/120778228 1.1语法特点: 1.1.1 代码注释 单行 ...
- F118校准(二)-- 操作步骤(使用PX01 PG点屏,并使用PX01 PG校准F118)
1. 准备工作 硬件连接: CA310通过USB线材连接PC PX01通过USB线材连接PC F118通过灰排线连接PX01左上角的GPIO扩展口(如下图所示) LCM连接PX01 启动LcdTool ...
- 29.渲染器Renderer
什么是渲染器 渲染器就是将服务器生成的数据格式转为http请求的格式 渲染器触发及参数配置 在DRF配置参数中,可用的渲染器作为一个类的列表进行定义 但与解析器不同的是,渲染器的列表是有顺 ...
- Dapr实现.Net Grpc服务之间的发布和订阅,并采用WebApi类似的事件订阅方式
大家好,我是失业在家,正在找工作的博主Jerry,找工作之余,总结和整理以前的项目经验,动手写了个洋葱架构(整洁架构)示例解决方案 OnionArch.其目的是为了更好的实现基于DDD(领域驱动分析) ...