hadoop - variable - rank pig latin




Cochon en mode grognon (3)

J'ai installé cygwin, hadoop et cochon dans les fenêtres. La configuration semble correcte, car je peux exécuter des scripts pig en mode batch et embarqué.

Quand j'essaie de lancer un cochon en mode grognon, il se passe quelque chose d'étrange. Laisse-moi expliquer. J'essaie d'exécuter une commande simple comme

grunt> A = load 'passwd' using PigStorage(':'); 

Lorsque j'appuie sur Entrée, rien ne se passe. Le curseur passe à la ligne suivante et l'invite grunt> n'apparaît plus du tout. Il semble que je tape dans un éditeur de texte.

Est-ce que quelque chose de semblable vous est déjà arrivé? Avez-vous une idée de comment puis-je résoudre ce problème?


Le comportement est cohérent avec ce que vous observez. Je vais prendre le tutoriel de porc par exemple.

La commande suivante n'entraîne aucune activité de la part de pig .

raw = LOAD 'excite.log' USING PigStorage('\t') AS (user, time, query);

Mais si vous invoquez une commande qui résulte de l'utilisation de données à partir de la variable raw utilisant un peu de map-reduce, vous verrez une action dans votre shell grunt. Quelque chose dans le sens de la deuxième commande qui est mentionné ici.

clean1 = FILTER raw BY org.apache.pig.tutorial.NonURLDetector(query);

De même, votre commande n'entraînera aucune action, vous devez utiliser les données de la variable A ce qui entraîne une commande map-reduce pour voir une action sur le shell grunt:

grunt> A = load 'passwd' using PigStorage(':'); 

Pig ne traitera les commandes que si vous utilisez une commande qui crée une sortie à savoir DUMP (pour console) ou STORE vous pouvez également utiliser la commande DESCRIBE pour obtenir la structure d'un alias et EXPLAIN pour voir la carte / réduire le plan

donc fondamentalement DUMP A; vous donnera tous les enregistrements en A


La coquille de porc raccroche dans cygwin. Mais le script de cochon a été exécuté avec succès à partir du fichier de script de porc.

Comme ci-dessous:

$pig ./user/input.txt  

Pour le mode local:

pig -x local ./user/input.txt




gruntjs