Goofys 基于 S3 的 Filey 系统 Goofys

polaris2015-10-19 16:00:00 • 4191 次点击    
这是一个分享于 2015-10-19 16:00:00 的项目,其中的信息可能已经有所发展或是发生改变。

Goofys 是使用 Go 编写,基于 S3 接口的 Filey 系统。

Goofys 允许你挂载一个 s3 bucket 作为一个 Filey 系统。为什么是 Filey 系统而不是 File 系统?因为 goofys 优先考虑性能而不是 POSIX。

使用:

$ go get github.com/kahing/goofys
$ go install github.com/kahing/goofys
$ cat > ~/.aws/credentials
[default]
aws_access_key_id = AKID1234567890
aws_secret_access_key = MY-SECRET-KEY
$ $GOPATH/bin/goofys <bucket> <mountpoint>

基准测试:

使用 goofys --stat-cache-ttl 0 --type-cache-ttl 0 和 s3fs -ostat_cache_expire=1 模拟运行。基准测试详情请看 bench.sh,同时提供 Raw data。测试是在 EC2 c4.xlarge 下运行的:

operation

goofys

s3fs

speedup

Create 1000 files

49.4 +/- 1.5s

146.0 +/- 15.0s

2.96 +/- 0.32x

Unlink 1000 files

28.1 +/- 0.8s

36.7 +/- 6.2s

1.31 +/- 0.22x

ls with 1000 files

0.21 +/- 0.04s

3.5 +/- 0.6s

16.9 +/- 4.6x

Create 1000 files (parallel)

21.5 +/- 0.4s

134.2 +/- 9.1s

6.2 +/- 0.4x

Unlink 1000 files (parallel)

28.18 +/- 0.35s

38.1 +/- 4.2s

1.35 +/- 0.15x

Write 1GB

51.4 +/- 4.3MB/s

29.7 +/- 2.9MB/s

1.73 +/- 0.22x

Read 1GB

58.9 +/- 4.7MB/s

65.7 +/- 18.9MB/s

0.90 +/- 0.27x

Time to 1st byte

0.0169 +/- 0.0023s

0.98 +/- 0.06s

58.3 +/- 8.7x

a high-performance, POSIX-ish Amazon S3 file system written in GoRead More

Latest commit to the master branch on 7-18-2024
Download as zip
授权协议:
Apache
开发语言:
Google Go 查看源码»
操作系统:
跨平台
4191 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传