Skip to main content

Orchestrator

O Orchestrator é um componente da plataforma Carol que efetua a orquestração da execução das pipelines SQL na plataforma Carol.

O Orchestrator possui como característica processar os dados através das pipelines SQL processando os dados diretamente nas tenants clientes, ao invés de executar as pipelines SQL na tenant unificada.

A seguir é listado premissas e características do Orchestrator:

  • O Carol App deve ser hibrido ou SQL Only. Um ponto de atenção que os Carol Apps hibridos serão convertidos para SQL Only conforme os Carol Apps criarem novas versões.
  • O Carol App deve, obrigatoriamente, ter a tenant unificada vinculada.
  • A tenant unificada deve possuir o Carol App instalado.
  • Por padrão o manifesto de pipelines requer que a expressão cron que define a frequencia de execução da pipeline seja especificado seguindo o padrão cron definido pelo framework quartz, conforme documentação: https://www.freeformatter.com/cron-expression-generator-quartz.html.
    • Por questões tecnológicas, o Orchestrator converte a expressão cron do manifesto, definida seguindo o protocolo cron do quartz para a expressão cron oficial.
    • Expressões cron no formato quartz podem possuir:
      • Sete posições, exemplo 0 */5 5-17 ? * MON-FRI 2099, neste caso é ignorado o primeiro argumento (que representa os segundos) e o último argumento (que representa o ano), ficando: */5 5-17 ? * MON-FRI.
      • Seis posições, exemplo 0 */5 5-17 ? * MON-FRI, neste caso é ignorado o primeiro argumento (que representa os segundos), ficando a seguinte expressão: */5 5-17 ? * MON-FRI.
      • Cinco posições, neste caso a expressão já representa a expressão cron padrão.
    • O processo de conversão da expressão cron do quartz para o cron oficial também considera a substituição de caracteres ? para *. No caso acima, o valor 0 */5 5-17 ? * MON-FRI 2099 é convertido para */5 5-17 ? * MON-FRI.
    • Pelo fato da expressão cron suportar dias de semana por numeros de 0-6 e o cron do quartz por numeros de 1-7, deve ser utilizado a representação por siglas (MON-FRI) ao invés de números, evitando problemas na conversão da expressão cron.
    • Você pode validar expressões cron seguindo o padrão oficial neste site: https://crontab.guru/

O Orchestrator considera todas as tenants com o Carol App instalado, sendo assim, novos provisionamentos são carregados automaticamente e já possuem o processamento iniciado automaticamente após a instalação do Carol App que segue os requisitos listados acima.

Solicitações para habilitar o Orchestrator para novos Carol Apps que não irão utilizar a estratégia do Unified SQL Processing devem ser direcionados através de chamados para o time da Carol.