一、数仓之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数仓搭建、用户行为数仓搭建的更多相关文章

  1. 【Hadoop离线基础总结】CDH版本Hadoop 伪分布式环境搭建

    CDH版本Hadoop 伪分布式环境搭建 服务规划 步骤 第一步:上传压缩包并解压 cd /export/softwares/ tar -zxvf hadoop-2.6.0-cdh5.14.0.tar ...

  2. Cloudera Manager安装_搭建CDH集群

    2017年2月22日, 星期三 Cloudera Manager安装_搭建CDH集群 cpu   内存16G 内存12G 内存8G 默认单核单线 CDH1_node9 Server  || Agent ...

  3. 搭建 CDH 版本hive

    搭建一个完整的cdh 的版本,由于涉及的产品和步骤太多,在客户那里部署环境时,很容易出现意外,所以如果只是需要部署一个测试环境来进行验证,我们没有必要完完整整的部署整个cdh.   下面是通过命令行的 ...

  4. CentOS7安装CDH 第十一章:离线升级CDH版本

    相关文章链接 CentOS7安装CDH 第一章:CentOS7系统安装 CentOS7安装CDH 第二章:CentOS7各个软件安装和启动 CentOS7安装CDH 第三章:CDH中的问题和解决方法 ...

  5. Material Design 概念,环境和基本属性

    Material Design 概念,环境和基本属性 Material Design是随Android 5.0推出的一种设计概念, 涉及到了跨平台和设备的视觉,动态,交互设计等方面.   设计概念 M ...

  6. 记一次生产环境tomcat线程数打满情况分析

    前言 旨在分享工作中遇到的各种问题及解决思路与方案,与大家一起学习. -- 学无止境, 加油 ! Just do it ! 问题描述 运行环境描述 tomcat-8.5 单节点(该应用集群20个节点) ...

  7. 转载:IIS 之 连接数、并发连接数、最大并发工作线程数、队列长度、最大工作进程数

    一.IIS连接数 一般购买过虚拟主机的朋友都熟悉购买时,会限制IIS连接数,顾名思义即为IIS服务器可以同时容纳客户请求的最高连接数,准确的说应该叫“IIS限制连接数”. 客户请求的连接内容包括: [ ...

  8. IIS 之 连接数、并发连接数、最大并发工作线程数、队列长度、最大工作进程数

    一.IIS连接数 一般购买过虚拟主机的朋友都熟悉购买时,会限制IIS连接数,顾名思义即为IIS服务器可以同时容纳客户请求的最高连接数,准确的说应该叫“IIS限制连接数”. 客户请求的连接内容包括: [ ...

  9. 异数OS 星星之火(三)--异数OS-织梦师云 微服务编写入门

    . 异数OS 星星之火(三)–异数OS-织梦师云 微服务编写入门 本文来自异数OS社区 github: https://github.com/yds086/HereticOS 异数OS社区QQ群: 6 ...

  10. 一个int 数组,里面数据无任何限制,要求求出所有这样的数a[i],其左边的数都小于等于它,右边的数都大于等于它。能否只用一个额外数组和少量其它空间实现。

    一个int数组, 比如 array[],里面数据无任何限制,要求求出 所有这样的数array[i],其左边的数都小于等于它,右边的数都大于等于它.能否只用一个额外数组和少量其它空间实现. 分析:这题很 ...

随机推荐

  1. 车辆稳定性辅助(VSA)系统

    当车辆转弯大于或小于预期时,VSA有助于在转弯时稳定车辆. 同时还有助于在湿滑路面上保持牵引力. VSA 打开和关闭 禁用: 请长按按钮直至听到哔的一声.VSA 关闭指示灯点亮. 恢复: 按下按钮直至 ...

  2. Elasticsearch单字段支持的最大字符数

    ignore_above的作用 ES中用于设置超过设定字符后,不被索引或者存储. 当字符超过给定长度后,能否存入 keyword类型的最大支持的长度为--32766个UTF-8类型的字符. 也就是说t ...

  3. 存储卷PersistentVolume

    概述 与管理计算资源相比,管理存储资源是一个完全不同的问题.为了更好的管理存储,Kubernetes 引入了 PersistentVolume 和 PersistentVolumeClaim 两个概念 ...

  4. python中限定导入的子模块

    如果包定义文件__init__.py中存在一个叫做__all__的列表变量,那么在使用from package import *的时候就把这个列表中的所有名字作为要导入的模块名. 例如在example ...

  5. 2_jQuery

    一. jQuery介绍 1.1 什么是jQuery jQuery, 顾名思义, 也就是JavaScript和查询(Query), 它就是辅助JavaScript开发的js类库 1.2 jQuery核心 ...

  6. c#-03关于类和继承的基本知识

    一.类继承 通过类继承可以定义一个新类,新类纳入一个已经声明的类进行扩展 已经存在的类叫做基类,而通过继承出的类叫做派生类,派生类的组成为: 本身声明中的成员 基类的成员 派生类无法删除基类成员,但可 ...

  7. gin项目部署到服务器并后台启动

    前言 我们写好的gin项目想要部署在服务器上,我们应该怎么做呢,接下来我会详细的讲解一下部署教程. 1.首先我们要有一台虚拟机,虚拟机上安装好go框架. 2.将写好的项目上传到虚拟机上. 3.下载好项 ...

  8. OnionArch - 采用DDD+CQRS+.Net 7.0实现的洋葱架构

    博主最近失业在家,找工作之余,看了一些关于洋葱(整洁)架构的资料和项目,有感而发,自己动手写了个洋葱架构解决方案,起名叫OnionArch.基于最新的.Net 7.0 RC1, 数据库采用Postgr ...

  9. vulnhub靶场之RED: 1

    准备: 攻击机:虚拟机kali.本机win10. 靶机:RED: 1,地址我这里设置的桥接,,下载地址:https://download.vulnhub.com/red/Red.ova,下载后直接Vi ...

  10. react.js 实现音乐播放、下一曲、以及删除歌曲(仅播放列表)

    import React, { Component } from 'react'; export default class Music extends Component {   construct ...