Я пытаюсь написать сценарий свиньи, чтобы сделать следующее.Извлечение части ввода из Pig Script
- Загрузить данные из списка источников. Я понимаю, что путь к списку - это «s3: // prod/propensity/probablitity/# {runDate}/# {partition}/part *" Так, например, если runDate - 20131020, а раздел - 1,3. Нагрузка на свиньи будет загружаться из s3: \ tap-prod/склонность/вероятность/20131020/1/часть * и s3: \ tap-prod/склонность/вероятность/20131020/3/part *
Что я хочу в выход должен иметь текущий раздел как столбец. Поэтому строки, считанные из раздела 1, должны иметь столбец со значением 1, а строки, считанные из раздела 3, должны иметь значение столбца как 3.
В настоящее время я передаю «s3: // tap-prod/propensity/glPurchaseProbabilities/# { runDate}/# {partition} /glPurchaseProbabilities.tsv/part* "в качестве входных данных для скрипта Pig.
И мой скрипт свиньи делает что-то подобное для загрузки. s3_consolidated_results = нагрузка «$ ввода» с помощью PigStorage («\ т», «») -noschema
Может кто-нибудь помочь мне с тем, как перехватить эту переменную ввода и извлечения из него раздел и нажмите в колонке?
пробовал это. Я продолжаю получать нераспознанную опцию. Причиняет: java.lang.RuntimeException: org.apache.commons.cli.UnrecognizedOptionException: непризнанная опция : -tagsource на org.apache.pig.builtin.PigStorage. (PigStorage.java:187) ... 29 еще Вызвано: org.apache.commons.cli.UnrecognizedOptionException: непризнанная опция: -tagsource –
user3326635
какая версия свиньи вы используете? – Frederic
ApachePig = 0.10; – user3326635