使用纠删码系统

验证纠删码子系统

注意:纠删码子系统 (Blobstore) 提供了单独的交互式命令行管理工具。目前该工具尚未集成到 udbto-cli 中。

blobstore-cli 可以轻松管理纠删码子系统。使用 help 可以查看帮助信息。

启动 CLI

在默认配置的基础上,启动命令行工具 blobstore-cli。详细使用方法请参见 CLI 使用指南。

$> cd udbto
$> ./blobstore/bin/blobstore-cli -c ./blobstore/config/cli.conf

验证

# 上传一个文件,成功后会返回存储位置 (-d 参数后跟实际数据)
$> access put -v -d "test -data-"
#"code_mode":11 编码模式,对应EC3P3
{"cluster_id":1,"code_mode":11,"size":11,"blob_size":4194304,"crc":4291509608,"blobs":[{"min_bid":120001,"vid":500,"count":1}]}

# 下载文件
$> access get -v -l '{"cluster_id":1,"code_mode":11,"size":11,"blob_size":4194304,"crc":4291509608,"blobs":[{"min_bid":120001,"vid":500,"count":1}]}'

# 删除文件
$> access del -v -l '{"cluster_id":1,"code_mode":11,"size":11,"blob_size":4194304,"crc":4291509608,"blobs":[{"min_bid":120001,"vid":500,"count":1}]}'

创建纠删码卷

curl -v 'http://127.0.0.1:15010/admin/createVol?name=test-cold&capacity=100&owner=udbto&volType=1'

参数说明

名称 描述
name 卷名
capacity 卷配额,如果配额用完之后需要扩容
owner 卷的所属用户
volType 卷类型,0为副本卷,1为纠删码卷,默认为0

响应示例

{"code":0,"msg":"success","data":"create vol[test-cold] successfully, has allocate [0] data partitions"}

开启多级缓存

可以创建纠删码卷,并设置多副本为读写缓存

缓存读数据

curl -v 'http://127.0.0.1:15010/admin/createVol?name=test-cold&capacity=10&owner=udbtouser&volType=1&cacheCap=10&cacheAction=1'

参数说明

名称 描述
cacheCap 缓存大小, 单位GB
cacheAction 缓存类型,0表示不缓存,1表示缓存读,2表示缓存读写,默认0

缓存读、写数据

curl -v 'http://127.0.0.1:15010/admin/createVol?name=test-cold&capacity=10&owner=udbtouser&volType=1&cacheCap=10&cacheAction=2'