2012-08-11 49 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

回答