- O que é processamento de carga de trabalho em lote?
- A History of Batch Processing
- Exemplos de Processamento em Lote
- Vantagens e desvantagens do processamento em lote
- Sistemas modernos de processamento em lote
- Processamento em Lote Leva à Nuvem
- Batch Workload Orchestration
- Futuro do processamento em lote
- Brian McHugh
O que é processamento de carga de trabalho em lote?
O processamento de carga de trabalho em lote refere-se a grupos de trabalhos (lotes) que estão programados para serem processados ao mesmo tempo. Tradicionalmente, as cargas de trabalho em lote são processadas durante as janelas de lote, períodos de tempo em que a utilização geral da CPU é baixa (normalmente durante a noite). O motivo para isso é duplo:
- Carga de trabalho em lote pode requerer CPUs altas, ocupando recursos que são necessários para outros processos operacionais durante o dia útil
- Carga de trabalho em lote é tipicamente usada para processar transações e produzir relatórios, por exemplo, reunindo todos os registros de vendas que foram criados ao longo do dia útil
Hoje, o processamento em lote é feito através de programadores de trabalho, sistemas de processamento em lote, soluções de automação de carga de trabalho e aplicações nativas dos sistemas operacionais. A ferramenta de processamento em lote recebe os dados de entrada, contabiliza as necessidades do sistema e coordena a programação para o processamento de grandes volumes. O processamento em lote difere do processamento em fluxo porque o processamento em lote requer informações não contínuas.
A History of Batch Processing
O processamento em lote está enraizado na pré-história dos computadores. Já em 1890, o Departamento de Censo dos Estados Unidos usou um tabulador eletromecânico para registrar as informações do censo dos EUA. Herman Hollerith, que inventou o tabulador, fundou a empresa que, por sua vez, tornou-se IBM.
Em meados do século XX, os trabalhos em lote estavam sendo executados usando dados perfurados em cartões. Nos anos 60, com o desenvolvimento da multiprogramação, os sistemas de computador começaram a executar vários trabalhos em lote ao mesmo tempo para processar dados de fita magnética em vez de cartões perfurados.
Como os mainframes evoluíram e se tornaram mais poderosos, mais trabalhos em lote estavam sendo executados e assim as aplicações foram desenvolvidas para garantir que os trabalhos em lote só fossem executados quando houvesse recursos suficientes, a fim de evitar atrasos. Isto ajudou a dar origem aos modernos sistemas de processamento em lote.
Exemplos de Processamento em Lote
Batch processing use cases podem ser encontrados em bancos, hospitais, contabilidade e qualquer outro ambiente onde um grande conjunto de dados precisa ser processado. Por exemplo, gerações de relatórios são executados após o fechamento do negócio, quando todas as transações com cartão de crédito foram finalizadas. As empresas de serviços públicos coletam dados sobre o uso do cliente e executam processos em lote para determinar o faturamento.
Em outro caso de uso, uma empresa de gerenciamento de dados financeiros executa processos em lote durante a noite que fornecem relatórios financeiros diretamente aos bancos e instituições financeiras que atendem.
Vantagens e desvantagens do processamento em lote
O processamento em lote é útil porque fornece um método de processamento de grandes quantidades de dados sem ocupar recursos-chave de computação. Se um provedor de saúde precisar atualizar registros de faturamento, talvez seja melhor executar um lote noturno, quando a demanda de recursos será baixa.
Simplesmente, o processamento em lote ajuda a reduzir o tempo de inatividade ao executar trabalhos quando os recursos de computação estão disponíveis.
Ferramentas de processamento em lote, no entanto, são frequentemente limitadas em escopo e capacidade. Os scripts personalizados são frequentemente necessários para integrar o sistema em lote com novas fontes de dados, o que pode colocar preocupações de segurança cibernética onde dados sensíveis são incluídos. Os sistemas em lote tradicionais também podem ser mal equipados para lidar com processos que requerem dados em tempo real, por exemplo, processamento de fluxo ou processamento de transações.
O seu centro de dados está mantendo o ritmo com os negócios?
Explore como você pode superar a complexidade do centro de dados com uma solução de agendamento de trabalho empresarial.
Sistemas modernos de processamento em lote
Sistemas modernos de processamento em lote fornecem uma gama de capacidades que facilitam o gerenciamento de cargas de trabalho de alto volume pelas equipes. Isto pode incluir automação baseada em eventos, restrições e monitoramento em tempo real. Esses recursos modernos ajudam a garantir que os lotes só sejam executados quando todos os dados necessários estiverem disponíveis, reduzindo atrasos e erros.
A fim de reduzir ainda mais os atrasos, os sistemas modernos de processamento em lote incluem algoritmos de balanceamento de carga para garantir que os trabalhos em lote não sejam enviados para servidores com pouca memória ou CPUs insuficientes disponíveis.
Meanwhile, capacidades avançadas de agendamento de data/hora tornam possível agendar lotes enquanto contabiliza feriados personalizados, calendários fiscais, múltiplos fusos horários, e muito mais.
No entanto, devido à crescente necessidade de dados em tempo real e à crescente complexidade do processamento de dados moderno, muitas organizações de TI estão optando por plataformas de automação de carga de trabalho e orquestração que fornecem ferramentas avançadas para gerenciamento e integração de dados.
Processamento em Lote Leva à Nuvem
O moderno departamento de TI é diversificado, distribuído e dinâmico. Em vez de confiar em mainframes homogêneos e centros de dados locais, os processos em lote estão sendo executados em ambientes híbridos. Há uma boa razão para isto.
Como mencionado anteriormente, os processos em lote são frequentemente intensivos em recursos. Hoje, com o crescimento de grandes dados e transações online, as cargas de trabalho em lote podem exigir muito. Alavancar a infraestrutura da nuvem dá à TI a capacidade de fornecer recursos computacionais com base na demanda, em vez de ter que instalar servidores físicos que, por uma boa parte do dia, provavelmente estariam ociosos.
A quantidade de dados que a TI tem que gerenciar para atender às necessidades do negócio continua a crescer, e as ferramentas de carga de trabalho em lote estão evoluindo para atender a essas necessidades. Por exemplo, a TI não tem os recursos necessários para executar manualmente cada processo ETL, ou para configurar manualmente, provisionar e desprovisionar VMs. Em vez disso, ferramentas de carga de trabalho em lote estão sendo usadas para automatizar e orquestrar essas tarefas em processos ponta a ponta.
Por exemplo, uma ferramenta de automação e orquestração pode ser usada para mover dados para dentro e para fora de vários componentes de um cluster Hadoop como parte de um processo ponta a ponta que inclui VMs de provisionamento, executando trabalhos ETL em uma plataforma de BI, e então entregar esses relatórios via e-mail.
As organizações tornam-se mais dependentes de recursos e aplicações baseadas na nuvem, a capacidade de orquestrar o agendamento de trabalhos e cargas de trabalho em lote através de plataformas díspares se tornará crítica.
Batch Workload Orchestration
As ferramentas de automação e orquestração são cada vez mais extensíveis, com várias soluções de automação de carga de trabalho já fornecendo conectores universais e adaptadores REST API de baixo código que possibilitam a integração de praticamente qualquer ferramenta ou tecnologia sem a necessidade de scripts.
Isso é importante, pois ao invés de ter programadores de trabalhos, ferramentas de automação e processos em lote executados em silos, a TI pode usar uma ferramenta de orquestração de carga de trabalho para gerenciar, monitorar e solucionar problemas de todos os trabalhos em lote.
As ferramentas de orquestração da TI podem, por exemplo, gerar e armazenar automaticamente arquivos de log para cada instância de lote, permitindo que a TI identifique rapidamente as causas raiz quando surgirem problemas. O monitoramento e o alerta em tempo real tornam possível para a TI responder ou prevenir atrasos, falhas e execuções incompletas, acelerando os tempos de resposta quando problemas ocorrem.
Os reinícios automáticos e os fluxos de trabalho de remediação automática também são cada vez mais comuns, enquanto os trabalhos em lote podem ser priorizados para garantir que os recursos estejam disponíveis em tempo de execução.
Adicionalmente, ferramentas de carga de trabalho em lote extensíveis tornam possível consolidar scripts e aplicações em lote legados, permitindo à TI simplificar e reduzir custos operacionais.
Futuro do processamento em lote
Ferramentas tradicionais de programação em lote deram lugar a plataformas de automação e orquestração de alto desempenho que fornecem a extensibilidade necessária para gerenciar mudanças. Elas permitem que a TI opere em ambientes híbridos e multi-nuvem e podem reduzir drasticamente a necessidade de intervenção humana.
Algoritmos de aprendizado de máquina estão sendo usados para alocar inteligentemente VMs para cargas de trabalho em lote para reduzir o tempo de inatividade e recursos ociosos. Isso é crítico para equipes que gerenciam execuções de alto volume de trabalho ou com grande número de servidores virtuais ou baseados em nuvem.
Com a aprendizagem da máquina sendo executada em tempo real, recursos adicionais podem ser reservados se uma carga de trabalho crítica para SLA estiver em risco de uma sobrecarga. Isso inclui o provisionamento de máquinas adicionais virtuais ou baseadas em nuvem, com base na demanda dinâmica. Juntamente com a remediação automática, isso fornece uma ferramenta poderosa para garantir que o fornecimento de serviços não seja atrasado para o usuário final ou cliente externo.
No longo prazo, a TI está se tornando mais diversificada e distribuída, e os tipos de cargas de trabalho pelas quais a TI é responsável continuarão a se expandir. O amadurecimento de novas tecnologias – inteligência artificial, IoT, computação de ponta – irá colocar novas pressões sobre as equipes de TI para integrar rapidamente novos aplicativos e tecnologias.
IT está mudando rapidamente, mas algumas coisas, como o processamento em lote, permanecem as mesmas.
Pronto para ver como tornamos fácil a automatização da carga de trabalho?
Agenda uma demonstração para ver nossos especialistas executando trabalhos que combinem com seus casos de uso no ActiveBatch. Tire suas dúvidas e aprenda como é fácil construir e manter seus trabalhos no ActiveBatch