4
respostas

Colunas open_year, open_month e Reason_normalized

Nas minhas primeiras tentativas houve falha no RUN. Conforme fui avaliando o erro consegui fazer o RUN bem sucedido. Para confirmar os dados voltei no notebook e baixei uma tabela de exemplo, porém para minha surpresa os campos open_year e open_month não apareceram, o campo de duração ficou OK e o Reason)normalised ficou vazio. Como posso investigar para saber o que ocorreu. OBS: para o derived Column tentei usar year(open_dt) e YEAR(open_dt). todos com mesmo problema.

Insira aqui a descrição dessa imagem para ajudar na acessibilidadeInsira aqui a descrição dessa imagem para ajudar na acessibilidade

4 respostas

Olá Edson, tudo bem?

Notei que conseguiu concluir o curso, então acredito que já tenha resolvido o problema. Mas deixo abaixo algumas sugestões:

Na etapa de validação do esquema, confirme se as colunas open_year e open_month estão mapeadas corretamente e não foram acidentalmente removidas.

Verifique também se os campos open_year e open_month estão configurados como int no Data Catalog.

Outra sugestão, é verificar é se os nomes dos campos no Data Catalog estão exatamente iguais aos nomes que você definiu no job (open_year e open_month).

Caso se sinta confortável, você poderá compartilhar a solução encontrada, pois ela poderá ajudar outros alunos.

Espero ter ajudado e fico à disposição.

Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Tive o mesmo erro do colega acima, fiz as seguinte alterações

nos derived colums tive que colocar da seguinte maneira MONTH(open_dt) AS open_month e YEAR(open_dt) AS open_year

a querie pelo texto da alura esta errada, querie corrigida (tomei um erro de parse)

SELECT tb_1.*, ROUND((UNIX_TIMESTAMP(closed_dt) - UNIX_TIMESTAMP(open_dt)) / 3600, 0) AS duration_hours FROM tb_1

com estes ajustes tive sucesso na execucao do job !

A reposta anterior enviado pelo Diego Luis, me ajudou com o mesmo problema que estava tendo :)

Tive que ajustar o código na etapa SQL para dar certo.

Segue Código:

SELECT tb_1.*, ROUND((unix_timestamp(closed_dt)-unix_timestamp(open_dt)/3600),0) AS duration_hours from tb_1