Kafka Strem
Overview
Concepts
Topology
Time
States
Window
Hopping time windows
Tumbling time windows
Sliding windows
Join
API
Low-Level Processor API
High-Level DSL API
Overview
Kafka Stream特点
》简单轻量的SDK
》除了对Kafka本身的依赖外,无外部依赖
》支持容错的local state从而支持高效的状态操作,如Join和Window操作
》Record级别的处理
》提供两种处理原语,Processor API和DSL
Concepts
Stream Topology
》Stream时间上无解的,有序的,不可变数据集
》Stream Processing application通过一个或多个Topology定义的计算逻辑
》Stream processor一个计算原语,类似于Storm的Bolt
Time
》Event Time消息创建时间,一般由消费携带
》Processing Time消息被处理的时间
》Ingestion Time消息存入Topic/Partition时的时间
State
》In-memory State Store(类似Hash表,将结果存在内存中)
》Persistent State Store(一份存内存,一份存磁盘)
Window
Hopping time windows
》Advance interval 结果输出interval
》Window size计算数据集
》使用场景:Advance interval为1个小时,Window size为1s,1s刷新一次,我能知道每秒后前一个小时的pv/uv量
Tumbling time windows
》Hopping time windows的特例(Advance interval=Window size)
》使用场景:统计每一个小时的pv/uv是多少
Sliding windows
》只用于Join操作,可由JoinWindow类指定
KStream vs. KTable
KStream
》KStream为数据流,每条消息代表一条不可变的新纪录
Ktable
》KTable为change log流,每条消息代表一个更新,几条key相同的消息会将该key的值更新为最后一条消息的值
Example
》对于KStream和KTable中插入两条消息(“key”,1),(“key2”,2)
》对KStream作sum,结果为(“key1”,3)
》对KTable作sum,结果为(“key1”,2)
Join
KSream-KStream Join
》适用于Window Join
》结果为KStream
KStream-KTable Join
》KTable的变化只影响KStream中新数据
》新结果的输入由KStream驱动
》输出为KStream
KTable-KTable join
》类似于RDBMS的Join
》结果为KTable
Kafka Strem的更多相关文章
- Spark踩坑记——Spark Streaming+Kafka
[TOC] 前言 在WeTest舆情项目中,需要对每天千万级的游戏评论信息进行词频统计,在生产者一端,我们将数据按照每天的拉取时间存入了Kafka当中,而在消费者一端,我们利用了spark strea ...
- 消息队列 Kafka 的基本知识及 .NET Core 客户端
前言 最新项目中要用到消息队列来做消息的传输,之所以选着 Kafka 是因为要配合其他 java 项目中,所以就对 Kafka 了解了一下,也算是做个笔记吧. 本篇不谈论 Kafka 和其他的一些消息 ...
- kafka学习笔记:知识点整理
一.为什么需要消息系统 1.解耦: 允许你独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束. 2.冗余: 消息队列把数据进行持久化直到它们已经被完全处理,通过这一方式规避了数据丢失风险. ...
- .net windows Kafka 安装与使用入门(入门笔记)
完整解决方案请参考: Setting Up and Running Apache Kafka on Windows OS 在环境搭建过程中遇到两个问题,在这里先列出来,以方便查询: 1. \Jav ...
- kafka配置与使用实例
kafka作为消息队列,在与netty.多线程配合使用时,可以达到高效的消息队列
- kafka源码分析之一server启动分析
0. 关键概念 关键概念 Concepts Function Topic 用于划分Message的逻辑概念,一个Topic可以分布在多个Broker上. Partition 是Kafka中横向扩展和一 ...
- Kafka副本管理—— 为何去掉replica.lag.max.messages参数
今天查看Kafka 0.10.0的官方文档,发现了这样一句话:Configuration parameter replica.lag.max.messages was removed. Partiti ...
- Kafka:主要参数详解(转)
原文地址:http://kafka.apache.org/documentation.html ############################# System ############### ...
- kafka
2016-11-13 20:48:43 简单说明什么是kafka? Apache kafka是消息中间件的一种,我发现很多人不知道消息中间件是什么,在开始学习之前,我这边就先简单的解释一下什么是消息 ...
随机推荐
- ACM1002:A + B Problem II
Problem Description I have a very simple problem for you. Given two integers A and B, your job is to ...
- STL---llist
#include<iostream> #include<algorithm> #include<list> using namespace std; struct ...
- PWA-网络
PWA-网络 fetch API Get fetch('/some/url',{ method:'GET' }).then(function(resp){ //success }).catch(fun ...
- 在CentOS7中搭建Zookeeper集群
前几天装了CentOS7.并安装了一些基本的工具,现在我手上有三台机器:分别是master,slave1,slave2. 今天我将搭建zookeeper,使用的版本是zookeeper-3.4.11. ...
- Prism for WPF 搭建一个简单的模块化开发框架(二)
原文:Prism for WPF 搭建一个简单的模块化开发框架(二) 今天又有时间了,再改改,加了一些控件全局的样式 样式代码 <ResourceDictionary xmlns="h ...
- 【转】Odoo开发之:工作流 workflow
在OpenERP中,工作流是管理一组“所做的事情”(与一些数据模型的记录关联)的人为现象.工作流提供了高级别的方式来组织记录要上做的事情. 具体地说,工作流是一个定向的路径,这里节点称为活动并且弧线称 ...
- 南京Uber优步司机奖励政策(1月4日~1月10日)
滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...
- 离线安装Sharepoint工具
1. 首先安装操作系统,Windows Server 2008 R2,可以是企业版,也可以是数据中心版.然后再安装上SP1. 2. 在"服务管理"里面,添加角色,安装IIS. ...
- Http接口系列:如何提高Http接口用例的数据稳定性
此文已由作者王婷英授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 为了尽可能多的释放手工测试,提高测试效率,我们都会想到使用自动化测试,如http接口自动化测试.doubbo ...
- pip源设置 & pandas安装
pip的官方源python.pypi.org貌似被墙,换用国内安装源 网上的设置方法都是基于Unix的,Windows下的设置略麻烦. 更新..\Lib\site-packages\pip下的cmdo ...