Kafka系列视频教程之Kafka核心基础

作为Kafka系列课程的基础部分,介绍Kafka是什么,Kafka的用途,以及如何使用Kafka作为大数据处理的基石。为后续的Kafka Connect,Kafka Streams,Confluent Components及Kafka Administration等课程打下坚实基础。

17089人学习

初级32课时2018/02/28更新

二维码下载学堂APP缓存视频离线看

博彬
    • 畅销套餐
    • 精选套餐
    • 人气套餐
    • 尊享套餐
    • 高薪套餐
ArcGIS全系列实战视频教程专题
ArcGIS10.X入门实战视频教程(GIS思维)
346080人学习
¥68.00
ArcGIS之模型构建器(ModelBuilder)视频教程(GIS思维)
39841人学习
¥68.00
ArcGIS与CASS在地籍建库中的结合应用视频课程(GIS思维)
15298人学习
¥68.00
更 多 6 门 课 程
ArcGIS从基础精通到项目实战视频课程套餐
ArcGIS与CASS在地籍建库中的结合应用视频课程(GIS思维)
15298人学习
¥68.00
ArcGIS10.X入门实战视频教程(GIS思维)
346080人学习
¥68.00
更 多 2 门 课 程
大数据消息(Kafka)与实时处理(Storm)系统系列套餐
赵渝强老师:大数据消息系统视频课程 Apache Kafka视频课程
38381人学习
¥259.00
赵渝强老师:大数据实时处理系统 Apache Storm视频课程
10123人学习
¥259.00
更 多 2 门 课 程
大数据可视化之敏捷BI Tableau系列实战视频课程套餐
大数据可视化之敏捷BI Tableau视频课程入门与实战
19160人学习
¥79.00
大数据可视化之敏捷BI Tableau Desktop入门培训视频课程
2528人学习
¥79.00
大数据可视化之敏捷BI Tableau Server高级实战培训视频课程
1989人学习
¥239.00
更 多 3 门 课 程
大数据可视化之敏捷BI Tableau系列实战视频课程套餐
大数据可视化之敏捷BI Tableau视频课程入门与实战
19160人学习
¥79.00
大数据可视化之敏捷BI Tableau Desktop入门培训视频课程
2528人学习
¥79.00
大数据可视化之敏捷BI Tableau Server高级实战培训视频课程
1989人学习
¥239.00
更 多 3 门 课 程
  • 课程介绍
  • 课程大纲

适合人群:

大数据、人工智能、微服务工作者和爱好者

你将会学到:

作为Kafka系列课程的基础部分,介绍Kafka是什么,Kafka的用途,以及如何使用Kafka作为大数据处理的基石。为后续的Kafka Connect,Kafka Streams,Confluent Components及Kafka Administration等课程打下坚实基础。

课程简介:

Kafka是由LinkedIn开发的一个分布式的消息系统,使用Scala编写,它以可水平扩展和高吞吐率而被广泛使用。目前越来越多的开源分布式处理系统如Cloudera、Apache Storm、Spark都支持与Kafka集成。

Image result for kafka


Kafka简介

Kafka是一种分布式的,基于发布/订阅的消息系统。主要设计目标如下:

  • 以时间复杂度为O(1)的方式提供消息持久化能力,即使对TB级以上数据也能保证常数时间复杂度的访问性能。

  • 高吞吐率。即使在非常廉价的商用机器上也能做到单机支持每秒100K条以上消息的传输。

  • 支持Kafka Server间的消息分区,及分布式消费,同时保证每个Partition内的消息顺序传输。

  • 同时支持离线数据处理和实时数据处理。

  • Scale out:支持在线水平扩展。


    Image result for kafka

为何使用消息系统

  • 解耦

    在项目启动之初来预测将来项目会碰到什么需求,是极其困难的。消息系统在处理过程中间插入了一个隐含的、基于数据的接口层,两边的处理过程都要实现这一接口。这允许你独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束。

  • 冗余

    有些情况下,处理数据的过程会失败。除非数据被持久化,否则将造成丢失。消息队列把数据进行持久化直到它们已经被完全处理,通过这一方式规避了数据丢失风险。许多消息队列所采用的"插入-获取-删除"范式中,在把一个消息从队列中删除之前,需要你的处理系统明确的指出该消息已经被处理完毕,从而确保你的数据被安全的保存直到你使用完毕。

  • 扩展性

    因为消息队列解耦了你的处理过程,所以增大消息入队和处理的频率是很容易的,只要另外增加处理过程即可。不需要改变代码、不需要调节参数。扩展就像调大电力按钮一样简单。

  • 灵活性 & 峰值处理能力

    在访问量剧增的情况下,应用仍然需要继续发挥作用,但是这样的突发流量并不常见;如果为以能处理这类峰值访问为标准来投入资源随时待命无疑是巨大的浪费。使用消息队列能够使关键组件顶住突发的访问压力,而不会因为突发的超负荷的请求而完全崩溃。

  • 可恢复性

    系统的一部分组件失效时,不会影响到整个系统。消息队列降低了进程间的耦合度,所以即使一个处理消息的进程挂掉,加入队列中的消息仍然可以在系统恢复后被处理。

  • 顺序保证

    在大多使用场景下,数据处理的顺序都很重要。大部分消息队列本来就是排序的,并且能保证数据会按照特定的顺序来处理。Kafka保证一个Partition内的消息的有序性。

  • 缓冲

    在任何重要的系统中,都会有需要不同的处理时间的元素。例如,加载一张图片比应用过滤器花费更少的时间。消息队列通过一个缓冲层来帮助任务最高效率的执行———写入队列的处理会尽可能的快速。该缓冲有助于控制和优化数据流经过系统的速度。

  • 异步通信

    很多时候,用户不想也不需要立即处理消息。消息队列提供了异步处理机制,允许用户把一个消息放入队列,但并不立即处理它。想向队列中放入多少消息就放多少,然后在需要的时候再去处理它们。

展开更多

课程大纲-Kafka系列视频教程之Kafka核心基础

展开更多

“博彬”老师的其他课程更多+

在线
客服
APP
下载

下载Android客户端

下载iphone 客户端

官方
微信

关注官方微信

返回
顶部