Druid Historical Node

Druid的Historical 节点主要负责加载深存储中或Real-time节点创建的不可变数据块(segment),这些节点不会相互感知,只知道如何加载(load)、删除(drop)、和操作segment。

Historical 节点通过zookeeper来记录它们的在线状态和保存它们维护的数据元数据信息,比如加载和删除指令包含的segment在深存储中的位置信息等。

在从深存储中加载一个segment时,Historical 节点会先检查本地缓存是否含有该segment信息,如果没有,就从深存储中加载,并将该segment的可以写到本地缓存中,待加载完成,该segment的位置信息会被写到zookeeper中,此时该segment才能够被查询。加载过程如下图:

另外,根据数据的重要程度,可以对数据Historical 节点分组,称之为层级(tiers)。每个层级可以设置不同的性能和容错参数。比如那些被频繁访问的segment归入一个层,称之为hot tier,那些较少访问的segment归入一层,称之为cold tier。

由于Historical 节点使用zookeeper来保存一些元数据信息,如果zookeeper变得不可用,Historical节点将不能为新的数据提供服务,但是仍然可以对当前正在处理的数据提供查询,即不会影响当前数据的可用性。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值