Pulsar分级存储 -- S3演示

本文介绍了Apache Pulsar的分级存储机制,特别是如何使用S3作为二级存储。通过示例详细展示了配置、数据产生、触发Offload以及验证过程,帮助理解Pulsar如何透明地将旧数据段迁移到低成本存储,从而节省存储成本。

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

本文会首先介绍Pulsar的分级存储。然后通过一个示例,演示在分级存储中怎样使用Amazon S3作为二级存储。

介绍

Pulsar中的每个Topic由一列有序的的段(Segment)列表组成。Pulsar只会写入其中的最后一段。 除最后一段之外,之前的所有段都已经被密封了,不能再往其中追加数据,这就是Pulsar的基于段(Segment)的存储结构。

Pulsar的基于Segment的存储架构,支持一个Topic的空间大小存储满整个存储集群。但是随着要保存的Partition的数据的逐渐增多,会让存储变的昂贵。解决这个问题的一种策略就是使用分级存储(Tiered Storage)。

使用分级存储的一个场景是用户希望对一个比较大的Topic的数据保存比较长的时间。比如一个Topic中包含所有客户的点击记录,我们可以用这个topic中的数据来训练推荐系统。如果这个Topic的数据被一直保存着,当训练的算法改变后,我们就可以重新利用这些历史数据来训练新的推荐系统。

Pulsar的分级存储功能允许将较旧的积压数据卸载到二级存储中做长期存储,从而释放BookKeeper中的空间,进而降低存储成本。使用分级存储,我们可以将一个Topic中的老的数据段(Segment)自动从BookKeeper搬出到更便宜的二级存储。对Client来说,整个过程是透明无缝的。

当Offload被手动或者自动触发之后,Broker会一个接一个地将一级存储中的段,搬移到二级存储中。

Pulsar目前支持使用S3,Google-Cloud-Storage作为二级存储。用户可以灵活配置Topic想要保留在BookKeeper(一级存储)中的大小,和数据在搬移到二级存储后多久(默认4小时)从BookKeeper中删除。

我们在这篇文章中会使用S3作为

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值