В идеале, даже если это не правильный способ сделать что-то в слизи. Ваш ответ работает на стороне сценариев оболочки Linux. Спасибо за ваш ответ

я есть сценарий оболочки, который выполняетsqoop job, Сценарий ниже.

!#/bin/bash

table=$1

sqoop job --exec ${table}

Теперь, когда я передаю имя таблицы в рабочем процессе, я получаю задание sqoop для успешного выполнения.

Рабочий процесс ниже.

<workflow-app name="Shell_script" xmlns="uri:oozie:workflow:0.5">
<start to="shell"/>
<kill name="Kill">
    <message>Action failed, error message[${wf:errorMessage(wf:lastErrorNode())}]</message>
</kill>
<action name="shell_script">
    <shell xmlns="uri:oozie:shell-action:0.1">
        <job-tracker>${jobTracker}</job-tracker>
        <name-node>${nameNode}</name-node>
        <exec>sqoopjob.sh</exec>
        <argument>test123</argument>
        <file>/user/oozie/sqoop/lib/sqoopjob.sh#sqoopjob.sh</file>
    </shell>
    <ok to="End"/>
    <error to="Kill"/>
    </action>
    <end name="End"/>
</workflow-app>

Задание успешно выполняется для таблицыtest123.

Теперь у меня есть 300 рабочих мест sqoop, как и выше. Я хочу выполнять 10 заданий sqoop параллельно. Все имена таблиц находятся в одном файле.

Теперь я хочу вернуться к файлу и выполнить 10 заданий sqoop для первых 10 таблиц и так далее.

Как я могу это сделать? я должен подготовить 10 рабочих процессов? Я буквально смущен.

Ответы на вопрос(1)

Ваш ответ на вопрос