Flume
Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力。
Flume的功能和ELK(日志实时检索系统)中的Logstash很像,都是用来传输和处理日志数据的。
Kafka
Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据。
说白了就是一个MQ消息系统,和Java中常用RabbitMQ、RocketMQ是一样的,只是各自的侧重点不一样,Kafka侧重点在高吞吐量,可以处理海量的数据。
HDFS
Hadoop分布式文件系统(HDFS)是指被设计成适合运行在通用硬件(commodity hardware)上的分布式文件系统(Distributed File System)。它和现有的分布式文件系统有很多共同点。但同时,它和其他的分布式文件系统的区别也是很明显的。HDFS是一个高度容错性的系统,适合部署在廉价的机器上。HDFS能提供高吞吐量的数据访问,非常适合大规模数据集上的应用。
像Java项目不可避免的会涉及到文件上传下载,这个时候要么自己搭建一个分布式文件系统,要么使用第三方。