2

在hadoop中,通过knox + webhdfs可以访问/摄取到HDFS的数据大小是否有限制?

4

2 回答 2

3

当您需要从受防火墙保护的集群外部访问 webhdfs 资源时,Apache Knox 是您的最佳选择。如果您无法访问所有数据节点端口,那么直接访问 webhdfs 将不适合您。为所有这些主机打开防火墙漏洞:端口破坏了防火墙的目的,引入了管理噩梦并将网络详细信息不必要地泄露给外部客户端。

正如 Hellmar 所指出的,这取决于您的特定用例和客户。如果您需要摄取大量文件或大量文件,那么您可能需要考虑一种不同的方法来访问这些客户端的集群内部。如果您只需要访问任何大小的文件,那么您应该能够将该访问权限扩展到许多客户端。

不必使用 kerberos/SPNEGO 进行身份验证来访问此类资源会打开许多​​可能的客户端,否则这些客户端将无法用于安全集群。

Knox 用户指南包含访问 webhdfs 资源的示例 - 您可以找到它们:http ://knox.apache.org/books/knox-0-7-0/user-guide.html#WebHDFS - 这也说明了基于 groovy可从 Knox 获得脚本。这使您可以做一些非常有趣的事情。

于 2016-01-21T13:53:37.127 回答
2

理论上,没有限制。但是,使用 Knox 会产生瓶颈。Pure WebHDFS 会将每个块的读/写请求重定向到(可能)不同的数据节点,并行访问;但是对于 Knox,所有内容都通过单个网关进行路由并进行序列化。

话虽如此,您可能不想使用 Knox 和 WebHDFS 上传大文件。它只会花费太长时间(并且取决于您的客户,您可能会超时。)

于 2015-09-22T07:44:05.973 回答