本文介绍OSS与文件系统在数据模型、数据获取等方面的差异对比以及概念对应关系。
差异对比
下表为OSS与文件系统在数据模型、数据获取、优势以及劣势的差异对比。
对比项 |
OSS |
文件系统 |
数据模型 |
OSS是一个分布式的对象存储服务,提供的是一个Key-Value对形式的对象存储服务。 |
文件系统是一种典型的树状索引结构。 |
数据获取 |
根据Object的名称(Key)唯一的获取该Object的内容。 虽然您可以使用类似 |
一个名为 |
优势 |
支持海量的用户并发访问。 |
支持文件的修改,例如修改指定偏移位置的内容、截断文件尾部等。也支持文件夹的操作,例如重命名目录、删除目录、移动目录等非常容易。 |
劣势 |
OSS保存的Object不支持修改(追加写Object需要调用特定的接口,生成的Object也和正常上传的Object类型上有差别)。用户即使只需要修改一个字节也需要重新上传整个Object。 OSS可以通过一些操作来模拟类似文件夹的功能,但是代价非常高。例如重命名目录,如果希望将test1目录重命名成test2,则OSS的实际操作是将所有以 |
受限于单个设备的性能。访问越深的目录消耗的资源也越大,操作拥有很多文件的目录也会非常慢。 |
从上述表格得知,不建议将OSS映射为文件系统。如果结合您的业务场景需要将OSS挂载为文件系统,建议只执行写入文件、删除文件、读取文件操作。使用OSS应该充分发挥其优点,即海量数据处理能力,优先用来存储海量的非结构化数据,例如图片、视频、文档等。
概念对应
下表为OSS与文件系统的概念对应说明。
对象存储 OSS |
文件系统 |
Object |
文件 |
Bucket |
主目录 |
Region |
无 |
Endpoint |
无 |
AccessKey |
无 |
无 |
多级目录 |
GetService |
获取主目录列表 |
GetBucket |
获取文件列表 |
PutObject |
写文件 |
AppendObject |
追加写文件 |
GetObject |
读文件 |
DeleteObject |
删除文件 |
无 |
修改文件内容 |
CopyObject (目标文件和源文件相同) |
修改文件属性 |
CopyObject(目标文件和源文件不同) |
复制文件 |
CopyObject+DeleteObject |
重命名文件 |
内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家
阿里云企业补贴进行中: 马上申请
腾讯云限时活动1折起,即将结束: 马上收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠
转转请注明出处:https://www.yunxiaoer.com/156853.html