2012-08-11 51 views
0

我在某些aws实例上运行HDFS(0.20.2)。我强制HDFS将文件的所有块写入一个datanode(通过将复制减少为1并仅添加1个datanode)。本地HDFS访问应该更快吗?

在本地访问文件时(在存储块的datanode上)或从群集中的其他主机访问文件时,我看不到任何显着的性能差异。本质上,执行copyToLocal所花费的时间与本地数据节点或任何其他机器上的完全相同(同样的情况适用于通过JAVA-API访问) 应该不会有区别吗?

该文件的大小为3.5 GB,块大小为128MB(如果这很重要)。普通媒体实例的实例。

更新

THX您的建议,但实际的问题,只有在大情况下,我得到预期的行为发生在小型或中型实例(所以本地访问是显著快〜20岁VS〜40岁)。

+0

1.运行copyToLocal命令的客户端曾经位于数据所在的datanode上,然后位于另一台机器上? 2. namenode在同一台机器上? – Razvan 2012-08-11 13:55:48

+0

1.是 2.否namenode位于没有datanode的另一台机器上 – cedrics 2012-08-11 14:31:26

+0

由于只有一个datanode,所以副本放置策略没有任何区别。作为一个便笺,你能告诉我们你在这两起案件中获得的时间吗? – Razvan 2012-08-11 14:35:38

回答