У меня есть CSV-файл sample.csv
, расположенный в \home\hadoop\Desktop\script\sample.csv
. Я пытался загрузить в PIG, используя
movies = load '/home/hadoop/Desktop/script/sample.csv' using PigStorage(',') as (id,name,year,rating,duration);
Но этот оператор PIG выдает ошибку, но, давая оператор как dump movies;
, он выдает ошибку и показывает, что ввод и вывод не выполняются.
Подскажите, пожалуйста, как загрузить данные с помощью оператора pig.
3 ответа
Если ваш входной файл находится на локальном уровне, вы можете войти в оболочку grunt, набрав pig -x local
Если вы войдете в оболочку grunt, вы можете ввести следующую инструкцию
record = LOAD '/home/hadoop/Desktop/script/sample.csv' using PigStorage(',') as (id:int,name:chararray,year:chararray,rating:chararray,duration:int);
dump record;
Если ваш входной файл не находится в локальном, сначала вам нужно скопировать этот файл из локального в HDFS, используя команду ниже
hadoop dfs -put <path of file at local> <path of hdfs dir>
После загрузки файла в HDFS вы можете войти в режим уменьшения карты, набрав свинью
Снова будет открыта хрюкающая оболочка. ia при условии, что ваше местоположение HDFS выглядит примерно так, как показано ниже в инструкции LOAD
record = LOAD '/user/hadoop/inputfiles/sample.csv' using PigStorage(',') as (id:int,name:chararray,year:chararray,rating:chararray,duration:int);
dump record;
Откройте оболочку pig в локальном режиме с помощью pig -x local
, и если ваш файл присутствует в hdfs, вы можете использовать pig
, чтобы открыть оболочку гранта.
$pig -x local
grunt> movies = load '/home/hadoop/Desktop/script/sample.csv' using PigStorage(',') as (id:int,name:chararray,year:chararray,rating:chararray,duration:chararray);
grunt> dump movies;
Вы также можете использовать команду copyFromLocal в оболочке grunt, чтобы переместить локальный файл в hdfs.
Похожие вопросы
Новые вопросы
hadoop
Hadoop - это проект с открытым исходным кодом Apache, который предоставляет программное обеспечение для надежных и масштабируемых распределенных вычислений. Ядро состоит из распределенной файловой системы (HDFS) и менеджера ресурсов (YARN). Различные другие проекты с открытым исходным кодом, такие как Apache Hive, используют Apache Hadoop в качестве слоя персистентности.