Mamy połączenie świni pomiędzy małym (16-rzędowym) odrębnym stołem i dużym (6-rzędowym) skośnym stołem. Regularne dołączanie kończy się po 2 godzinach (po kilku poprawkach). Wypróbowaliśmy using skewed
i mogliśmy poprawić wydajność do 20 minut.Skośne połączenie świni z dużą tabelą powoduje "Przekroczony rozmiar metadanych przekroczył 10000000"
jednak, gdy staramy większy stół skośny (19b wierszach), otrzymujemy komunikat z pracy Sampler:
Split metadata size exceeded 10000000. Aborting job job_201305151351_21573 [ScriptRunner]
at org.apache.hadoop.mapreduce.split.SplitMetaInfoReader.readSplitMetaInfo(SplitMetaInfoReader.java:48)
at org.apache.hadoop.mapred.JobInProgress.createSplits(JobInProgress.java:817) [ScriptRunner]
To jest powtarzalny za każdym razem staramy using skewed
i nie stanie, gdy użyjemy regularne dołączanie.
próbowaliśmy ustawić mapreduce.jobtracker.split.metainfo.maxsize=-1
i widzimy, że jest tam w pliku job.xml, ale nic nie zmienia!
Co się tutaj dzieje? Czy jest to błąd z próbką dystrybucji utworzoną przez using skewed
? Dlaczego nie pomaga zmiana parametru na -1
?
zdecydował się zgłosić błąd jira: https://issues.apache.org/jira/browse/PIG-3411, zaktualizuje – ihadanny
stwierdziliśmy, że zmiana mapreduce.jobtracker.split.metainfo. maxsize jest znany z tego, że nie działa na poziomie zadania, tylko na poziomie jobTracker, zobacz tutaj: https://groups.google.com/a/cloudera.org/forum/#!topic/cdh-user/UWBMKplvGkg – ihadanny
kiedykolwiek znajdziesz rozwiązanie tego problemu? Mamy podobny problem. – KennethJ