BOS与PFS之间的数据迁移
更新时间:2024-09-05
适用场景
适用于并行文件存储PFS(标准型、增强型、极速型、极速型L2)与对象存储BOS之间的数据传输。
基本原理
将PFS挂载至BCC中,利用BOS命令行工具(BOS CMD) 将数据写入挂载目录或从挂载目录读出。
操作步骤
第一步:在同一VPC及可用区内创建BCC及PFS。
第二步:将PFS挂载至BCC中,挂载后的PFS文件系统即可当作一个普通的本地目录来访问和使用。
- PFS 极速型L2的挂载方式请见:BCC挂载与卸载(极速型L2)
- PFS 标准型、增强型和极速型的挂载方式请见:BCC挂载与卸载(标准型、增强型和极速型)
第三步:利用BOS命令行工具(BOS CMD), 直接从BOS读取数据并写入到挂载目录,或者直接将挂载目录中的文件通过工具写入BOS。
- 使用BOS CMD工具进行数据传输,请参见:安装BOSCMD、配置BOSCMD、通过CMD使用BOS服务
注:有经验的开发者也可利用BOS SDK进行数据传输,请参见:BOS SDK
简单示例
示例1:下例简要介绍如何使用BOS CMD工具将PFS数据迁移到BOS中。更多详细用法(如设置上传方式、设置BOS存储类型等)请参考:Object上传。
# 示例场景:已将PFS挂载至BCC的本地路径"/mnt/pfs",并将数据同步到"bos:/bce-test/test"下
# 操作示例:
bcecmd bos sync /mnt/pfs/ bos:/bce-test/test
示例2:下例简要介绍如何使用BOS CMD工具将BOS数据迁移到PFS中。更多详细用法(如设置下载方式等)请参考:Object下载。
# 示例场景:已将PFS挂载至BCC的本地路径"/mnt/pfs",并将数据从"bos:/mybucket/pre/"下载至"/mnt/pfs"中
# 操作示例:
bcecmd bos sync bos:/mybucket/pre/ /mnt/pfs/
常见问题
数据传输效率有多大?与什么有关?
答:无论是导入(将BOS数据导入到PFS)还是导出(将PFS数据导出到BOS),数据传输速率均与“PFS实例性能、BOS带宽、BCC内网带宽、并发数、文件大小等"有关。
- PFS实例性能随购买容量线性扩展。详见:产品规格。
- BOS带宽:BOS 对单 Bucket 设置的内网带宽阈值为 50 Gbit/s (约6GBps)。详见:BOS使用限制。
- BCC不同规格的内网带宽请见:BCC实例规格。
- 并发数:通过BOS CMD工具数据传输时,可以设置并发数,不同并发数据传输速度不一样。详见:Object上传、Object下载。
- 文件大小:大文件通常是指文件大小在几百MB到几GB,甚至更大,大文件传输速率主要与带宽有关;小文件通常是指文件大小在几KB到几MB之间的文件,小文件传输速率较慢。
下面是一实际数据传输案例,仅供参考,实际性能可能有所出入:
-
测试环境:
- ① 客户端BCC 1台,规格为bcc.g5.c64m256,网卡带宽为22GBps
- ② PFS 极速型L2 容量200TB
- ③传输工具:BOS CMD,并发参数(--concurrency 90)设置为90
- ④测试数据:20万个5MB文件
-
传输效率:
- BOS数据传输到PFS:传输速率约2.23GB/s,耗时约7m17
- PFS数据传输到BOS:传输速率约2.48GB/s,耗时约6m33