第1节 storm编程:1、storm第一天上次课程内容回顾
上次课程内容回顾:
1、kafka的基本介绍:kafka是一个消息队列
2、消息队列的作用:解耦
3、kafka与传统消息队列的对比:
传统消息队列:支持事务
kafka的特点:比较快,比较快的两个原因:顺序读写磁盘,pageCache页缓存机制
4、kafka的架构模型:
producer:消息的生产者,主要就是用于生产数据
topic:消息的主题,可以理解为一类消息的高度抽象的集合
broker:服务器
partition:一个topic下面有多个partition,分区,一个partition保存了一个topic的部分消息,为了防止消息不丢失,引入副本备份机制
partition究竟应该创建多少个合适???根据实际情况而定
segment:一个partition下面有多个segement,把一个partiton当中的数据,切成了多个segment段,一个segment下面由两个文件构成
.log:我们的日志数据 hello world hadoop
.index:存储的我们的索引数据 hello 1 world 2 hadoop 3 便于我们快速的查找 使用的是二分查找法
0000000000.log
0000000000.index
0000000100.log
0000000100.index
zookeeper:保存了我们topic的一些数据信息,比如说topic有多少个partition,partition有多少个副本等等
consumer:消费者,主要用于消费我们kafka当中的数据
offset:记录消费的偏移量 2 也就是记录了我们下次的消费数据的条数
group:消费组的概念,设置不同的组,就是不同的消费者。如果A组消费了第一条数据,那么A组就再消费不到第一条数据了,但是B组还可以从第一条开始消费
5、kafka的安装:
依赖zk,需要提前安装好zk
kafka的解压,修改配置,安装包分发,启动
6、kafka的命令行的管理使用
第一个:创建topic
第二个:模拟生产者
第三个:模拟消费者
7、kafka的javaAPI的开发
8、kafka的分区策略:四种
1、指定分区号
2、没有分区号,有数据的key,按照key取上hashCode来进行分区
3、没有分区号,也没有数据的key,轮循分发数据
4、自定义分区 properties.put("partitioner.class","xxx.xxxx.xxx")
9、flume与kafka的整合
10、kafka的配置文件的说明
server.properties
consumer.properties
producer.properties
11、kafka如何保证数据不丢失
producer:消息的ack确认机制 1:leader保存好了数据 0:没有任何保证 -1 :leader以及follower都保存好了数据
consumer:消息的offset偏移量的记录
broker:备份机制
12、kafka-manager监控工具的使用
第1节 storm编程:1、storm第一天上次课程内容回顾的更多相关文章
- 第3节 storm高级应用:1、上次课程回顾,今日课程大纲,storm下载地址、运行过程等
上次课程内容回顾: ConcurrentHashMap是线程安全的,为什么多线程的时候还不好使,为什么还要加static关键字 1.storm的基本介绍:strom是twitter公司开源提供给apa ...
- storm入门(一):storm编程框架与举例
基础 http://os.51cto.com/art/201308/408739.htm 模型 http://www.cnblogs.com/linjiqin/archive/2013/05/28 ...
- storm编程指南
目录 storm编程指南 (一)创建spout (二)创建split-bolt (三)创建wordcount-bolt (四)创建report-bolt (五)创建topo storm编程指南 @(博 ...
- Storm编程模型及组件流程图
一.Storm编程模型 二.Storm组件流程图
- Storm编程入门API系列之Storm的Topology多个Workers数目控制实现
前期博客 Storm编程入门API系列之Storm的Topology默认Workers.默认executors和默认tasks数目 继续编写 StormTopologyMoreWorker.java ...
- Storm编程入门API系列之Storm的Topology多个Executors数目控制实现
前期博客 Storm编程入门API系列之Storm的Topology默认Workers.默认executors和默认tasks数目 Storm编程入门API系列之Storm的Topology多个Wor ...
- Storm编程入门API系列之Storm的Topology多个tasks数目控制实现
前期博客 Storm编程入门API系列之Storm的Topology默认Workers.默认executors和默认tasks数目 Storm编程入门API系列之Storm的Topology多个Wor ...
- Storm编程入门API系列之Storm的定时任务实现
概念,见博客 Storm概念学习系列之storm的定时任务 Storm的定时任务,分为两种实现方式,都是可以达到目的的. 我这里,分为StormTopologyTimer1.java 和 Sto ...
- 1 storm基本概念 + storm编程规范及demo编写
本博文的主要内容有 .Storm的单机模式安装 .Storm的分布式安装(3节点) .No space left on device .storm工程的eclipse的java编写 http:// ...
随机推荐
- LeetCode练题——58. Length of Last Word
1.题目 58. Length of Last Word——Easy Given a string s consists of upper/lower-case alphabets and empty ...
- DVWA实验之Brute Force(暴力破解)- Medium
DVWA实验之Brute Force(暴力破解)- Medium 有关DVWA环境搭建的教程请参考: https://www.cnblogs.com/0yst3r-2046/p/10928380. ...
- 思科交换机配置单播MAC地址过滤
1.其他厂商: 在华为,华三等设备上,我们都有“黑洞MAC地址表项” 的配置,其特点是手动配置.不会老化,且重启后也不会丢失.例如如下示例: 黑洞表项是特殊的静态MAC地址表项,丢弃含有特定源MAC地 ...
- thinkphp 取消跳转提示
$this->redirect('admin'); 就是直接用redirect
- push 、pop 、unshift 、shift
push .pop : 操作数组后面 unshift .shift :操作数组前面 push.unshift : 字母多的添加 pop .shift : 字母少的删除 push.unshift : 添 ...
- Python爬虫教程-新浪微博分布式爬虫分享
爬虫功能: 此项目实现将单机的新浪微博爬虫重构成分布式爬虫. Master机只管任务调度,不管爬数据:Slaver机只管将Request抛给Master机,需要Request的时候再从Master机拿 ...
- 3分钟让你的Eclipse拥有自动代码提示功能
第一步:Window->Preferences->Java 第二步:Java->Editor->Content Assist->Auto Activation->将 ...
- 执行脚本,且以脚本名保存log
!/bin/bash path="/sys/devices/platform/soc/fd880000.i2c-pld/i2c-0/i2c-4/i2c-15/15-0060" f_ ...
- 理解错误的 Arrays.asList()
简介 Arrays.asList() 作用是将一个数组转换为一个List 集合. String[] myArray = { "Apple", "Banana", ...
- Java 自定义DateUtils
1 /* Date d = new Date(); String s = DateUtils.DateToString(d, "yyyy-MM-dd HH:mm:ss"); Sys ...