Broker节点
在druid集群环境中 broker节点的作用是查询。它知道metadata 通过zookeeper发送到了集群中的哪个节点,从而能够准确的查询到。broker也把各个节点的结果汇聚到一个节点中。On start up, Realtime nodes announce themselves and the segments they are serving in Zookeeper.
启动类
io.druid.cli.Main server broke
查询转发
大多数durid查询中包含一个时间间隔对象数据.同样在druid 的segments 中也有时间间隔对象。同一天或者同一星期的数据可能在集群中的不同节点中。因此,查询可能会涉及到多个节点。
要确定把查询转发到哪个节点中,broke需要从zookeeper中获取一个视图。Zookeeper 维护着 Historical 和Realtime节点中segments 的保存信息。Zookeeper 为每个数据源和broke建立一个时间关系。当查询收到特定的数据源和间隔,broke执行查找到与查询的查询数据源相关联的时间间隔和检索查询的节点包 含数据。代理节点然后转发查询选中的节点。
缓存
broker 采用LRU缓存失效的缓存机制,他把每次的查询结果存储在缓存中,可以只本地的缓存,也可以是mamcache等一些缓存集群。每次收到请求,现在缓存中 查询。如果没有在到historical 中查询,并且把查询结果保存到缓存中用于下次查询。real-time节点不的数据不缓存,因为real-time的数据是实时变化的。
Broker节点的更多相关文章
- 【原创】大叔问题定位分享(4)Kafka集群broker节点从zookeeper上消失
kafka_2.8.0-0.8.1 一 现象 生产环境一组kafka集群经常发生问题,现象是kafka在zookeeper上的broker节点消失,此时kafka进程和端口都在,然后每个broker都 ...
- kafka集群下线broker节点实践方法(broker topic 迁移)
[root@es03 ~]# cd /usr/hdp//kafka/bin [root@es03 kafka]# cd bi -bash: cd: bi: No such file or direct ...
- Kafka集群中 topic数据的分区 迁移到其他broker
前言 kafka集群扩容后,新的broker上面不会数据进入这些节点,也就是说,这些节点是空闲的:它只有在创建新的topic时才会参与工作.除非将已有的partition迁移到新的服务器上面:所以需要 ...
- Apache Qpid Broker云
一. 什么是Broker云 Apathe Qpid 支持Broker Federation ,也就是Broker联盟或者叫做Broker云.Broker Federation可以通过配置消息路 ...
- RocketMQ 源码学习笔记————Producer 是怎么将消息发送至 Broker 的?
目录 RocketMQ 源码学习笔记----Producer 是怎么将消息发送至 Broker 的? 前言 项目结构 rocketmq-client 模块 DefaultMQProducerTest ...
- RocketMQ 源码学习笔记 Producer 是怎么将消息发送至 Broker 的?
目录 RocketMQ 源码学习笔记 Producer 是怎么将消息发送至 Broker 的? 前言 项目结构 rocketmq-client 模块 DefaultMQProducerTest Roc ...
- 从RocketMQ的Broker源码层面验证一下这两个点
本篇博客会从源码层面,验证在RocketMQ基础概念剖析,并分析一下Producer的底层源码中提到的结论,分别是: Broker在启动时,会将自己注册到所有的NameServer上 Broker在启 ...
- 🏆【Alibaba中间件技术系列】「RocketMQ技术专题」Broker服务端自动创建topic的原理分析和问题要点指南
前提背景 使用RocketMQ进行发消息时,一般我们是必须要指定topic,此外topic必须要提前建立,但是topic的创建(自动或者手动方式)的设置有一个开关autoCreateTopicEnab ...
- Netty构建分布式消息队列(AvatarMQ)设计指南之架构篇
目前业界流行的分布式消息队列系统(或者可以叫做消息中间件)种类繁多,比如,基于Erlang的RabbitMQ.基于Java的ActiveMQ/Apache Kafka.基于C/C++的ZeroMQ等等 ...
随机推荐
- Redis从入门到精通
什么是Redis? Redis是非关系型数据库,是一个高性能的key-value数据库,它是开源的,更是免费的. Redis能做什么? 存储数据 Redis的优点有哪些? 1.它支持存储丰富的数据类型 ...
- QMediaPlayer占用CPU过高问题
根据搜索引擎的结果,要想实现QT下播放多媒体,一般有两种方案:一种是使用第三方插件,好像叫Phonon:一种是使用QT自带的QMediaplayer. 两种方法各有利弊.使用第三方插件,则方便易用,封 ...
- 史上最全的AJAX
概述 对于web应用程序:用户浏览器发送请求.服务器接收并处理请求,然后返回结果,往往返回就是字符串(HTML),浏览器将字符串(HTML),渲染并显示浏览器上· Ajax和Form表单提交数据的的好 ...
- 设置查询对话框的F7
1.定义自己的处理类public class MyQueryProcessor extends FMDefaultQueryProcessor { @Override public void proc ...
- JavaWeb之Servlet总结
今天上班居然迟到了,昨天失眠了,看完吐槽大会实在不知道做些什么,刚好朋友给我发了两个JavaWeb的练习项目,自己就又研究了下,三四点才睡,可能周日白天睡的太多了,早上醒来已经九点多了,立马刷牙洗脸头 ...
- JavaScript当页面关闭时向后台发送请求
今天做项目时遇上一个需求,当浏览器或页面关闭时将数据存储到数据库内.实现思想是采用js监测onunload然后发送请求.结果失败,刷新可以发送但是关闭并不能,整了一整天并没有解决,最后找到了解决办法. ...
- docker工作流程
Docker提供一种方法在容器中运行安全隔离的应用程序,应用程序与所有依赖项和库一起打包在容器中.因为你的应用程序总是可以使用它在构建镜像中期望的环境运行,测试和部署比以往任何时候都更简单,因为你的构 ...
- windows phone 8.1开发:磁铁|Tile更新
原文出自:http://www.bcmeng.com/tile/ 上一篇给大家分享了toast通知操作的方法,这一篇文章我们就来看windows phone 8.1开发中的磁铁更新.磁铁是window ...
- sqrt()平方根计算函数的实现1——二分法
C语言标准库: http://www.cplusplus.com/reference/cmath/ 在一个区间中,每次拿中间数的平方来试验,如果大了,就再试左区间的中间数:如果小了,就再拿右区间的中间 ...
- Onsen UI 前端框架(二)
上一章介绍了OnsenUI一些入门的知识以及它和AngularJS配合的初始化方法.这一章,咱们继续对这块内容进行介绍,对OnsenUI提供的组件进行更进一步的学习. 咱们从手机应用布局的最上面开始. ...