为什么用到消息中简件?
当数据量很大时,暂时存储当前数据的,可以销峰
消息的生产者(不是一个)主动把数据写道中间件中,消费者(不是一个)拉取中简件的数据
中间件的特点:
1)高可用(HA)
其中一个节点挂掉,数据不会丢失,
2)存在多个副本
3)高并发
有很多的生产者和消费者,同时读写
4)高吞吐
5)记录偏移量
某个消费者拉取数据的时候,突然出现问题了,kafka可以记录到他出现问题的地方,重启之后可以接着上一次数据进行拉取
6)消费者组
7)分布式
8)可扩展
以后不论做离线数据处理还是做实时数据处理,都要用到消息中间件,
数据量太大,先把数据Hold住,如果直接写到本地磁盘,很耗时,先把数据搞到kafka中然后同步到hdfs中