kafka概述与安装

Kafka概述

    hadoop -> 离线计算(hdfs/mapreduce) yarn 
    zookeeper -> 分布式协调(动物管理员)
    hive -> 数据仓库(离线计算/sql)easy coding
    flume -> 数据采集
    sqoop -> 数据迁移 mysql -> hdfs/hive     hdfs/hive->mysql
    azkaban -> 任务调度工具
    hbase -> 数据库(nosql) 列式存储 读写速度

实时:
    kafka
    storm

    Apache Kafka® is a distributed streaming platform. What exactly does that mean?
    A streaming platform has three key capabilities:

    Publish and subscribe to streams of records, similar to a message queue or enterprise messaging system.
    Store streams of records in a fault-tolerant durable way.
    Process streams of records as they occur.
    Kafka is generally used for two broad classes of applications:

    Building real-time streaming data pipelines that reliably get data between systems or applications
    Building real-time streaming applications that transform or react to the streams of data

kafka是什么
    在流计算中,kafka主要功能是用来缓存数据,storm可以通过消费kafka中的数据进行流计算。

    是一套开源的消息系统,由Scala写成。支持javaAPI的。
    kafka最初由LinkedIn公司开发,2011年开源。
    2012年从Apache毕业。

    是一个分布式消息队列,kafka读消息保存采用Topic进行归类。

角色
    发送消息:Producer(生产者)
    消费消息:Consumer(消费者)

为什么要使用消息队列
    1、解耦
        为了避免出现问题
    2、拓展性
        可增加处理过程
    3、灵活
        面对访问量剧增,不会因为超负荷请求而完全瘫痪。
    4、可恢复
        一部分组件失效,不会影响整个系统。可以进行恢复。
    5、缓冲
        控制数据流经过系统的速度。
    6、顺序保证
        对消息进行有序处理。
    7、异步通信
        akka,消息队列提供了异步处理的机制。允许用户把消息放到队列,不立刻处理。

kafka架构设计
    kafka依赖于zookeeper,用zk保存元数据信息。
    搭建kafka集群要先搭建zookeeper集群。
    zk在kafka中的作用
        保存kafka集群节点状态信息和消费者当前消费信息。

kafka集群安装
    配置
    vi conf/server.properties
        Server Basics下
        broker.id=0    #每台机器的id不同即可
        delete.topic.enable=true    #是否允许删除主题

        Log Basics下
        log.dirs=..../logs    #运行日志保存位置
        num.partitions=1

        Zookeeper下
        zookeeper.connect=bigdata:2181    #

    vi /etc/profile
        export KAFKA_HOME=
        export PATH=

    scp到集群的其他机器 $PWD
        broker.id=1
        broker.id=2

    启动
        zkServer.sh start
        bin/kafka-server-start.sh config/server.properties &

    关闭
        kafka-server-stop.sh 

猜你喜欢

转载自blog.csdn.net/weixin_42898914/article/details/85062885