GlusterFS 服务器选项 cluster.readdir-optimize 控制什么?
What does the GlusterFS server option cluster.readdir-optimize control?
我一直在尝试优化我的 GlusterFS 存储集群的小文件性能。
许多论坛帖子和博客帖子似乎建议在音量上设置 cluster.readdir-optimize
属性,例如:
$ gluster volume get test-share cluster.readdir-optimize on
此选项的默认值(从 GlusterFS v3.10 开始)似乎是 off
,这让我认为启用此功能必须进行一些权衡。但是,我无法在任何地方找到任何文档来准确解释此选项的作用。
我想在生产中启用它之前了解此选项的功能。
如相关 GlusterFS git 存储库 commit message 中所述,readdir-optimize
选项支持以下内容:
Bring in option which is supported by posix xlator
to filter out directory's entries from being returned.
DHT would now request non-first subvols to filter out
directory entries.
我不完全理解这如何直接提高 GlusterFS 中小文件的性能。但根据 GlusterFS documentation,BD xalator 执行包装 GlusterFS 块后端的功能,并使 GlusterFS 卷由本身是底层逻辑卷的砖块组成。
我一直在尝试优化我的 GlusterFS 存储集群的小文件性能。
许多论坛帖子和博客帖子似乎建议在音量上设置 cluster.readdir-optimize
属性,例如:
$ gluster volume get test-share cluster.readdir-optimize on
此选项的默认值(从 GlusterFS v3.10 开始)似乎是 off
,这让我认为启用此功能必须进行一些权衡。但是,我无法在任何地方找到任何文档来准确解释此选项的作用。
我想在生产中启用它之前了解此选项的功能。
如相关 GlusterFS git 存储库 commit message 中所述,readdir-optimize
选项支持以下内容:
Bring in option which is supported by posix xlator to filter out directory's entries from being returned. DHT would now request non-first subvols to filter out directory entries.
我不完全理解这如何直接提高 GlusterFS 中小文件的性能。但根据 GlusterFS documentation,BD xalator 执行包装 GlusterFS 块后端的功能,并使 GlusterFS 卷由本身是底层逻辑卷的砖块组成。