代码之家  ›  专栏  ›  技术社区  ›  Julias

对于数百个HDFS文件夹下载请求,最有效的解决方案是什么

  •  0
  • Julias  · 技术社区  · 6 年前

    每隔5-10分钟,我们在HDFS中创建一个新模型。 模型是包含多个文件的文件夹:

    1. 1G型(二进制文件)
    2. 模型元数据1K(文本文件)
    3. 模型功能1K(csv文件) ...

    另一方面,我们有数百个模型服务实例,需要在5-10分钟内将模型下载到本地文件系统并从中服务。 目前,我们使用的是来自服务(java文件系统客户端)的WebFS,但它可能会给Hadoop集群带来负载,因为它会将请求重定向到具体的数据节点。

    我们考虑使用HTTPFs服务。它有缓存功能吗?所以第一个请求将获得一个文件夹来服务内存,而下一个请求将使用已经下载的结果?

    0 回复  |  直到 6 年前
        1
  •  0
  •   Julias    6 年前

    我们找到了一个很好的解决办法。

    它可以用于Hadoop以减少读取负载,也可以用于Google/S3 bucket以降低成本。

    我们只需设置几个Ngnix服务器,并将它们配置为一个带有文件缓存的代理2分钟。

    这样,只有Ngnix机器才能从Hadoop集群下载数据。

    所有的服务机器(可能有几百台)都会从Nginx服务器中提取数据,这些数据已经在那里缓存了

    推荐文章