Zookeeper_笔记
sqoop 、datax
superset:数据可视化:1.大屏 :没有下拉框
2.报表:数据较全 有下拉框
3.图标:
1.维度,2.指标
hive 如何做数据可视化 :将宽表数据 导入 mysql / clickhouse
hive fetch 抓取策略:调优相关
开启本地执行:
hive.exec.mode.local.auto
hive.exec.mode.local.auto.inputbytes.max
hive.exec.mode.local.auto.tasks.max
hive.exec.mode.local.auto.input.files.max
xxl+报警
1.钉钉、微信、企业微信
2.邮箱、短信、电话
java 代码方式 可以向邮箱发送 excel 数据
fetch抓取策略的参数:
hive.fetch.task.conversion more
map task 数量 由splitsize 决定,相关参数:
set mapreduce.input.fileinputformat.split.maxsize=10
reduce task 数量相关参数:
set hive.exec.reducers.bytes.per.reducer=
set hive.exec.reducers.max=
set mapreduce.job.reduces=
hive.optimize.ppd
hive.optimize.cp
调优参数地址:
https://cwiki.apache.org/confluence/display/Hive/Configuration+Properties
zookeeper:
1.官网:https://zookeeper.apache.org/
2.概念:
zookeeper是分布式协调服务
分布式系统:多个节点构成的系统
3.部署zookeeper
1.单点
2.分布式
zk的机器台数 2N+1 奇数台
zk:主从架构
leader fllower
安装包地址:https://dlcdn.apache.org/zookeeper/zookeeper-3.8.0/apache-zookeeper-3.8.0-bin.tar.gz
解压: tar -zxvf apache-zookeeper-3.8.0-bin.tar.gz -C ~/app/
软连接:ln -s apache-zookeeper-3.8.0-bin/ zookeeper
配置环境变量:
#ZK_HOME
export ZK_HOME=/home/hdaoop/app/zookeeper
export PATH= P A T H : {PATH}: PATH:{ZK_HOME}/bin
单点余下步骤:
1.conf/zoo.cfg
dataDir=/home/hadoop/data/zookeeper/
2.启动zookeeper
nohup zkServer.sh start &
分布式余下步骤:
1.conf/zoo.cfg
dataDir=/home/hadoop/data/zookeeper/
server.1=bigdata32:2888:3888
server.2=bigdata33:2888:3888
server.3=bigdata34:2888:3888
2.myid
指定 zk的机器号
bigdata14 1
bigdata15 2
xsync apache-zookeeper-3.8.0-bin/
xsync zookeeper
xsync ~/.bashrc
启动zk:三台一起操作:
zkServer.sh start
脚本编写:
启动zk集群脚本:使用ssh远程登录并执行
case $1 in
"start")
for host in bigdata32 bigdata33 bigdata34
do
echo "====${host}==="
ssh ${host} "/home/hadoop/app/zookeeper/bin/zkServer.sh start"
done
;;
"stop")
for host in bigdata32 bigdata33 bigdata34
do
echo "====${host}==="
ssh ${host} "/home/hadoop/app/zookeeper/bin/zkServer.sh stop"
done
;;
"status")
for host in bigdata32 bigdata33 bigdata34
do
echo "====${host}==="
ssh ${host} "/home/hadoop/app/zookeeper/bin/zkServer.sh status"
done
;;
*)
echo "Usage:$0 <start|stop|status>"
;;
esac
补充:
xxl.sh => window
上传 linux
问题: window机器的分隔符 和 linux机器分隔符 不匹配
crlf
lf
vscode:
nodpad++
sublitme
editpuls
解决:
dos2unix => windos机器上的文件 格式 转变成linux格式
yum install -y dos2unix
dos2unix filename
1.zk是用来做什么的?
1.管理配置信息的 【数据量小】
2.watch(监控) 配置信息的变化
2.zk数据模型
1. 一个 树形/层级式结构 linux差不多
1.节点/目录
0.根节点 /
1.目录就是节点
2.节点保存数据的内容
3.zk里面所有的目录 都叫做节点 znode
3.zkCli.sh
操作 节点
1.查看有哪些节点
ls [-s] [-w] [-R] path
2.查看节点内容
get /zookeeper
节点:
1.临时节点
节点创建好之后 当前session有效 关闭session 节点就会消失
2.永久节点
节点创建好之后 可以永久存在
3.节点:
下面可以存放子节点
临时节点 下面不能创建子节点
4.
1.zk 每个节点都有自己id 【不会重复的】
2.数据是存放在节点上
3.数据 不是很大的数据 仅仅存放比较小的数据
4.如果存放的数据发生变更 数据版本号也会发生变化
3.创建节点
create [-s] [-e] [-c] [-t ttl] path [data] [acl]
eg1:
create /dl2262 zihang =》 默认创建的就是 永久节点
eg2:
create -e /dl2262-boy zuan 临时节点 ttl 过期时间
eg3:
顺序节点
create -s /dl2262/ziyuan
-s参数默认会给ziyuan节点后面加一个自增的序列号
eg4:
create /bigdata/a/b/c 不能这样创建
zookeeper api: 多级
curator api:多级
4.补充
stat path =》 获取当前节点状态
stat /dl2262
cZxid = 0x300000002
dataVersion = 0
dataLength = 6
numChildren = 0
ephemeralOwner = 0x0
1.数据长度
2.子节点
3.数据版本号
4.是否是临时节点 0x0就代表 不是临时节点 =》 永久节点
5.set 修改数据内容
set /dl2262 yuhang
数据版本 :
如果版本不对应 就会报错
set -v 2 /dl2262 zhiyuan
6.删除节点
[zk: localhost:2181(CONNECTED) 41] ls /
[dl2262, zookeeper]
[zk: localhost:2181(CONNECTED) 42] ls /dl2262
[ziyuan0000000000, ziyuan0000000001, ziyuan0000000002, ziyuan0000000003, ziyuan0000000004]
[zk: localhost:2181(CONNECTED) 43] delete /dl2262/ziyuan0000000000
[zk: localhost:2181(CONNECTED) 44] ls /dl2262
7.监听相关 zk
针对每个节点的操作
1.都有一个 监听器
当你的节点发生变化 就会触发 watch事件
zk shell命令:
1.只能监听一次
了解:
zk api:不行
curator api 可以一直监听某个 节点变化
eg:
[zk: localhost:2181(CONNECTED) 54] get -w /dl2262
[zk: localhost:2181(CONNECTED) 55] set /dl2262 doublehappy
NodeDataChanged
补充:
zk四字命令 =》 运维 监控zk 运行情况
zk_home/conf/zoo.cfg:
4lw.commands.whitelist=*
zookeeper 对外提供服务的端口 对zk进行监控:
stat
echo stat | nc bigdata32 2181
ruok
echo ruok | nc bigdata32 2181
dump
conf
Prometheus => 监控框架
1.组件=》报警
作业: