Spec-Zone.ru › Apache Pig 0.16

Команды оболочки и утилиты

  • Команды оболочки
    • fs
    • sh
  • Команды утилит
    • clear
    • exec
    • help
    • history
    • kill
    • quit
    • run
    • set

Команды оболочки

fs

Вызывает любую команду FsShell изнутри скрипта Pig или оболочки Grunt.

Синтаксис

fs подкоманда параметры_подкоманды

Термины

подкоманда

Команда FsShell.

параметры_подкоманды

Параметры команды FsShell.

Использование

Используйте команду fs для вызова любой команды FsShell изнутри скрипта Pig или оболочки Grunt. Команда fs значительно расширяет набор поддерживаемых команд файловой системы и возможности существующих команд, таких как ls, которые теперь поддерживают подстановку шаблонов. Полный список команд FsShell см. в Руководстве по оболочке файловой системы

Примеры

В этих примерах создаётся директория, копируется файл и выводится список файлов.

fs -mkdir /tmp
fs -copyFromLocal file-x file-y
fs -ls file-y

sh

Вызывает любую команду оболочки sh изнутри скрипта Pig или оболочки Grunt.

Синтаксис

sh подкоманда параметры_подкоманды

Термины

подкоманда

Команда оболочки sh.

параметры_подкоманды

Параметры команды оболочки sh.

Использование

Используйте команду sh для вызова любой команды оболочки sh изнутри скрипта Pig или оболочки Grunt.

Обратите внимание, что с помощью команды sh можно запускать только реальные программы. Такие команды, как cd, не являются программами, а частью среды оболочки, и поэтому их нельзя выполнить, если пользователь не вызовет оболочку явно, например, "bash cd".

Пример

В этом примере вызывается команда ls.

grunt> sh ls 
bigdata.conf 
nightly.conf 
..... 
grunt> 

Команды утилит

clear

Очистить экран оболочки Pig grunt и установить курсор в начало экрана.

Синтаксис

clear

Термины

key

Описание.

none

без параметров

Пример

В этом примере команда clear очищает оболочку Pig grunt.

grunt> clear

exec

Запуск скрипта Pig.

Синтаксис

exec [–param имя_параметра = значение_параметра] [–param_file имя_файла] [скрипт]

Термины

–param имя_параметра = значение_параметра

См. Подстановку параметров.

–param_file имя_файла

См. Подстановку параметров.

скрипт

Имя скрипта Pig.

Использование

Используйте команду exec для запуска скрипта Pig в пакетном режиме без взаимодействия со скриптом и оболочкой Grunt. Определенные в скрипте псевдонимы недоступны для оболочки, однако файлы, созданные в результате работы скрипта и сохраненные на системе, видны после запуска скрипта. Псевдонимы, определенные через оболочку, недоступны скрипту.

При использовании команды exec операторы сохранения не запускают выполнение; вместо этого весь скрипт анализируется до начала выполнения. В отличие от команды run, команда exec не изменяет историю команд и не запоминает дескрипторы, используемые внутри скрипта. Exec без параметров можно использовать в скриптах для принудительного выполнения до того момента в скрипте, где происходит exec.

Для сравнения см. команду run. Обе команды, exec и run, полезны для отладки, потому что вы можете изменить скрипт Pig в редакторе и затем повторно запустить скрипт в оболочке Grunt, не выходя из неё. Кроме того, обе команды способствуют модульности скриптов Pig, позволяя повторно использовать существующие компоненты.

Примеры

В этом примере скрипт отображается и выполняется.

grunt> cat myscript.pig
a = LOAD 'student' AS (name, age, gpa);
b = LIMIT a 3;
DUMP b;

grunt> exec myscript.pig
(alice,20,2.47)
(luke,18,4.00)
(holly,24,3.27)

В этом примере подстановка параметров используется с командой exec.

grunt> cat myscript.pig
a = LOAD 'student' AS (name, age, gpa);
b = ORDER a BY name;

STORE b into '$out';

grunt> exec –param out=myoutput myscript.pig

В этом примере задается несколько параметров.

grunt> exec –param p1=myparam1 –param p2=myparam2 myscript.pig

help

Выводит список команд Pig или свойств.

Синтаксис

-help [свойства]

Термины

свойства

Список свойств Pig.

Использование

Команда help выводит список команд Pig или свойств.

Пример

Используйте "-help", чтобы получить список команд.

$ pig -help

Apache Pig version 0.8.0-dev (r987348)
compiled Aug 19 2010, 16:38:44

USAGE: Pig [options] [-] : Run interactively in grunt shell.
       Pig [options] -e[xecute] cmd [cmd ...] : Run cmd(s).
       Pig [options] [-f[ile]] file : Run cmds found in file.
  options include:
    -4, -log4jconf - Log4j configuration file, overrides log conf
    -b, -brief - Brief logging (no timestamps)
    -c, -check - Syntax check
etc …

Используйте "-help properties", чтобы получить список свойств.

$ pig -help properties

The following properties are supported:
    Logging:
        verbose=true|false; default is false. This property is the same as -v switch
        brief=true|false; default is false. This property is the same as -b switch
        debug=OFF|ERROR|WARN|INFO|DEBUG; default is INFO. This property is the same as -d switch
        aggregate.warning=true|false; default is true. If true, prints count of warnings
            of each type rather than logging each warning.
etc …

history

Отобразить список использованных ранее операторов.

Синтаксис

history [-n]

Термины

key

Описание.

-n

Опустить номера строк в списке.

Использование

Команда history отображает использованные ранее операторы.

Пример

В этом примере команда history отображает все операторы с номерами строк и без них.

grunt> a = LOAD 'student' AS (name, age, gpa);
grunt> b = order a by name;
grunt> history
1 a = LOAD 'student' AS (name, age, gpa);
2 b = order a by name;

grunt> c = order a by name;
grunt> history -n
a = LOAD 'student' AS (name, age, gpa);
b = order a by name;
c = order a by name;

kill

Убивает задачу.

Синтаксис

kill jobid

Термины

jobid

Идентификатор задачи.

Использование

Используйте команду kill для убийства задачи Pig на основе идентификатора задачи.

Команда kill попытается убить все связанные с задачей Pig задачи MapReduce. Однако в определенных условиях это может не удаться, например, когда задача Pig убивается и не имеет возможности выполнить свои процедуры завершения.

Пример

В этом примере убивается задача с идентификатором job_0001.

grunt> kill job_0001

quit

Выход из оболочки Pig grunt.

Синтаксис

exit

Термины

none

без параметров

Использование

Команда quit позволяет выйти из оболочки Pig grunt.

Пример

В этом примере команда quit завершает работу оболочки Pig grunt.

grunt> quit

run

Запуск скрипта Pig.

Синтаксис

run [–param имя_параметра = значение_параметра] [–param_file имя_файла] скрипт

Термины

–param имя_параметра = значение_параметра

См. Подстановку параметров.

–param_file имя_файла

См. Подстановку параметров.

скрипт

Имя скрипта Pig.

Использование

Используйте команду run для запуска скрипта Pig, который может взаимодействовать с оболочкой Grunt (интерактивный режим). Скрипт имеет доступ к псевдонимам, определенным внешне в оболочке Grunt. Оболочка Grunt имеет доступ к псевдонимам, определенным в скрипте. Все команды из скрипта отображаются в истории команд.

При использовании команды run каждый оператор сохранения запускает выполнение. Операторы из скрипта помещаются в историю команд, и все псевдонимы, определенные в скрипте, могут быть использованы в последующих операторах после завершения команды run. Выполнение команды run в командной строке оболочки Grunt в основном эквивалентно ручному вводу операторов.

Для сравнения см. команду exec. Обе команды, run и exec, полезны для отладки, так как вы можете изменить скрипт Pig в редакторе и затем повторно запустить скрипт в оболочке Grunt, не выходя из неё. Кроме того, обе команды способствуют модульности скриптов Pig, позволяя повторно использовать существующие компоненты.

Пример

В этом примере скрипт взаимодействует с результатами команд, выданных через оболочку Grunt.

grunt> cat myscript.pig
b = ORDER a BY name;
c = LIMIT b 10;

grunt> a = LOAD 'student' AS (name, age, gpa);

grunt> run myscript.pig

grunt> d = LIMIT c 3;

grunt> DUMP d;
(alice,20,2.47)
(alice,27,1.95)
(alice,36,2.27)

В этом примере подстановка параметров используется с командой run.

grunt> a = LOAD 'student' AS (name, age, gpa);

grunt> cat myscript.pig
b = ORDER a BY name;
STORE b into '$out';

grunt> run –param out=myoutput myscript.pig

set

Отображает/Присваивает значения ключам, используемым в Pig.

Синтаксис

set [ключ 'значение']

Термины

ключ

Ключ (см. таблицу). Регистрозависимый.

значение

Значение для ключа (см. таблицу). Регистрозависимый.

Использование

Используйте команду set для присвоения значений ключам, как показано в таблице. Все ключи и соответствующие значения (для Pig и Hadoop) регистрозависимы. Если команда set используется без аргумента пары ключ/значение, Pig выводит все конфигурации и системные свойства.

Ключ

Значение

Описание

default_parallel

целое число

Устанавливает количество редукторов для всех задач MapReduce, генерируемых Pig (см. Использование параллельных возможностей).

debug

вкл/выкл

Включает или выключает ведение журнала на уровне отладки.

job.name

Строка в одинарных кавычках, содержащая имя задачи.

Устанавливает имя задачи, заданное пользователем

job.priority

Допустимые значения (регистронезависимые): very_low, low, normal, high, very_high

Устанавливает приоритет задачи Pig.

stream.skippath

Строка, содержащая путь.

Для потоковой передачи устанавливает путь, с которого не нужно отправлять данные (см. ОПРЕДЕЛЕНИЕ (UDFs, streaming) и Об Автоматической отправке).

Все свойства Pig и Hadoop можно задавать либо в скрипте Pig, либо через командную строку Grunt.

Примеры

В этом примере пары ключ-значение задаются в командной строке.

grunt> SET debug 'on'
grunt> SET job.name 'my job'
grunt> SET default_parallel 100

В этом примере default_parallel устанавливается в скрипте Pig; все запускаемые задачи MapReduce будут использовать 20 редукторов.

SET default_parallel 20;
A = LOAD 'myfile.txt' USING PigStorage() AS (t, u, v);
B = GROUP A BY t;
C = FOREACH B GENERATE group, COUNT(A.t) as mycount;
D = ORDER C BY mycount;
STORE D INTO 'mysortedcount' USING PigStorage();

В этом примере несколько пар ключ-значение задаются в скрипте Pig. Эти пары ключ-значение помещаются в job-conf Pig (делая пары доступными для Pig и Hadoop). Это настройка на уровне всего скрипта; если пара ключ-значение определена несколько раз в скрипте, последнее значение будет принято и установлено для всех задач, сгенерированных скриптом.

...
SET mapred.map.tasks.speculative.execution false; 
SET pig.logfile mylogfile.log; 
SET my.arbitrary.key my.arbitary.value; 
...

© 2007–2016 Apache Software Foundation
Licensed under the Apache Software License version 2.0.
https://pig.apache.org/docs/r0.16.0/cmds.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API