O Apache Hop é uma plataforma inovadora de engenharia de dados e orquestração de dados de código aberto que usa metadados para permitir que você descreva como deseja processar os dados. A arquitetura Apache Hop cuida do trabalho pesado.
O Apache Hop permite projetar visualmente pipelines de dados e workflows. Programação é uma opção, não uma necessidade.
Você pode projetar configurações de tempo de execução, um novo tipo de metadados, para projetar pipelines uma vez e executá-los em qualquer ambiente, em qualquer framework de sua escolha.
O Apache Hop coloca os processos de ETL em uma plataforma gerenciada centralmente, que também gerencia a qualidade e a persistência dos dados, resultando em maior disponibilidade e informações confiáveis.
O Apache Hop (Hop Orchestration Platform) é desenvolvido por uma comunidade aberta e amigável. Todos são bem-vindos para se juntar à comunidade e contribuir para o Apache Hop.
Existem várias maneiras de interagir com a comunidade e contribuir com o Apache Hop, incluindo fazer perguntas, preencher relatórios de bugs, propor novos recursos, participar de discussões nas listas de discussão, contribuir com código ou documentação, melhorar o site ou testar versões candidatas a lançamento.
Você também pode compartilhar documentação, postagens de blog e outros conteúdos com a Comunidade Apache Hop. Confira todos os detalhes no site oficial: Apache Hop.
Como Surgiu o Apache Hop e o Que Ele Oferece?
O Apache Hop é uma ferramenta de integração de dados de código aberto, que é um fork do Pentaho Data Integration (PDI) ou Kettle.
Ele oferece uma ferramenta de desenvolvimento visual que pode tornar os Engenheiros e Arquitetos de Dados mais produtivos, principalmente os que preferem construir seus pipelines sem escrever nenhum código.
Componentes do Apache Hop
O Hop tem três componentes principais a seguir:
Hop GUI: É um editor de interface gráfica para construção de pipelines (transformações) e fluxos de trabalho (jobs). Ele permite que você crie tarefas complexas de ETL (Extract, Transformation, Load) sem escrever nenhum código. Ele fornece uma interface de arrastar e soltar que permite criar, editar, executar ou depurar um pipeline ou fluxo de trabalho.
Hop Run: É um utilitário CLI (Command Line Interface) autônomo que pode ser usado para executar pipeline e fluxo de trabalho.
Hop Server: É um contêiner web leve que permite executar o pipeline e o fluxo de trabalho em um servidor remoto e que pode ser implantado em vários servidores. Ele também fornece uma API REST para invocar remotamente seu fluxo de trabalho e pipeline.
Abaixo um exemplo de pipeline com o Apache Hop:
E no link abaixo você encontra a documentação oficial:
https://hop.apache.org/manual/latest/index.html
Metadata Driven
Sabemos que os metadados, devidamente gerenciados, são ferramentas poderosas para fazer as coisas acontecerem. Essa concretização do conceito de metadados é a base do modelo de funcionamento orientado a metadados do Apache Hop.
O Apache Hop implementa uma separação estrita de dados e metadados que permite projetar processos de dados independentemente dos dados em si. O Apache Hop é totalmente orientado a metadados. Cada tipo de objeto no Hop descreve como os dados são lidos, manipulados ou gravados, ou como fluxos de trabalho e pipelines precisam ser orquestrados.
Metadados são o que também impulsiona o Apache Hop internamente. Hop usa uma arquitetura de kernel com um mecanismo robusto. Os plug-ins adicionam funcionalidade ao mecanismo por meio de seus próprios metadados.
O Apache Hop gerencia metadados como conexões de banco de dados relacional, configurações de execução, servidores, repositórios git e assim por diante.
Os plug-ins do Apache Hop podem definir seus próprios tipos de objetos de metadados, portanto, dependendo dos plug-ins instalados, você pode encontrar tipos extras.
Runtime Agnostic
Projete uma vez, execute em qualquer lugar. Com o Apache Hop você será capaz de projetar um processo de dados e executá-lo em qualquer mecanismo que desejar.
O Apache Hop permite projetar um pipeline de dados e executá-lo em seu computador local, um servidor remoto ou no Apache Spark, Apache Flink e ainda Google Dataflow por meio do Apache Beam.
Uma configuração de execução de pipeline é um objeto de metadados que separa as fases de design e execução do desenvolvimento de pipeline do Apache Hop.
Um pipeline é uma definição de como os dados são processados. Uma configuração de execução define onde o pipeline é executado.
Mais uma ferramenta do maravilhoso universo das soluções open-source.
David Matos
Referências: