Я только что написал свой первый сценарий свиньи, он, похоже, не продвинулся вперед. Некоторая справочная информация:Pig Not Making Any Progress
Я запускаю CDH4.5 на VMware CentOS 6.4, все они установлены из репозитория yum от Cloudera. Он настроен на то, чтобы все выполнялись в псевдораспределенном режиме. Все работает как сервис, и, кажется, настроены правильно (слава богу!)
Вот моя свинья сценарий:
A = LOAD '/user/msknapp/county_insurance_pp.txt' AS (fips:int,st:chararray,stfips:int,name:chararray,a:int,b:int,c:int,d:int,e:int,f:int,g:int);
DUMP A;
Входной файл был взят из Data.gov, это некоторые страховые данные. Я предварительно обработал его, вот полезная информация:
[[email protected] data]$ cat county_insurance_pp.txt | grep BUTLER
1013 AL 1 BUTLER 54480 129 3287 57895
19023 IA 19 BUTLER 27291 29659 3386 25150 85486
20015 KS 20 BUTLER 233855 10028 456 29278 5759 279376
21031 KY 21 BUTLER 4164 453 4617
29023 MO 29 BUTLER 48240 5217 738 2042 25081 81317
31023 NE 31 BUTLER 4406 153 609 5168
39017 OH 39 BUTLER 856205 103041 3854 38648 203328 19832 1224910
42019 PA 42 BUTLER 1072941 19131 190 60648 68692 50230 1271832
[[email protected] data]$ hadoop fs -cat /user/msknapp/county_insurance_pp.txt | head
1001 AL 1 AUTAUGA 215624 37156 46 130 53237 140420 446614
1003 AL 1 BALDWIN 1060297 95925 3284 31096 99241 200581 1490424
1005 AL 1 BARBOUR 37893 132 246 811 39082
1007 AL 1 BIBB 3127 70 241 34403 37841
1009 AL 1 BLOUNT 32311 135 11884 19392 4200 67922
1011 AL 1 BULLOCK 4301 336 274 186 5098
1013 AL 1 BUTLER 54480 129 3287 57895
1015 AL 1 CALHOUN 469959 92702 5373 2130 17069 532033 1119265
1017 AL 1 CHAMBERS 37238 3189 292 1953 42672
1019 AL 1 CHEROKEE 37984 190 117 1081 1277 40649
cat: Unable to write to output stream.
Когда я запускаю сценарий свиньи в командной строке я получаю целую кучу заявлений журнала, и это выглядит, как он работает, но как только он начинает, он никогда не делает никакого прогресса, независимо от того, как долго я жду. Это последние пару строки:
2014-01-05 15:10:41,113 [JobControl] INFO org.apache.hadoop.mapreduce.JobSubmitter - Submitting tokens for job: job_1388936205793_0006
2014-01-05 15:10:41,511 [JobControl] INFO org.apache.hadoop.yarn.client.YarnClientImpl - Submitted application application_1388936205793_0006 to ResourceManager at /0.0.0.0:8032
2014-01-05 15:10:41,564 [JobControl] INFO org.apache.hadoop.mapreduce.Job - The url to track the job: http://localhost:8088/proxy/application_1388936205793_0006/
2014-01-05 15:10:41,653 [main] INFO org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.MapReduceLauncher - 0% complete
Я изменил сценарий свиньи, чтобы указать на мой локальный файл файловой системы и запускал скрипт свиньи в локальном режиме, и работа успешно завершен в секундах. Локальная копия файла совпадает с локальной версией hdfs. Я думаю, почему-то свинья не может установить прочную связь с моей HDFS.
Кто-нибудь, пожалуйста, скажите мне, что я делаю неправильно?
Вы можете проверить работу на странице мониторинга? Там могут быть некоторые подсказки. URL-адрес страницы находится в вашем журнале, например '2014-01-05 15: 10: 41,564 [JobControl] INFO org.apache.hadoop.mapreduce.Job - URL-адрес для отслеживания задания: http: // localhost: 8088/proxy/application_1388936205793_0006/' – zsxwing
Когда я перехожу на эту страницу, он говорит:« Запрашиваемое приложение пока не работает и не установило URL отслеживания ». Независимо от того, как долго я жду, это все еще говорит об этом. – msknapp
Это означает, что Pig не может выполнять задания MapReduce. Вы можете проверить журнал свиньи? – zsxwing