1. Requisitos de Software do GBDS 4¶
1.1. Sistema Operacional¶
O GBDS pode ser instalado nos seguintes sistemas operacionais:
- CentOS 7
- Red Hat 7
- Oracle Linux 7
- Oracle Linux 8
1.2. Hadoop¶
O GBDS é baseado no Apache Hadoop versão 3.1, que é uma coleção de softwares de código aberto. O Hadoop provê ferramentas multi-propósito para sistemas paralelos e escaláveis. Atualmente, o GBDS está integrado com os seguintes componentes do Hadoop:
- Ambari: Provisionamento, gerenciamento e monitoramento de um cluster Hadoop.
- Kafka: Sistema de fluxo distribuído para integração de dados em tempo real.
- Zookeeper: Sistema de coordenação que permite sincronização entre um cluster.
- HBase: Sistema de gerenciamento de banco de dados não-relacional.
- HDFS: Sistema de arquivos distribuídos projetado para rodar em commodity hardware.
1.3. Banco de Dados¶
O GBDS usa dois diferentes sistemas de banco de dados, relacional e não-relacional:
- HBase Para imagens biométricas e templates.
- MySQL [1] para metadata, como transações, exceções, casos criminais, perfis biométricos e latentes não resolvidas.
[1] | O MySQL é recomendado, pois alguns componentes do Hadoop contam com ele internamente, o que facilita a interoperabilidade entre eles, mas é possível a adaptação a qualquer outro sistema de banco de dados SQL. |
1.4. Balanceamento Local¶
O modelo de extração de templates a partir de uma imagem requer mais recursos que a comparação biométrica entre templates e é realizada noo GBDS API handler. Para otimizar o uso de hardware, o GBDS é altamente paralelizado e cada nó em um cluster deve ser capaz de receber requisições da API, caso configurado para tal, então, é recomendado o uso de um balanceador de carga para distribuir os pedidos igualmente entre os nós, visando alcançar a melhor performance. Desse modo, não haverá nenhum nó sobrecarregado no cluster.
É possível usar balanceadores de carga tanto em hardware como em software. Uma solução simples de software para balanceamento de carga é o HAProxy, um software de código-aberto e gratuito que provê ferramentas de balanceamento de carga e proxy de servidor.