一、简介oop
大数据分析处理平台包括数据的接入,数据的存储,数据的处理,以及后面的展现或者应用。今天咱们连说一下数据的接入,数据的接入目前比较广泛的是采用kafka将前面的数据经过消息的方式,以数据流的形式将数据接入到大数据存储平台。测试
下面主要介绍一下kafka的安装和部署的过程。因为公司采用的是cloudera公司的产品,因此直接经过cloudera manager来安装部署kafka。只不过在安装的过程当中,注意几个问题便可:大数据
(1)存放kafka的log文件的位置hadoop
默认是/var/log/kafka/ 部署
(2)存放kafka的data的位置kafka
默认是/var/local/kafka/data数据分析
这些路径须要手动建立,并注意他们的权限的问题。产品
二、kafka组建简介,并用控制台的方式来模拟一下it
(1)kafka主要有:producer、broker、topic、consumer。在安装好kafka以后,首先须要建立一个topic,实际上这个topic就是对应的将消息进行分类,也能够理解成message queue。建立topic的命令是:io
kafka-topics --create --zookeeper hadoop3:2181 --replication-factor 1 --partitions 1 --topic hello
在这里hadoop3表示的是部署zookeeper的主机名(因为我部署的zookeeper只有一台机器,因此对应的就是hadoop3,这个根据具体的状况会不一样),hello是对应的topic名称,--replication-factor参数指定对应的消息的副本数
(2)建立好了topic以后,接下来就是生产者往这个topic中进行生产:
kafka-console-producer --broker-list hadoop2:9092 --topic hello
在这里hadoop2表示的是部署broker的主机名,hello对应的就是topic名称。
(3)第三步就是消费对应的消息了:
kafka-console-consumer --zookeeper hadoop3:2181 --topic hello --from-beginning
在这里hadoop3表示的是对应部署zookeeper的主机名,hello表示的就是topic的名称。
(4)查看topic的一些信息:
建立多副本的topic:kafka-topics --create --zookeeper hadoop3:2181 --replication-factor 3 --partitions 1 --topic multi
查看多副本的分布状况:kafka-topics --describe --zookeeper hadoop3:2181 --topic multi
(5)测试一下容错机制
虽然最初负责续写消息的leader down掉了,但以前的消息仍是能够消费的:
> bin/kafka-console-consumer.sh --zookeeper hadoop3:2181 --from-beginning --topic mutil ... my test message 1 my test message 2