PutHiveQL

 

Olá, seja bem-vindo a mais uma aula do curso Desenvolvimento com Apache Nifi.

Nesta aula vamos falar sobre o processor PutHiveQL**.**

Este Processor executa um comando HiveQL DDL/DML (UPDATE, INSERT, por exemplo).

Espera-se que o conteúdo de um FlowFile recebido seja o comando HiveQL a ser executado.

O conteúdo do FlowFile deve estar no formato UTF-8.

Abaixo temos uma lista com as suas propriedades:

  • Hive Database Connection Pooling Service : O serviço do controlador do Hive que é usado para obter conexões com o banco de dados do Hive
  • Batch Size : O número preferencial de FlowFiles para colocar no banco de dados em uma única transação
  • Character Set : Especifica o conjunto de caracteres dos dados do registro.
  • Statement Delimiter : Delimitador de instrução usado para separar instruções SQL em um script de instrução múltipla
  • Rollback On Failure : Especifique como lidar com o erro. Por padrão (falso), se ocorrer um erro durante o processamento de um FlowFile, o FlowFile será roteado para o relacionamento 'failure' ou 'retry' com base no tipo de erro e o processador poderá continuar com o próximo FlowFile. Em vez disso, convém reverter os FlowFiles atualmente processados e interromper o processamento adicional imediatamente. Nesse caso, você pode fazer isso ativando esta propriedade 'Reversão em caso de falha'. Se ativado, os FlowFiles com falha permanecerão no relacionamento de entrada sem penalizá-lo e serão processados repetidamente até que sejam processados com sucesso ou removidos por outros meios.

Os relacionamentos permitidos para direcionar ou terminar um flowfile são:

  • success= FlowFile criado com sucesso a partir do conjunto de resultados da consulta SQL.
  • failure= Falha na execução da consulta SQL. O FlowFile de entrada será penalizado e encaminhado para esta relação
  • retry= Um FlowFile é roteado para este relacionamento se o banco de dados não puder ser atualizado, mas tentar a operação novamente pode ser bem-sucedido