Scheme覆盖式的ViewFileSystem设计实现
文章目录 前言 Scheme覆盖式的ViewFileSystem ViewFileSystemOverloadScheme的实现 引用 前言 在多HDFS集群模式中,我们为了使得多集群对于client端的透明使用,一般可以采用的是ViewFs的方案。当然后来社区实现的HDFS RBF功能无疑是更佳的选择,但是在RBF出现,ViewFs实现的更早且方案更为简单,因此ViewFs是通过在client端实现的一个请求解析以及转发。但是本文我们来讨论一个ViewFs使用的痛点问题:ViewFs高成本的配置更新问题以及更为tricky的hdfs路径写死 metadata和应用程序里的问题。前者我们可以通过中心化统一viewfs配置的方式解决,而本文我们来主题聊聊后面这个难题。这里提到的写死hdfs路径在应用服务中的情况,它实质所要表达的意思是:如何在不改变现有程序中的路径的情况下,server端还是能够自动帮我重定向到新的target路径上去。本文笔者来聊聊目前社区对此的功能实现。 Scheme覆盖式的ViewFileSystem 我们再来用一个简单的例子来阐述下上面提到的例子。 我们现有以下写死的配置,路径指向关系如下: hdfs://clusterA/a —> hdfs://clusterA/a hdfs://clusterB/b —> hdfs://clusterB/b