在同一文件夹下添加本地文件夹和NFS共享

我有许多文件和数据库服务器,由几个节点使用。 最近,由于来自节点的大量读取,我遇到了存储库上的高负载问题。

我想要做的是在节点上最近使用一些最新的数据(滑动窗口),在本地节点上使用得最多,幸运的是我在节点上有一些SSD空间。 在节点上运行的只有less量作业需要来自存储库本身的旧数据。 现在的问题是,是否有任何选项将来自NFS共享的数据与本地存储在同一文件夹下的数据结合起来。 使用数据的应用程序不太适合转到不同的文件夹。 结构如下:

> Share: /data/YYYY/YYYYMM/..... > Local: /local/YYYY/YYYYMM/.... (But only last 3 months) 

我想把它安装在同一个文件夹下,例如/mnt/2015/201512 /mnt/2015/201511将在本地SSD上, /mnt/2015/201511将从存储库服务器

可以使用像overlayfs: https ://www.kernel.org/doc/Documentation/filesystems/overlayfs.txt

有类似的软件包,如aufs或UnionFS。 aufs是afaik,已经过时了。

我没有这些软件包的经验,这似乎是一个丑陋的事情。 我会尝试解决与读取caching添加到NFS服务器的问题。 只要足够大,让它运行一段时间,从你的描述你应该得到体面的命中率。

Linux中的nfs客户端本地支持在本地磁盘上caching数据 – 所谓的CacheFS 。 在大多数caching中,只需configuration数据存储位置,并通过挂载选项告诉客户端启用本地caching。 有关详细信息,请查看CentOS / RHEL CacheFS:加速NFS访问 。