成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

簡要分析Kafka Stream有意思的點

企業動態 Kafka
Kafka一直缺乏一個商業公司來推動,這個問題現在要稍稍改變一些了,原LinkedIn Kafka作者離職后創業Confluent Inc來推動kafka商業化,并推出Kafka Stream。今天只講kafka stream幾個有意思的點。

kafka歷史背景

Kafka是2010年Kafka是Linkedin于2010年12月份開源的消息系統,我接觸的不算早,大概14年的時候,可以看看我們14年寫的文章《高速總線kafka介紹》。

消息總線一直是作IT系統集成的核心概念,IBM/oracle等傳統廠商都有相關中間件產品。傳統消息中間件解決是消息的傳輸,一般支持AMQP協議來實現,如RabbitMQ。AMQP的主要特征是面向消息、隊列、路由(包括點對點和發布/訂閱)、可靠性、安全。AMQP協議更多用在企業系統內,對數據一致性、穩定性和可靠性要求很高的場景,對性能和吞吐量的要求還在其次。

Kafka上來劍走偏鋒,追求高吞吐量,所以特別適合,大數據的數據收集和分發等功能。高吞吐的原因核心是kafka的一些獨特的涉及,包括直接使用linux cache/zero-copy/數據存放方法等,這方面的分析很多,我前面的文章《高速總線kafka介紹》第4節也簡單寫了下。Kafka一直缺乏一個商業公司來推動,所以發展并不是很快。幾年過去了,自己看了看,還是0.10版本,特性也發展比較慢。

Kafka一直缺乏一個商業公司來推動,這個問題現在要稍稍改變一些了,原LinkedIn Kafka作者離職后創業Confluent Inc來推動kafka商業化,并推出Kafka Stream。

Kafka Stream

詳細的設計理念,概念,大家看看slidershare上的PPT,講的比較清楚,不詳細展開了:https://www.slideshare.net/GuozhangWang/introduction-to-kafka-streams。

kafka stream

今天只講kafka stream幾個有意思的點:

1. 首先是定位:

比較成熟度的框架有:Apache Spark, Storm(我們公司開源Jstorm), Flink, Samza 等。第三方有:Google’s DataFlow,AWS Lambda。

1)現有框架的好處是什么?

強大計算能力,例如Spark Streaming上已經包含Graph Compute,MLLib等適合迭代計算庫,在特定場景中非常好用。

2)問題是什么?

A、使用起來比較復雜,例如將業務邏輯遷移到完備的框架中,Spark RDD,Spout等。有一些工作試圖提供SQL等更易使用模式降低了開發門檻,但對于個性化ETL工作(大部分ETL其實是不需要重量級的流計算框架的)需要在SQL中寫UDF,流計算框架就退化為一個純粹的容器或沙箱。

B、作者認為部署Storm,Spark等需要預留集群資源,對開發者也是一種負擔。

Kafka Stream

Kafka Stream定位是輕量級的流計算類庫,簡單體現在什么方面?

C、所有功能放在Lib中實現,實現的程序不依賴單獨執行環境

D、可以用Mesos,K8S,Yarn和Ladmda等獨立調度執行Binary,試想可以通過Lamdba+Kafka實現一個按需付費、并能彈性擴展的流計算系統,是不是很cool?

E、可以在單、單線程、多線程進行支持

F、在一個編程模型中支持Stateless,Stateful兩種類型計算

編程模型比較簡潔,基于Kafka Consumer Lib,及Key-Affinity特性開發,代碼只要處理執行邏輯就可以,Failover和規模等問題由Kafka本身特性幫助解決。

2. 設計理念和概念抽象

強調簡單化,Partition中的數據到放入消費隊列之前進行一定的邏輯處理(Processor Topology)提供一定的數據處理能力(api),沒有Partition之間的數據交換,實現代碼9K行。

數據抽象分兩種:

1)KStream:data as record stream, KStream為一個insert隊列,新數據不斷增加進來

2)KTable: data as change log stream, KTable為一個update隊列,新數據和已有數據有相同的key,則用新數據覆蓋原來的數據

后面的并發,可靠性,處理能力都是圍繞這個數據抽象來搞。

3. 支持兩種處理能力

Kafka Stream

1)Stateless(無狀態):例如Filter,Map,Joins,這些只要數據流過一遍即可,不依賴于前后的狀態。

2)Stateful(有狀態):主要是基于時間Aggregation,例如某段時間的TopK,UV等,當數據達到計算節點時需要根據內存中狀態計算出數值。

Kafka Streams把這種基于流計算出來的表存儲在一個本地數據庫中(默認是RocksDB,但是你可以plugin其它數據庫)

4. 未來支持exactly once

未來0.11版本會支持exactly once ,這是比較牛逼的能力。(提前預告)

https://www.confluent.io/blog/exactly-once-semantics-are-possible-heres-how-apache-kafka-does-it/

1)at most once: 消費者fetch消息,保存offset,處理消息

消費者處理消息過程中出現意外,消費者恢復之后,將不能恢復處理出錯的消息

2)at least once: 消費者fetch消息,處理消息,保存offset

消費者處理消息過程中出現意外,可以恢復之后再重新讀取offsert處的原來的消息

3)exactly once: 確保消息唯一消費一次,這個是分布式流處理最難的部分。

“processing.guarantee=exactly_once”

這個是怎么實現的,去看看《分布式系統的一致性探討》http://blog.jobbole.com/95618/

和《關于分布式事務、兩階段提交協議、三階提交協議》

http://blog.jobbole.com/95632/。

5. 主要應用場景

kafka的核心應用場景還是輕量級ETL,和flink/storm更多是一個補充作用。

Building a Real-Time Streaming ETL Pipeline in 20 Minutes

https://www.confluent.io/blog/building-real-time-streaming-etl-pipeline-20-minutes/

最后希望kafka在商業公司的推動下有個更大的發展。

【本文為51CTO專欄作者“大數據和云計算”的原創稿件,轉載請通過微信公眾號獲取聯系和授權】

戳這里,看該作者更多好文

責任編輯:趙寧寧 來源: 51CTO專欄
相關推薦

2021-03-25 06:12:55

SVG 濾鏡CSS

2022-08-03 08:03:03

前端APIjavascript

2022-08-15 22:34:47

Overflow方向裁切

2022-06-15 07:21:47

鼠標指針交互效果CSS

2022-07-11 13:09:26

mmapLinux

2018-06-24 16:39:28

Tomcat異常線程

2020-12-12 13:50:16

云開發

2021-01-27 13:54:05

開發云原生工具

2013-08-28 09:46:09

Debian LinuLinux發行版

2012-06-19 16:49:19

Web開發

2012-05-22 10:12:59

jQuery

2015-10-28 13:57:29

融合架構華三UIS

2010-04-09 11:24:59

Oracle 排序

2021-11-17 10:45:58

Chrome 95新特性前端

2021-04-09 08:23:30

Css前端加載動畫

2015-09-17 17:49:13

華三/UIS

2012-04-12 15:14:31

idf2012英特爾

2023-05-15 09:16:18

CSSCSS Mask

2022-08-23 08:01:09

CSS前端

2021-02-20 16:01:26

Github前端開發
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 我我色综合 | 超碰最新在线 | 国产精品久久久久久福利一牛影视 | 九色在线 | 9porny九色视频自拍 | 亚洲成人av在线播放 | 精品国产乱码久久久久久蜜柚 | 天天干在线播放 | 日韩视频在线播放 | 久久免费电影 | 国产精品一区二区在线 | 国产精品一区二区在线 | 国产精品www | 福利视频一二区 | 国产网站在线播放 | 91精品久久久久久久久中文字幕 | 91av在线免费| 99久久中文字幕三级久久日本 | 成年无码av片在线 | 日日夜夜精品视频 | 国产精品欧美一区喷水 | 欧美伦理一区 | 久久久青草婷婷精品综合日韩 | 中文字幕高清在线 | 国产精品国产成人国产三级 | 国产精品一区一区三区 | 国产欧美精品区一区二区三区 | 国产激情一区二区三区 | 久久精品青青大伊人av | 亚洲精品久久区二区三区蜜桃臀 | 91久久久久久久久 | 国产欧美在线播放 | av在线天堂| 91精品国产91久久久久福利 | 国产精品九九视频 | 在线伊人网 | 精品久久久久久久久久久久 | 中文字幕97| 亚洲人人舔人人 | 99在线资源 | 日本一区二区三区精品视频 |