文件网关秒级同步OSS变更对象初体验

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,内容安全 1000次 1年
阿里云盘企业版 CDE,企业版用户数5人 500GB空间
简介:

背景

文件网关提供与OSS对象1:1映射的文件服务,从文件网关挂载点写入的文件可以快速上传到OSS,但是OSS反向同步一直是个痛点。用户通过云控制台,OSS传输工具或者SDK上传变更了一个对象文件,如何让网关以及客户端的挂载点快速的感知到呢?

文件网关之前提供的解决方案是定时按需触发扫描,也即用户主动进入目录,会去扫描OSS对应的同步当前目录和次级目录下的文件,并且反向同步到网关侧,每个时间周期内只触发一次扫描。该解决方案在简单的交互场景下可以满足用户的基本需求,但是存在两个缺点。首先是扫描周期不能设的太短,不然用户浏览文件夹的时候会频繁触发OSS扫描增加时延,影响了浏览体验,同时也会增加OSS请求量,产生一定的费用。目前控制台上允许的最小值是15s,对于反向同步敏感的客户来讲就无法满足了。其次是扫描对海量文件目录结构很不友好,即便是海量文件里变更了少数几个文件,也需要全量扫描,造成的开销很大。

用户需要一种更加友好彻底的解决方案,以极小的开销去获取增量变化信息。网关在此背景下推出了极速同步功能,能够帮助用户秒级获取OSS的增量变化,并在网关侧上及时更新。

极速同步原理

文件网关为用户配置了OSS事件规则,利用MNS消息队列服务获取OSS的变更事件,并对这些增量文件去OSS获取最新的元数据信息,有效的避免了之前的扫描开销,让秒级同步成为了现实。
sync_arch

在开启网关极速同步功能时,网关控制台会预先获得用户的授权访问MNS服务,创建对应的事件通知规则,消息主题和消息队列,用户不需要做额外的MNS操作。

创建同步组

在网关控制台左边栏新增了“极速同步”标签页,选中之后会看到已经创建的各个区域的全局同步组列表。在创建同步组的页面里填入与文件共享相同的Bucket和子目录信息,为了优化交互,Bucket下拉框只会列出已经存在共享的Bucket,而不是该region下的所有Bucket,所以创建同步组时,请确保目标Bucket至少有一个文件共享已经存在。

create_sync

如下图所示,未加入同步组的共享详情如下,可以通过该链接快速跳转到极速同步标签页。
share_no_sync

在同步组设置中,左边框会列出该Bucket下适配同步组的所有共享,在共享名称旁边是网关名称/网关region信息,方便用户定位,选中共享移到右边框即可加入同步组。
add_sync

加入同步组成功之后,可以在同步组的详情页里看到已经创建的消息主题和消息队列等信息。

sync_detail

也可以通过共享详情页看到该同步组ID信息。

share_info

体验极速同步

笔者在OSS控制台上做了几组操作包括上传/删除文件,创建/删除目录,通过SMB挂载在Windows客户机器上即刻可以看到,妥妥的秒级同步。通过NFS挂载访问共享时,使用默认挂载参数时会有20s左右的时延才可以看到OSS
的变化,这是由于NFS客户端缓存了元数据导致,添加上noac这个挂载参数就可以禁掉客户端缓存,实时去获取网关最新的元数据,也能够达到秒级同步的效果。

小结

本文详细介绍了文件网关的极速同步功能以及操作,并且重点介绍了OSS反向同步这个场景下的初体验,总体来讲体验是比较惊艳的,后面还会从其他场景的视角去解读这个新特性,敬请期待。

相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
目录
相关文章
|
2月前
|
对象存储
一个通过 GitHub Action 将 GitHub 仓库与阿里云 OSS 完全同步的脚本
一种将 GitHub 仓库完全同步到阿里云 OSS 的方法。
|
3月前
|
存储 API Swift
Ceph Reef(18.2.X)之Swift操作对象存储网关
这篇文章详细介绍了Ceph Reef(18.2.X)中通过Swift API操作对象存储网关的方法,包括创建用户、子用户、配置环境变量、以及使用swift命令行工具进行存储桶和对象的管理。
37 7
Ceph Reef(18.2.X)之Swift操作对象存储网关
|
3月前
|
存储 对象存储
Ceph Reef(18.2.X)的对象存储网关(rgw)组件搭建
这篇文章是关于Ceph Reef(18.2.X)版本中对象存储系统的配置和使用案例,包括对象存储网关的概述、核心资源介绍、Ceph RGW支持的接口、高可用radosgw的部署、s3cmd工具的使用以及如何通过HTTP方式访问对象存储。
95 3
Ceph Reef(18.2.X)的对象存储网关(rgw)组件搭建
|
3月前
|
存储 对象存储
radosgw高可用对象存储网关实战指南
关于radosgw高可用对象存储网关的实战指南,涵盖了从基本概念到具体操作案例,再到架构设计和使用技巧的全面介绍。
68 6
|
3月前
|
对象存储 Python
Ceph Reef(18.2.X)之python操作对象存储网关
这篇文章介绍了如何在Ceph Reef(18.2.X)环境中使用Python操作对象存储网关(rgw),包括环境搭建、账号创建、使用s3cmd工具以及编写和测试Python代码。
50 3
|
4月前
|
文字识别 算法 API
视觉智能开放平台产品使用合集之上传素材文件不在同一地域的OSS,怎么上传多张图片
视觉智能开放平台是指提供一系列基于视觉识别技术的API和服务的平台,这些服务通常包括图像识别、人脸识别、物体检测、文字识别、场景理解等。企业或开发者可以通过调用这些API,快速将视觉智能功能集成到自己的应用或服务中,而无需从零开始研发相关算法和技术。以下是一些常见的视觉智能开放平台产品及其应用场景的概览。
47 1
|
4月前
|
存储 运维 Serverless
函数计算产品使用问题之OSS触发器是否可以只设置文件前缀
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
5月前
|
存储 关系型数据库 算法框架/工具
Ceph对象网关,多区域网关
Ceph对象网关,多区域网关
45 6
|
5月前
|
消息中间件 分布式计算 DataWorks
DataWorks产品使用合集之如何使用Python和阿里云SDK读取OSS中的文件
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
5月前
|
DataWorks 安全 定位技术
DataWorks产品使用合集之如何同步OSS中的Parquet数据,并解析里面的数组成多个字段
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。

相关产品

  • 对象存储
  • 下一篇
    无影云桌面