Flume
1.业务系统为什么会产生用户行为日志,怎么产生的
用户行文日志:每一次访问的行为(访问、搜索)产生的日志
记录用户行为日志的目的:
1.商家会精准的给你呈现符合你的个人界面
2.商家会给你个人添加用户标签,更加精准的分析
埋点等
2.flume用来做什么的(采集传输数据的,分布式的,可靠的)
Apache Flume 是一个从可以收集例如日志,事件等数据资源,并将这些数量庞大的数据从各项数据资源中集中起来存储的工具/服务。
是一个数据采集工具,可以从各种各样的数据源上采集数据传输到大数据生态的各种存储系统中(Hdfs,hbase,hive,kafka)
开箱即用
3.flume的核心概念
agent-source-channel-sink
agent
Flume中最核心的角色是agent,flume采集系统就是由一个个agent连接起来所形成的一个或简单或复杂的数据传输通道。
对于每一个Agent来说,它就是一个独立的守护进程(JVM),它负责从数据源接收数据,并发往下一个目的地
每一个agent相当于一个数据(被封装成Event对象)传递员,内部有三个组件:
Source:采集组件,用于跟数据源对接,以获取数据;有各种各样的内置实现
Sink:下沉组件,用于往下一级agent传递数据或者向最终存储系统传递数据
Channel:传输通道组件,用于从source将数据传递到sink
单个agent采集数据
WebServer -->Agent(Source ->Channel ->Sink) Hdfs
数据在Flume内部中数据以Event的封装形式存在
Source组件在获取到原始数据后,需要封装成Event放入到Channel
Event