Hazelcast 知识点认知梳理

本文介绍了Hazelcast,一个内存数据网格,提供分布式存储和计算。它使用内存中数据存储,通过分区和备份确保数据分布和容错。Hazelcast提供了如Map、Queue等分布式数据结构,并通过Executor service和Jet引擎支持分布式计算。Jet引擎用于执行Pipeline任务,实现数据批处理和流处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. Hazelcast 是什么?

  • 分布式存储
  • 分布式计算

2. Hazelcast 的分布式存储是什么样的?

Hazelcast 官方称不依赖于磁盘存储,将所有运行状态保存在集群的随机存取存储器 (RAM) 中,然后由集群成员的 RAM 组合成一个内存数据存储,这种分布式模型称为_缓存集群。_
Hazelcast 提供了多种数据存储结构,例如Map、Queue、MultiMap、Set、List、Semaphore、Atomic 等常用接口的分布式实现,以及结构Topic可应用到分布式主题(发布/订阅服务器)为智能手机构建可扩展的聊天服务器,

以Map接口为例,当我们通过Hazelcast创建一个Map实例后,我们在节点A调用 Map::put("A","A_DATA") 方法添加数据,然后可以在节点B使用 Map::get("A") 获取到值为"A_DATA" 的数据。

3. Hazelcast存储数据的实现过程

3.1 Hazelcast分区

由于Hazelcast 服务之间是端对端的,没有主从之分,集群中所有的节点都存储等量的数据以及进行等量的计算。

Hazelcast 默认情况下把数据存储在 271 个区上,这个值可以通过系统属性 hazelcast.partition.count来配置。

3.2 Hazelcast分区存储原理

对于一个给定的键,在经过序列化、哈希并对分区总数取模之后能得到此键对应的分区号,所有的分区等量的分布与集群中所有的节点中,每个分区对应的备份也同样分布在集群中。

也就是说 Hazelcast 会使用哈希算法对数据进行分区,比如对于一个给定的map中的键,或者topic和li

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值