统一报表、商业智能(BI) 大公司会运行很多系统,各种类型报表不统一,不规范,难以维护。
多维分析、建模、数据挖掘
原理:
(1)数据抽取
(2) 数据存储
Hadoop (数仓工具:Hive)
(3)数据访问
开放平台
原来是基于hive,为什么要支持mysql
BI
(4)元数据管理
apache atlas
(5)数据治理
文件传输协议
yum install -y vsftpd
yum -y install ftp
默认安装目录:/etc/vsftpd
# (1) 创建登录FTP服务器的用户
useradd ftpuser
passwd ftpuser
# (2) 进入 vsftpd 目录下的 user_list 中修改
cd /etc/vsftpd
# user_list 是黑名单 !!!!
vi user_list
注释掉 root
# (3) 配置 vsftpd.conf
# 匿名用户登录的时候将其禁止,然后指定FTP根目录
# Allow anonymous FTP? (Beware - allowed by default if you comment this out).
anonymous_enable=NO
# 新增
local_root=/usr/meizhangzheng/ftp/data
# 授权
chown -R ftpuser /usr/meizhangzheng/ftp/data
# 开通端口(20、21) 腾讯云、阿里云、一般服务器
# (4) 启动ftp服务
-- 特备注意: 需要运行 服务后,才能访问 21 20 端口
service vsftpd start
service vsftpd restart
netstat -an | grep 21
# 上传一个文件
put [本地文件][远程文件]
# 上传多个文件
mput [本地文件][本地文件]
# 下载一个文件
get [远程文件][本地文件]
# 将远端的当前目录里的test.jpg下载到本地的当前目录,并且命名为test1.jpg
get ./test.jpg ./test1.jpg
# 下载多个文件
mget [远程文件][远程文件]
mget test.jpg testBak.jpg
在使用 mget 的时侯,需要对每一个文件都选择 y/n,如果想不交互的下载全部的文件,可以先用 prompt 命令关掉交互方式。
关闭:prompt off
打开:prompt on
rz sz 命令
# 验证是否安装
rpm -qa | grep lrzsz
# 如果未安装,则执行安装
sudo yum install -y lrzsz
Receive files with ZMODEM/YMODEM/XMODEM protocol
(X) = option applies to XMODEM only
(Y) = option applies to YMODEM only
(Z) = option applies to ZMODEM only
-+, --append append to existing files
-a, --ascii ASCII transfer (change CR/LF to LF)
-b, --binary binary transfer
-B, --bufsize N buffer N bytes (N==auto: buffer whole file)
-c, --with-crc Use 16 bit CRC (X)
-C, --allow-remote-commands allow execution of remote commands (Z)
-D, --null write all received data to /dev/null
--delay-startup N sleep N seconds before doing anything
-e, --escape Escape control characters (Z)
-E, --rename rename any files already existing
--errors N generate CRC error every N bytes (debugging)
-h, --help Help, print this usage message
-m, --min-bps N stop transmission if BPS below N
-M, --min-bps-time N for at least N seconds (default: 120)
-O, --disable-timeouts disable timeout code, wait forever for data
--o-sync open output file(s) in synchronous write mode
-p, --protect protect existing files
-q, --quiet quiet, no progress reports
-r, --resume try to resume interrupted file transfer (Z)
-R, --restricted restricted, more secure mode
-s, --stop-at {HH:MM|+N} stop transmission at HH:MM or in N seconds
-S, --timesync request remote time (twice: set local time)
--syslog[=off] turn syslog on or off, if possible
-t, --timeout N set timeout to N tenths of a second
-u, --keep-uppercase keep upper case filenames
-U, --unrestrict disable restricted mode (if allowed to)
-v, --verbose be verbose, provide debugging information
-w, --windowsize N Window is N bytes (Z)
-X --xmodem use XMODEM protocol
-y, --overwrite Yes, clobber existing file if any
--ymodem use YMODEM protocol
-Z, --zmodem use ZMODEM protocol
Apache Flink 是一个框架和分布式处理引擎,用于在无边界和有边界数据流上进行有状态的计算。Flink 能在所有常见集群环境中运行,并能以内存速度和任意规模进行计算。
https://blog.csdn.net/chenwewi520feng/article/details/131530503
Apache Flink 是一个框架和分布式处理引擎,用于在无边界和有边界数据流上进行有状态的计算。Flink 能在所有常见集群环境中运行,并能以内存速度和任意规模进行计算。
# 1. 进入opt目录 并且 下载tgz 包
cd /opt &&
wget https://dlcdn.apache.org/flink/flink-1.17.1/flink-1.17.1-bin-scala_2.12.tgz --no-check-certificate
# 2. 解压
tar -zxvf flink-1.17.1-bin-scala_2.12.tgz
# 3. 启动 (需要先安装JDK8 +)
cd flink-1.17.1/ && ./bin/start-cluster.sh
# 4. 提交作业(示例)
./bin/flink run examples/streaming/WordCount.jar
# 4.1 查看运行日志
tail log/flink-*-taskexecutor-*.out
# 4.2 通过WEB UI 查看,(http://IP:8081)
# 5. 停止服务
./bin/stop-cluster.sh
集群规划:2.10
/home/meizhangzheng/data
#进入
cd /home/meizhangzheng
#下载
sudo wget http://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-2.10.0/hadoop-2.10.0.tar.gz
#解压
sudo tar -zxvf hadoop-2.10.0.tar.gz -C /data
sudo vi .bash_profile
HADOOP_HOME=/home/meizhangzheng/data/hadoop-2.10.0
export PATH=$PATH:$HADOOP_HOME/bin
export PATH
cd /home/meizhangzheng/data/hadoop-2.10.0/etc/hadoop
sudo vi hadoop-env.sh
export JAVA_HOME=/home/meizhangzheng/jdk1.8.0_231
sudo vi yarn-env.sh
export JAVA_HOME=/home/meizhangzheng/jdk1.8.0_231
#在当前目录下设置slaves
sudo vi slaves
slave1
slave2
fs.defaultFS hdfs://master:9820 #指定NameNode文件系统
hadoop.tmp.dir file://home/meizhagnzheng/hadoop/tmp #临时目录
#指定NameNode存储meta和editlog的目录,建议先手动建好该目录
dfs.namenode.name.dir file:/home/meizhangzheng/dfs/name
dfs.datanode.data.dir file:/home/meizhangzheng/dfs/data #指定DataNode存储blocks的目录,建议先手动建好该目录
dfs.permissions true #防止出现不允许远程读写hdfs
dfs.replication 3 #指定数据副本数目
dfs.namenode.secondary.http-address master:9001 #指定Secondary NameNode地址
mapreduce.framework.name yarn 指定MR运行在yarn上
mapreduce.jobhistory.address master:10020 指定MR作业执行历史地址
mapreduce.jobhistory.webapp.address master:19888 指定MR作业历史web应用地址
将master节点中 .bash_profile 、/home/meizhangzheng/data 分发到slave1、slave2 /home/meizhangzheng 目录
sudo scp .bash_profile meizhangzheng@slave1:~/
sudo scp -r data meizhangzheng@slave1:~/
hadoop namenode -format
sudo ./home/meizhangzheng/data/hadoop-2.10.0/sbin/start-dfs.sh sudo ./home/meizhangzheng/data/hadoop-2.10.0/sbin/start-yarn.sh
jps
查看集群状态: http://192.168.1.10:50070
查看yarn状态: http://192.168.1.10:8088
(1)原来hadoop一直可以正常启动,有天在启动之后查看namenode的log发现如下in_use.lock (Permission denied)错误日志:
1):在原来正常的时候,有一次突然使用了原来不同的用户启动了一次hadoop。这种场景会产生一个in_use.lock 文件夹在你设置的目录中,这时候可以删除这个文件夹直接,然后重新启动 2):在格式化hadoop的时候和当期启动的用户不是同一个,也会导致该问题。这个时候可以使用格式化hadoop的那个用户重新启动hadoop。也可以解决此错误。(2) 错误Name node is in safe mode的解决方法
离开安全模式:hadoop dfsadmin -safemode leave
(3) dataNode 未启动成功?
<1. 再次重启?
<2. 检查nameNode VRESION clusterID 与 data/current/VERSION 中 clusterID 是否一致,如果不一致,则修改为一致的。
[meizhangzheng@master ~]$ hadoop fs -mkdir /test
hadoop fs -touchz /data/tmp/word.txt
/home/meizhangzheng/dfs/name
文件并非通过hadoop fs -mkdir 等命令创建的文件及内容信息,而是被分割成二进制存储的
通过命令 hadoop fs -ls -R / 可查看所有文件;
#1.查看hadoop具体操作的文件信息
[meizhangzheng@master ~]$ pwd
/home/meizhangzheng
[meizhangzheng@master ~]$ cd dfs/
[meizhangzheng@master dfs]$ cd name/
[meizhangzheng@master name]$ ll
total 4
drwxrwxr-x 2 meizhangzheng meizhangzheng 209 Jan 11 15:09 current
-rw-r--r-- 1 root root 12 Jan 11 15:07 in_use.lock
[meizhangzheng@master name]$ cd current/
[meizhangzheng@master current]$ dir
edits_0000000000000000001-0000000000000000002 fsimage_0000000000000000000.md5
edits_inprogress_0000000000000000003 seen_txid
fsimage_0000000000000000000 VERSION
dfsadmin: 安全模式、启动hadoop时先通过加载日志文件…
hadoop fs -chown hive:hive /test