APP下载
报价宝  ›  科技  › 

干货总结:Kafka -- 分散式流处理平台

报价宝 来源:baojiabao.com 发布时间:2019-07-31 13:49:00 10月26日更新
报价宝综合消息干货总结:Kafka -- 分散式流处理平台

Kafka在刚诞生时是以讯息引擎系统 的面目出现在大众视野中Kafka在0.10.0.0之前的定位:分散式、分割槽化且带备份功能的提交日志 (Commit Log)服务Kafka在设计之初的功能特性提供一套API实现生产者 和消费者降低网络传输 和磁盘储存 开销实现高伸缩 架构分散式流处理平台

Kafka于2011年正式进入Apache基金会孵化并于次年10月成为Apache顶级专案Kafka社群于0.10.0.0版本正式推出流处理元件Kafka Streams ,定位变成了分散式流处理平台同等级的实时流处理平台:ApacheKafka 、ApacheStorm 、ApacheSpark 、ApacheFlink目前国内对Kafka是流处理平台的认知还不普及,其核心的流处理元件Kafka Streams更是少有大厂在使用

优势

端到端的正确性

Kafka更容易实现端到端的正确性 (Correctness)流处理要替代批处理需要具备两个核心优势实现正确性 (正确性是流处理能够匹敌批处理的基石)提供能够推导时间的工具正确性一直都是批处理的强项,而实现正确性的基石是要求框架能提供精确一次处理语义即处理一条讯息有且只有 一次机会能够影响系统状态目前主流的大资料流处理框架都宣称实现了精确一次处理语义,但这是有限定条件 的即它们只能实现框架内 的精确一次处理语义,无法实现端到端 的当这些框架与外部讯息引擎系统结合使用时,它们无法影响到外部系统的处理语义例如搭建一套环境使得Spark或Flink从Kafka读取讯息之后进行有状态 的资料计算,最后写回Kafka这种情况只能保证在Spark或Flink内部,这条讯息对于状态的影响只有一次但计算结果有可能多次 写入到Kafka,因为它们不能控制Kafka的语义处理

对于Kafka,因为所有的资料流转和计算 都在Kafka内部完成,所以Kafka可以实现端到端的精确一次处理语义自身定位

Kafka官网:Kafka Streams是一个用于搭建实时流处理的客户端库 而不是一个完整的功能系统不提供类似丛集排程、弹性部署等开箱即用的运维特性大公司的流处理平台一定是大规模部署的,因此具备丛集排程功能以及灵活的部署方案是不可或缺的要素但世界上还存在很多中小企业 ,它们的流处理资料量并不巨大,逻辑也不复杂,部署几台机器即可应付针对这样的需求,没必要搭建重量级的完整性平台 ,这也正是Kafka Streams的用武之地end:如果你觉得本文对你有帮助的话,记得关注点赞转发,你的支援就是我更新动力。

文章标签: 报价宝 降噪耳机价格 耳机价格 红米手机价格 华为手机价格 小米手机价格 电视机价格 笔记本电脑价格 笔记本价格 汽车价格 手机价格 笔记本电脑价格 电视机价格 华为手机价格 降噪耳机价格