我需要使用廉价的现有硬件构建一个容错、高可用性的键/值存储(无 posix,仅具有与 S3 相同的功能)。该存储应能够处理数十亿个项目。项目的最大大小约为 1GB,大多数只有几 KB。什么是最适合此任务的软件/文件系统?
我已经简要了解了 mogilefs、mongodb (grid-fs) 和 glusterfs,但我不确定哪个足够稳定和容错。设置和后续扩展越简单越好 :)。
科林
答案1
米尼奥正是为此类用例而构建的。它是开源的,与 AWS S3 兼容的 API,作为单个二进制文件。您可以在 Windows、Linux 和 Mac 上运行它。
您可以在本地文件系统(例如 Ext4、NTFS、XFS)上运行它。
在Linux上安装:
$ wget https://dl.minio.io/server/minio/release/linux-amd64/minio
$ chmod 755
$ ./minio server /datadir
datadir:存储 bucket 和对象的目录
您可以访问Minio 客户端也Minio浏览器[与服务器捆绑]
mc implements the following commands.
ls List files and folders.
mb Make a bucket or folder.
cat Display contents of a file.
pipe Write contents of stdin to one or more targets. When no target is specified, it writes to stdout.
share Generate URL for sharing.
cp Copy one or more objects to a target.
mirror Mirror folders recursively from a single source to many destinations.
diff Compute differences between two folders.
rm Remove file or bucket [WARNING: Use with care].
access Manage bucket access permissions.
session Manage saved sessions of cp and mirror operations.
config Manage configuration file.
update Check for a new software update.
version Print version.
希望能帮助到你。
免责声明:我为米尼奥
答案2
还有其他的,但是 OCFS2 可以完成所有这些。
答案3
我会考虑 GPFS 和 GLusterFS。我们目前正在探索这两种文件系统以满足企业需求。
答案4
这实际上取决于您要处理的存储目标、您打算服务的客户以及您的性能和可靠性要求。头孢如果这些问题的答案涉及“具有库存 2.6.43 或更高内核的 Linux”和“相对不受可怕的公司所有权的束缚”,就像最近对 Lustre(现在由 Oracle 全资拥有)的担忧一样,那么就会想到。