HDFS: The short-circuit local reads feature cannot be used


問題:

method:org.apache.hadoop.hdfs.DomainSocketFactory.<init>(DomainSocketFactory.java:69) The short-circuit local reads feature cannot be used because libhadoop cannot be loaded.

不能使用local read的優化策略;

解決:

 Hadoop的一大基本原則是移動計算的開銷要比移動數據的開銷小。因此,Hadoop通常是盡量移動計算到擁有數據的節點上。這就使得Hadoop中讀取數據的客戶端DFSClient和提供數據的Datanode經常是在一個節點上,也就造成了很多“Local Reads”。

 

修改配置如下:

<configuration>  
  <property>  
   <name>dfs.client.read.shortcircuit</name>  
    <value>true</value>  
  </property>  
  <property>  
   <name>dfs.domain.socket.path</name>  
   <value>/var/lib/hadoop-hdfs/dn_socket</value>  
  </property>  
</configuration>  

 參考:

http://blog.csdn.net/jewes/article/details/40189263


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM