Я пытаюсь добавить работу через AWS SDK для PHP.Я могу успешно запустить кластер и начать новый поток заданий через API, но я получаю сообщение об ошибке при попытке создать шаг потоковой передачи Hadoop.
Вот мой код:
// add some jobflow steps
$response = $emr->add_job_flow_steps($JobFlowId, array(
new CFStepConfig(array(
'Name' => 'MapReduce Step 1. Test',
'ActionOnFailure' => 'TERMINATE_JOB_FLOW',
'HadoopJarStep' => array(
'Jar' => '/home/hadoop/contrib/streaming/hadoop-streaming.jar',
// ERROR IS HERE!!!! How can we pas the parameters?
'Args' => array(
'-input s3://logs-input/appserver1 -output s3://logs-input/job123/ -mapper s3://myscripts/mapper-apache.php -reducer s3://myscripts/reducer.php',
),
)
)),
));
Я получаю сообщение об ошибке вроде: Неверный параметр потоковой передачи '-input s3: // .... -output s3: // ..... -mapper s3: //....../mapper.php -reducer s3: //...../reducer.php "
Так что не ясно, как я могу передать аргументы в Hadoop Streaming JAR?
OfficialДокументация AWS SDK для PHP не предоставляет никаких примеров или документации.
Возможно связанный поток без ответа:
Передача параметров в скрипт hive с использованием aws php sdk