IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Collection et Stream Java Discussion :

Hadoop Map/Reduce Job and NullPointerException


Sujet :

Collection et Stream Java

  1. #1
    Membre habitué

    Inscrit en
    Novembre 2009
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 84
    Points : 194
    Points
    194
    Billets dans le blog
    3
    Par défaut Hadoop Map/Reduce Job and NullPointerException
    Hello tout le monde.

    J'ai just fait un petit projet Hadoop MR qui se lance bien de bout en bout dans NetBeans, apr contre quand je lance le job en question via hadoop jar ... j'obtiens un NullPointerException sur un objet que j'instantie dans la class Main (j'ai verifie il n'est pas null a ce moment la...) mais utilise dans une autre (dans le Mapper). Est ce que le script shell Hadoop rajoute des options de securite ou alors cela vient d'une toute autre chose ??
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    INFO mapred.JobClient: Task Id : attempt_201401141114_0001_m_000000_1, Status : FAILED
    java.lang.NullPointerException
            at dclink.hadoop.main.Main.getDC(Main.java:156)
            at dclink.hadoop.mapper.DCMapper.map(DCMapper.java:75)
            at dclink.hadoop.mapper.DCMappermap(DCMapper.java:32)
            at org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:50)
            at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:430)
            at org.apache.hadoop.mapred.MapTask.run(MapTask.java:366)
            at org.apache.hadoop.mapred.Child$4.run(Child.java:255)
            at java.security.AccessController.doPrivileged(Native Method)
            at javax.security.auth.Subject.doAs(Subject.java:416)
            at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1190)
            at org.apache.hadoop.mapred.Child.main(Child.java:249)
    -----------------------------------------------
    Dilettante assume

  2. #2
    Membre actif
    Homme Profil pro
    Consultant BigData
    Inscrit en
    Juillet 2009
    Messages
    129
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Consultant BigData

    Informations forums :
    Inscription : Juillet 2009
    Messages : 129
    Points : 280
    Points
    280
    Par défaut
    Bonjour,

    Ta méthode main est celle qui configure le Driver. Quand tu joues ton programme en mode local, le Driver s'exécute dans la même JVM que celle qui exécute le Mapper.

    Quand tu passe sur ton cluster (en utilisant la commande hadoop jar ...), le code du Mapper et celui du Driver s'exécutent dans deux JVM différentes. Donc, ton objet instancié dans le Driver n'est pas visible du Mapper.

    Les solutions pour remédier à ce problème :
    - Instancier ton objet dans la méthode de setup du Mapper
    - Fournir ton objet via la configuration du job
    A noter que la seconde solution n'est viable que pour un objet de type très simple (String, int, etc.).

Discussions similaires

  1. Hadoop ecosysteme - Hive - hbase - Pig - Map reduce
    Par bordi dans le forum Hadoop & co
    Réponses: 20
    Dernier message: 22/06/2015, 21h52
  2. Réponses: 2
    Dernier message: 04/10/2014, 02h49
  3. [Mission/Télétravail] Développeur Java/Map Reduce/Javascript/Python
    Par Alan44 dans le forum Demandes
    Réponses: 0
    Dernier message: 11/02/2014, 16h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo