1. Requisitos de software de GBDS 4¶
1.1. Sistema operativo¶
GBDS debe ser instalado en un sistema operativo Linux CentOS 7. Redhat 7 y Oracle Linux 7 también son adecuados, pero se prefiere CentOS 7.
1.2. Hadoop¶
GBDS se basa en la versión 3.1 de Apache Hadoop, que es una colección de software de código abierto. Hadoop proporciona herramientas multipropósito para sistemas paralelos y escalables. Actualmente, GBDS está integrado con los siguientes componentes de Hadoop:
- Ambari: aprovisionamiento, gestión y monitorización de un clúster de Hadoop.
- Kafka: un sistema de transmisión distribuido para integrar datos en tiempo real.
- Zookeeper: servicio de coordinación que permite la sincronización en un clúster.
- HBase: sistema de gestión de bases de datos no relacionales.
- HDFS: sistema de archivos distribuido diseñado para ejecutarse en hardware común.
1.3. Base de datos¶
GBDS utiliza dos sistemas de bases de datos diferentes, relacionales y no relacionales:
- HBase para imágenes y plantillas biométricas.
- MySQL [1] para metadatos (transacciones, excepciones, casos criminales, perfiles biométricos y latentes no resueltos).
[1] | Se recomienda MySQL ya que ciertos componentes de Hadoop dependen de él internamente, lo que facilita la interoperación entre ellos, pero es posible adaptarse a cualquier otro sistema de base de datos SQL. |
1.4. Balanceo local¶
La extracción de plantillas de la imagen biométrica requiere más recursos que la comparación biométrica entre plantillas y se realiza dentro del controlador de la API de GBDS. Para optimizar el uso del hardware, GBDS es altamente paralelo y cada nodo del clúster puede recibir solicitudes de API si está configurado para ello, por lo que se recomienda utilizar un balanceador de carga para distribuir las solicitudes de manera equitativa entre los nodos para lograr el mejor rendimiento. De esta manera, no habrá nodos sobrecargados en el clúster.
Es posible utilizar un balanceador de carga de hardware o software. Una solución de software simple para el balanceo de carga es HAProxy, un software libre y de código abierto que proporciona herramientas de balanceo de carga y servidor proxy.