Logstash,flume,sqoop比较
Logstash:
1.插件式组织方式,易于扩展和控制
2.数据源多样不仅限于日志文件,数据处理操作更丰富,可自定义(过滤,匹配过滤,转变,解析......)
3.可同时监控多个数据源(input插件多样),同时也可将处理过的数据同时有不同多种输出(如stdout到控制台,同时存入elasticsearch)
4.安装简单,使用简单,结构也简单,所有操作全在配置文件设定,运行调用配置文件即可
5.管道式的dataSource——input plugin——filter plugin——output plugin——dataDestination
6.有logstash web界面,可搜索日志
7.有一整套的EKL日志追踪技术栈,可收集处理(logstash),存储管理搜索(elasticsearch),图形显示分析(kibana)
8,做到更好的实时监控(插件设置时间间隔属性,对监控的数据源检查更新)
Flume (1.x flume-ng)
1.分布式的可靠的可用的系统,高效的从不同数据源收集聚合迁移大量数据到一个集中的数据存储
2.安装部署比较logstash复杂
3.同样以配置文件为中心 提供了JavaAPI
4.是一个完整的基于插件的架构 有独立开发的第三方插件
5.三层架构:source channel sink
Flume使用基于事务的数据传递方式来保证事件传递的可靠性。Source和Sink被封装进一个事务。事件被存放在Channel中直到该事件被处理,Channel中的事件才会被移除。这是Flume提供的点到点的可靠机制。
从多级流来看,前一个agent的sink和后一个agent的source同样有它们的事务来保障数据的可靠性。
6,一个agent可指定多个数据源(同一agent内多个source连接到同一个channel上)?
一个agent可将收集的数据输出到多个目的地(HDFS,JMS,agent.....)span-out
Sqoop2 (1.99X)
1. 用于结构化数据源(MySQL)与半结构化(Hbase)非结构化(HDFS)数据源之间相互转换,是为Hadoop和关系型数据库相互转换的工具(MYsql orcal postgres 等数据库与HDFS Hbase Hive)利用的是Hadoop的mapreduce技术
2. 分为server和client两部分,server是与所有client连接的接入点,安装在Hadoop client;client 无需Hadoop 数量任意多
3. 访问方式多样化,可用REST API,Java API,WEB UI,CIL控制台进行