一、flume
1、大数据三个概念:数据的传输、存储和计算。
2、数据的传输--flume
3、大数据集群和后台服务器集群通常要分开,因为后台服务器的服务非常多,也需要占用很高的计算资源,所以一般后台计算服务器和大数据集群是分开的。因此需要后台服务器产生的海量数据传输至大数据集群,目前最常用的大数据传输工具就是flume。
4、假如说手机银行转账交易的数据会保存后台服务器的mysql中,但是用户在手机银行执行页面的访问、点击、跳转等这些不发生实际业务交易的数据应该保存到哪里呢?这个非重要信息通常就会记录成用户行为日志,再通过flume采集到大数据集群进行保存。
5、flume是一个高可用的、高可靠、分布式的海量日志采集、聚合和传输的系统。是基于流式框架设计的。
6、flume是cloundera公司开发的,后来被Apache公司收购,官方首页:http://flume.apache.org
7、flume只能传输文本文件,照片、音频等其他文件不能进行传输。下图是其官网介绍。
8、flume通常位于数据传输哪个环节呢?如下图所示。
HDFS是一个分布式的海量数据文件系统。
通常Flume组件的作用就是:定时读取服务器本地磁盘数据,并将数据写入到HDFS。
9、flume的基础架构
Source:对接服务器后台数据,负责读数据,也可以加一些简单的处理;可以读端口数据,也可以读本地磁盘文件,视配置而定。
Channel:管道缓冲区,主要为了平衡读写的速率;
Sink:沉槽,负责数据的写出。可写入HDFS、KAFAK等其他文件系统,视配置而定。
三者运行在Agent上,Agent本质是一个JVM虚拟机。实际对flume的操作,就是在配置上述三个文件