O MaxCompute permite agendar jobs com o Azkaban, facilitando a execução eficiente de análises de dados de alta frequência. Este tópico descreve como usar o Azkaban para agendar jobs SQL mediante a execução de comandos no cliente MaxCompute.
Informações básicas
O Azkaban é um sistema usado para agendar diferentes tipos de jobs, incluindo Command, Hadoop MapReduce, Hive, Spark e Pig. Os jobs mais comuns são do tipo Command. O Azkaban também permite o uso de plug-ins personalizados. Para obter mais informações sobre o Azkaban, consulte Azkaban.
Para agendar jobs, compacte os arquivos necessários em um arquivo ZIP. Esses arquivos incluem o arquivo de dados source e os scripts para criar tabelas, importar dados e consultar dados. Em seguida, faça upload do arquivo ZIP no Azkaban.
Este tópico demonstra como usar o recurso de agendamento de jobs do Azkaban para implementar a lógica SQL de criação de tabelas, importação de dados e consulta de dados. A figura a seguir mostra o fluxo de trabalho para agendamento de jobs e lista os arquivos de job e de script usados em cada etapa.

Pré-requisitos
Antes de agendar jobs do MaxCompute, certifique-se de que as seguintes condições foram atendidas:
-
O cliente MaxCompute foi baixado e instalado.
Para obter mais informações sobre como instale e configure o cliente MaxCompute, consulte Instalar e configurar o odpscmd.
-
O Azkaban foi baixado e instalado.
Para obter mais informações, consulte Getting Started.
Procedimento
-
Etapa 1: Preparar os arquivos necessários e compactá-los em um arquivo ZIP.
Prepare os arquivos de dados source e os scripts necessários para o agendamento dos jobs e compacte-os em um arquivo ZIP.
-
Etapa 2: Fazer upload do arquivo ZIP no Azkaban.
Crie um projeto no Azkaban, faça upload do arquivo ZIP usando esse projeto e crie um fluxo de trabalho de agendamento de jobs.
-
Etapa 3: Execute o fluxo de trabalho.
Execute o fluxo de trabalho de agendamento de jobs.
-
Etapa 4: Consulte os resultados da execução do fluxo de trabalho.
Consulte o resultado da execução do fluxo de trabalho.
Etapa 1: Preparar os arquivos necessários e compactá-los em um arquivo ZIP
-
Prepare os arquivos necessários e compacte-os em um arquivo ZIP.
Os seguintes arquivos são necessários neste tópico:
-
Arquivo de dados source. Este arquivo está no formato TXT. Neste tópico, usa-se o arquivo emp.txt, que contém os seguintes dados:
7369,SMITH,CLERK,7902,1980-12-17 00:00:00,800,,20 7499,ALLEN,SALESMAN,7698,1981-02-20 00:00:00,1600,300,30 7521,WARD,SALESMAN,7698,1981-02-22 00:00:00,1250,500,30 7566,JONES,MANAGER,7839,1981-04-02 00:00:00,2975,,20 7654,MARTIN,SALESMAN,7698,1981-09-28 00:00:00,1250,1400,30 7698,BLAKE,MANAGER,7839,1981-05-01 00:00:00,2850,,30 7782,CLARK,MANAGER,7839,1981-06-09 00:00:00,2450,,10 7788,SCOTT,ANALYST,7566,1987-04-19 00:00:00,3000,,20 7839,KING,PRESIDENT,,1981-11-17 00:00:00,5000,,10 7844,TURNER,SALESMAN,7698,1981-09-08 00:00:00,1500,0,30 7876,ADAMS,CLERK,7788,1987-05-23 00:00:00,1100,,20 7900,JAMES,CLERK,7698,1981-12-03 00:00:00,950,,30 7902,FORD,ANALYST,7566,1981-12-03 00:00:00,3000,,20 7934,MILLER,CLERK,7782,1982-01-23 00:00:00,1300,,10 7948,JACCKA,CLERK,7782,1981-04-12 00:00:00,5000,,10 7956,WELAN,CLERK,7649,1982-07-20 00:00:00,2450,,10 7956,TEBAGE,CLERK,7748,1982-12-30 00:00:00,1300,,10 -
Script para criar tabelas e fazer upload de dados. Este arquivo está no formato SQL. Neste tópico, usa-se o arquivo upload.sql, que contém o seguinte conteúdo:
drop table if exists azkaban_emp; create table azkaban_emp (empno bigint, ename string, job string, mgr bigint, hiredate datetime, sal bigint, comm bigint, deptno bigint) lifecycle 1; tunnel upload emp.txt azkaban_emp; -
Script para consultar dados. Este arquivo está no formato SQL. Neste tópico, usa-se o arquivo cat_data.sql, que contém o seguinte conteúdo:
select * from azkaban_emp; -
Arquivo para iniciar o job. Este arquivo está no formato job. Neste tópico, usa-se o arquivo start.job, que contém o seguinte conteúdo:
#start type=command command=echo 'job start' -
Arquivo para fazer upload dos dados do job. Este arquivo está no formato job. Neste tópico, usa-se o arquivo upload_data.job, que contém o seguinte conteúdo:
#upload_data type=command dependencies=start command=D:/odpscmd_public/bin/odpscmd.bat -f 'upload.sql'commandindica o diretório de instalação local do cliente MaxCompute. Neste tópico, utiliza-seD:/odpscmd_public/bin/odpscmd.bat. -
Arquivo para consultar os dados do job. Este arquivo está no formato job. Neste tópico, usa-se o arquivo mc.job, que contém o seguinte conteúdo:
#mc.job type=command command=D:/odpscmd_public//bin/odpscmd -f 'cat_data.sql' dependencies=upload_datacommandindica o diretório de instalação local do cliente MaxCompute. Neste tópico, utiliza-seD:/odpscmd_public/bin/odpscmd.bat.
-
-
Compacte os arquivos preparados em um arquivo ZIP.
Neste tópico, os arquivos anteriores são compactados no arquivo demo1.zip. A figura a seguir mostra os arquivos contidos no demo1.zip.

Etapa 2: Fazer upload do arquivo ZIP no Azkaban
-
Faça logon no Azkaban.
-
Crie um projeto no Azkaban.
-
Faça upload do arquivo ZIP gerado na Etapa 1 no projeto do Azkaban.
Para obter mais informações sobre como fazer upload de um arquivo ZIP, consulte
.

Após o upload do arquivo ZIP, visualize o fluxo de trabalho na aba
Graph
. Para obter mais informações sobre como visualizar um fluxo de trabalho, consulte
.

Etapa 3: Execute o fluxo de trabalho
Após criar o fluxo de trabalho, clique em Schedule/Execute Flow no canto superior direito. Na caixa de diálogo exibida, clique em Execute no painel Flow View para agendar os jobs.
Para obter mais informações sobre como executar um fluxo de trabalho, consulte Executing Flow View.

Etapa 4: Consulte os resultados da execução do fluxo de trabalho
Após a execução do fluxo de trabalho, visualize os resultados de cada job na aba Job List da página Execution. Também é possível localizar um job na aba Job List e clique em Details na coluna Details para consultar os detalhes desse job.
Para obter mais informações sobre como visualizar os resultados da execução de um fluxo de trabalho, consulte Execution.
