Benutzer-Werkzeuge

Webseiten-Werkzeuge


nosql:hadoop_connect_from_windows

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Nächste ÜberarbeitungBeide Seiten der Revision
nosql:hadoop_connect_from_windows [2014/08/06 20:03] gpipperrnosql:hadoop_connect_from_windows [2014/08/06 21:01] – [Hadoop local mit cygwin auf einen Windows 7 Rechner aufrufen] gpipperr
Zeile 1: Zeile 1:
-=====HDFS Files remote lesen - Mit MS Windows Clients mit Hadoop arbeiten===== 
- 
- 
-=== HDFS Zugriff über Windows === 
- 
-Software Clients: 
-  * http://bigdata.red-gate.com/hdfs-explorer.html 
- 
- 
-=== Java Klasse um vom Windows Host auf das HDFS zuzugreifen=== 
- 
- 
-<code java> 
-package gpi.hadoop; 
- 
-/** 
-see main code: 
-https://sites.google.com/site/hadoopandhive/home/hadoop-how-to-read-a-file-from-hdfs 
-*/ 
- 
-import java.io.*; 
-import org.apache.hadoop.fs.*; 
-import org.apache.hadoop.conf.*; 
- 
-public class ReadHDFS { 
- 
-    public static void main(String[] args) throws Exception { 
-        try { 
-            //configuration 
-            Configuration conf = new Configuration(); 
-            Path path = new Path("hdfs://nosqldb01:9000/data/gpi/README.txt"); 
-             
-            //handle to the file 
-            FileSystem fs = FileSystem.get(path.toUri(), conf); 
-            FSDataInputStream inputStream = fs.open(path); 
- 
-            //read the file 
-            BufferedReader br = new BufferedReader(new InputStreamReader(inputStream)); 
-            String line; 
-            line = br.readLine(); 
-            while (line != null) { 
-                System.out.println(line); 
-                line = br.readLine(); 
-            } 
-             
-        } catch (Exception e) { 
-            System.out.println(e.toString()); 
-        } 
- 
-    } 
-} 
- 
-</code> 
- 
-== Fehler beim ersten Versuch: == 
-<code> 
-2014-07-13 13:16:34,686 ERROR [main] util.Shell (Shell.java:getWinUtilsPath(336)) - Failed to locate the winutils binary in the hadoop binary path 
-java.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries. 
- 
-</code> 
- 
-Lösung: 
- 
-Hadoop Home Directory setzen: Java Parameter **hadoop.home.dir** wie z.B: "-Dhadoop.home.dir=D:\entwicklung\libraries\hadoop-2.4.1" 
- 
-**UND** 
- 
-Die Libraries für Windows übersetzen siehe => https://wiki.apache.org/hadoop/Hadoop2OnWindows oder alternativ hier eine übersetze Version der Libraries laden => http://www.srccodes.com/p/article/39/error-util-shell-failed-locate-winutils-binary-hadoop-binary-path . 
- 
- 
- 
-==== Hadoop local mit cygwin auf einen Windows 7 Rechner aufrufen ==== 
- 
- 
-Cygwin installieren und Umgebung wie unter Linux in der .bashrc setzen: 
- 
-<code bash> 
- 
-#Hadoop Home 
-export HADOOP_HOME=/cygdrive/d/entwicklung/libraries/hadoop-2.4.1 
-  
-# Avoid Java Lib errros 
-export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native 
-export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib" 
-  
-# Hadoop environment Variables 
-export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop 
-export HADOOP_MAPRED_HOME=$HADOOP_HOME 
-export HADOOP_COMMON_HOME=$HADOOP_HOME 
-  
-  
-#JAVA 
-export JAVA_HOME=/cygdrive/d/entwicklung/java/jdk1.7.0_45 
- 
-#fix CLASSPATH 
-export HADOOP_CLASSPATH=$(cygpath -pw $($HADOOP_HOME/bin/hadoop classpath)):$HADOOP_CLASSPATH 
- 
-  
-#Defaults 
-export PATH=$HADOOP_HOME/bin:$PATH 
- 
-</code> 
- 
-Beim ersten Test des ausgepackten Hadoop wird folgender Fehler mit dem Classpath geworfen: 
- 
-<code bash> 
-$ ./hadoop version 
-Fehler: Hauptklasse org.apache.hadoop.util.VersionInfo konnte nicht gefunden oder geladen werden 
-</code> 
- 
- 
-Lösung: 
-Umgebung anpassen oder im Script den Aufbau vom Klassenpfad anpassen: 
-<code bash> 
-export HADOOP_CLASSPATH=$(cygpath -pw $($HADOOP_HOME/bin/hadoop classpath)):$HADOOP_CLASSPATH 
-</code> 
  
nosql/hadoop_connect_from_windows.txt · Zuletzt geändert: 2014/09/24 14:30 von gpipperr