|NO.Z.00010|——————————|BigDataEnd|——|Hadoop&OLAP_Druid.V10|——|Druid.v10|架构|索引服务|
一、索引服务
### --- 索引服务
~~~ 索引服务:数据导入并创建 segments 数据文件的服务
~~~ 索引服务是一个高可用的分布式服务,采用主从结构作为架构模式,索引服务由三大组件构成
~~~ overlord 作为主节点
~~~ middlemanager是从节点
~~~ peon用于运行一个task
二、索引服务架构图如下图所示:

三、索引服务由三部分组件组成:
### --- 索引服务由三部分组件组成
~~~ # Overlord组件
~~~ 负责创建task、分发task到middlemanager上运行,
~~~ 为task创建锁以及跟踪task运行状态并反馈给用户
~~~ # MiddleManager组件
~~~ 作为从节点,负责接收主节点分配的任务,
~~~ 然后为每个task启动一个独立的JVM进程来完成具体的任务
~~~ # Peon(劳工)组件
~~~ 由middlemanager启动的一个进程用于运行一个task任务
### --- 索引服务架构与 Yarn 的架构类似:
~~~ Overlaod => ResourceManager,负责集群资源管理和任务分配
~~~ MiddleManager => NodeManager,负责接受任务和管理本节点的资源
~~~ Peon => Container,执行节点上具体的任务
### --- Task类型有很多,包括:
~~~ # index hadoop task:
~~~ Hadoop索引任务,利用Hadoop集群执行MapReduce任务以完成segment数据文件的创建,
~~~ 适合体量比较大的segments数据文件的创建任务
~~~ # index kafka task:
~~~ 用于Kafka数据的实时摄入,通过Kafka索引服务可以在Overlord上配置一个KafkaSupervisor,
~~~ 通过管理Kafka索引任务的创建和生命周期来完成 Kafka 数据的摄取
~~~ # merge task:
~~~ 合并索引任务,将多个segments数据文件按照指定的聚合方法合并为一个segments数据文件
~~~ # kill task :
~~~ 销毁索引任务,将执行时间范围内的数据从Druid集群的深度存储中删除
Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
——W.S.Landor
分类:
bdv024-druid
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」