1. Archivo de Configuración¶
Los parámetros de configuración de GBDS 4 se definen en un archivo de configuración que contiene todos los parámetros y sus respectivos valores. Los parámetros omitidos asumen sus valores predeterminados. Esta sección describe las propiedades del archivo de configuración.
Este documento se actualiza a la versión 4.6.9 de GBDS.
1.1. Ubicación del Archivo¶
El archivo de configuración se encuentra en/etc/griaule/conf/gbds/application.conf
.
1.2. Propiedades del Archivo¶
El archivo de configuración debe seguir algunos requisitos para ser interpretado correctamente por GBDS. Estos requisitos son:
- El nombre y la ubicación del archivo deben ser exactamente como se menciona en la sección 1.1;
- Debe haber exactamente un parámetro de configuración por línea;
- Cada parámetro de configuración debe estar en la forma
{parámetro}={valor}
, sin saltos de línea;- Cada valor debe estar separado por una coma cuando se atribuye a un solo parámetro.
2. Parámetros de Configuración de Akka¶
Los parámetros de configuración de Akka están estructurados como un bloque al principio del archivo de configuración, como se muestra a continuación:
See also
Consulte la documentación de Akka para obtener más información sobre estos parámetros.
akka {
loglevel = "WARNING"
stdout-loglevel = "INFO"
loggers = ["akka.event.slf4j.Slf4jLogger"]
logging-filter = "akka.event.slf4j.Slf4jLoggingFilter"
actor {
guardian-supervisor-strategy = "com.griaulebiometrics.gbds.driver.topology.GBDSGuardianSupervisionStrategy"
provider = "cluster"
allow-java-serialization = on
serialize-creators = off
serializers {
kryo = io.altoo.akka.serialization.kryo.KryoSerializer
proto = akka.remote.serialization.ProtobufSerializer
}
serialization-bindings {
"com.griaulebiometrics.akka.utils.message.KryoSerializableMessage" = kryo
}
default-dispatcher {
type = "Dispatcher"
executor = "default-executor"
default-executor {
fallback = "fork-join-executor"
}
fork-join-executor {
parallelism-min = 8
parallelism-factor = 1.0
parallelism-max = 64
}
}
}
}
remote {
artery.enabled = "on"
artery.transport = "tcp"
artery.canonical {
hostname = "gbds2"
port = 2551
}
artery.advanced {
image-liveless-timeout = 20s
client-liveness-timeout = 10s
maximum-frame-size = 30MiB
maximum-large-frame-size = 100MiB
buffer-pool-size = 128
large-buffer-pool-size = 32
}
use-dispatcher = "akka.remote.default-remote-dispatcher"
transport-failure-detector {
implementation-class = "akka.remote.DeadlineFailureDetector"
heartbeat-interval = 120s
acceptable-heartbeat-pause = 300s
}
watch-failure-detector {
implementation-class = "akka.remote.PhiAccrualFailureDetector"
heartbeat-interval = 300s
threshold = 10.0
max-sample-size = 200
min-std-deviation = 100s
acceptable-heartbeat-pause = 300s
unreachable-nodes-reaper-interval = 10s
expected-response-after = 120s
}
}
cluster {
seed-nodes = [
##NODES##
"akka://main@<hostname1>:2551",
"akka://main@<hostname2>:2551",
"akka://main@<hostname3>:2551",
"akka://main@<hostname4>:2551"
##LASTNODE##
]
roles =["manager"]
# Number of nodes that must be up before starting cluster
role.manager.min-nr-of-members=4
failure-detector.min-std-deviation = 1000 ms
failure-detector.threshold = 50.0
failure-detector.acceptable-heartbeat-pause = 900s
use-dispatcher = akka.cluster.cluster-dispatcher
singleton {
singleton-name = "offsetmanager"
hand-over-retry-interval = 1s
min-number-of-hand-over-retries = 15
}
singleton-proxy {
singleton-name = ${akka.cluster.singleton.singleton-name}
singleton-identification-interval = 1s
buffer-size = 1000
}
cluster-dispatcher {
type = "Dispatcher"
executor = "fork-join-executor"
fork-join-executor {
parallelism-min = 2
parallelism-max = 4
}
}
}
}
prio-dispatcher {
mailbox-type = "com.griaulebiometrics.gbds.driver.mailbox.PriorityMailbox"
type = "Dispatcher"
executor = "default-executor"
default-executor {
fallback = "fork-join-executor"
}
fork-join-executor {
parallelism-min = 8
parallelism-factor = 1.0
parallelism-max = 64
}
}
akka-kryo-serialization {
type = graph
id-strategy = default
resolve-subclasses = true
implicit-registration-logging = false
kryo-initializer = "com.griaulebiometrics.akka.utils.message.KryoInitializer"
}
Warning
Se recomienda encarecidamente no cambiar ningún parámetro de configuración de Akka sin una orientación adecuada para evitar malfuncionamientos en la aplicación.
Si se debe cambiar alguna configuración en su entorno, póngase en contacto con nuestro equipo de soporte en support@griaule.com para obtener más información.
2.1. loglevel¶
Este parámetro define el nivel de información que se mantendrá por los registradores configurados tan pronto como se hayan iniciado. Los valores deben definirse entre comillas.
Valor predeterminado:
"WARNING"
Valores posibles:
"OFF"
"ERROR"
"WARNING"
"INFO"
"DEBUG"
2.2. stdout-loglevel¶
Este parámetro define el nivel de información que se mantendrá por el registrador básico activado durante el inicio del ActorSystem. Este registrador imprime los mensajes de registro en stdout (System.out). Los valores deben definirse entre comillas.
Valor predeterminado:
"INFO"
Valores posibles:
"OFF"
"ERROR"
"WARNING"
"INFO"
"DEBUG"
2.3. loggers¶
Este parámetro define, entre corchetes, las entidades de registro que se utilizarán para registrarse en el momento del arranque.
Valor predeterminado:
"akka.event.slf4j.Slf4jLogger"
2.4. logging-filter¶
Este parámetro define el filtro de eventos de registro que se utilizará por LoggingAdapter antes de publicar eventos de registro en el eventStream.
Valor predeterminado:
"akka.event.slf4j.Slf4jLoggingFilter"
2.5. actor¶
2.5.1. guardian-supervisor-strategy¶
Este parámetro define la clase que se utilizará por el guardian para obtener su supervisorStrategy.
Valor predeterminado:
"com.griaulebiometrics.gbds.driver.topology.GBDSGuardianSupervisionStrategy"
2.5.2. provider¶
Este parámetro define el ActorProvider que se utilizará.
Valor predeterminado:
"cluster"
Valores posibles:
local
remote
cluster
2.5.3. serializers¶
Este parámetro define las entradas para los serializadores enchufables y sus enlaces.
Los serializadores utilizados son:
kryo = io.altoo.akka.serialization.kryo.KryoSerializer
proto = akka.remote.serialization.ProtobufSerializer
Y el enlace es:
"com.griaulebiometrics.akka.utils.message.KryoSerializableMessage" = kryo
2.6. remote¶
2.6.1. artery¶
Este parámetro define la configuración para el controlador de transporte basado en Artery.
Valores predeterminados:
transport = "tcp"
enabled = "on"
advanced.image-liveless-timeout = 20s
advanced.client-liveness-timeout = 10s
advanced.maximum-frame-size = 30MiB
advanced.buffer-pool-size = 128
advanced.maximum-large-frame-size = 100MiB
advanced.large-buffer-pool-size = 32
canonical.hostname = "gbds2"
canonical.port = 2551
2.7. cluster¶
2.7.1. seed-nodes¶
Este parámetro define los nodos a los que unirse automáticamente al inicio. Cada valor debe agregarse entre comillas y separarse por comas dentro de corchetes.
Valor de ejemplo:
["akka://main@<hostname1>:2551"]
2.7.2. roles¶
Este parámetro define los roles de este miembro. Cada valor debe ser agregado entre comillas y separado por comas dentro de corchetes.
Valor predeterminado:
["manager"]
2.7.3. role.manager.min-nr-of-members¶
Este parámetro define el número mínimo de nodos que deben estar activos antes de iniciar el clúster.
Valor predeterminado:
4
2.7.4. singleton¶
2.7.4.1. singleton-name¶
Este parámetro define el nombre del actor del singleton hijo.
Valor predeterminado:
offsetmanager
2.7.4.2. hand-over-retry-interval¶
Cuando un nodo se convierte en el más antiguo, envía una solicitud de entrega al anterior más antiguo, que podría estar abandonando el clúster. Este parámetro define el tiempo, en segundos, para volver a intentar enviar esta solicitud hasta que el anterior más antiguo confirme que se ha iniciado la entrega o se elimine al miembro anterior más antiguo del clúster.
Valor predeterminado:
1s
2.7.4.3. min-number-of-hand-over-retries¶
Este parámetro define el número mínimo de reintentos para enviar la solicitud de entrega al nodo anterior más antiguo.
Valor predeterminado:
15
2.7.5. singleton-proxy¶
2.7.5.1. singleton-name¶
Este parámetro define el nombre del actor para el actor singleton que es iniciado por el ClusterSingletonManager.
Valor predeterminado:
${akka.cluster.singleton.singleton-name}
2.7.5.2. singleton-identification-interval¶
Este parámetro define el intervalo, en segundos, en el que el proxy intentará resolver la instancia singleton.
Valor predeterminado:
1s
2.7.5.3. buffer-size¶
Si la ubicación del singleton es desconocida, el proxy almacenará en búfer este número de mensajes y los entregará cuando se identifique el singleton. Cada vez que el búfer está lleno, se eliminarán los mensajes antiguos si se envían nuevos mensajes a través del proxy.
Valor predeterminado:
1000
Valores posibles:
1
a10000
3. Parámetros de Configuración¶
Esta sección describe cada parámetro de configuración de GBDS 4 que se puede listar en el archivo de configuración y cómo afectan la operación del sistema.
3.1. gbds.log.diagnose¶
Agrega registros de cola de Kafka en cada tarea de consumo de encuesta.
Valor predeterminado:
true
3.2. gbds.cluster.kafka.task.topic¶
Este parámetro define el tema de Kafka donde se asignarán las tareas.
Valor predeterminado:
gbds-tasks
3.3. gbds.cluster.kafka.max-tasks-per-poll¶
Número de tareas en Kafka tomadas en cada encuesta. El consumo de tareas en Kafka se realiza mediante la encuesta de la cola y la encuesta recupera un cierto número de registros cada vez. Cada registro es una tarea en GBDS. Esta configuración limita cuántos registros se toman en cada encuesta.
Valor predeterminado:
1
Valores posibles:
1
a1000
3.4. gbds.cluster.zookeeper.quorum¶
Este parámetro define el nombre de host y el puerto a través del cual se pueden encontrar los servidores de Zookeeper. Cada valor debe separarse por comas si hay más de uno disponible.
Valor predeterminado:
<hostname>:<port>
3.5. gbds.cluster.tasks.window-size-for-avoiding-duplicate-tasks¶
Este parámetro configura el tamaño de la cola con las últimas “N” tareas de procesamiento/procesadas. Si una tarea está duplicada para su procesamiento y aún está en cola, se ignora.
Valor predeterminado:
1000
3.6. gbds.cluster.kafka.quorum¶
Este parámetro define las direcciones del broker de Kafka y debe reflejar las configuraciones de Kafka.
Valor predeterminado:
<nombre de host>:6667
3.7. gbds.node.matchers.start.parameters¶
Este parámetro define la configuración inicial para los matchers de nodos al iniciar la aplicación.
Valor predeterminado:
"-Dakka.remote.netty.tcp.port=0 -Dakka.cluster.roles.0=matcher -Dlog4j.configuration=file:/etc/griaule/conf/gbds/gbds-log4j.xml -XX:MaxMetaspaceSize=256m -Xmx1024m"
3.8. gbds.node.matchers.actor-system-start.timeout¶
Este parámetro define el tiempo de espera, en segundos, para iniciar cada ActorSystem remoto que ejecutará un matcher.
Valor predeterminado:
30s
3.9. gbds.node.matchers.start.timeout¶
Este parámetro define el tiempo de espera, en segundos, para implementar un matcher en el ActorSystem remoto.
Valor predeterminado:
20s
3.10. gbds.node.matchers.number¶
Este parámetro define el número de matchers que se utilizarán en este nodo GBDS.
Si los microservicios de matcher están habilitados, se iniciarán 3 microservicios para cada uno especificado por este parámetro.
Valor predeterminado:
1
3.11. gbds.node.sinks.number¶
Este parámetro define el número de sinks que se utilizarán en este nodo GBDS.
Valor predeterminado:
1
3.12. gbds.node.actor-start.timeout¶
Este parámetro define el tiempo de espera, en segundos, para iniciar todos los actores de este nodo GBDS.
Valor predeterminado:
60s
3.13. gbds.node.max-loaded-tasks¶
Este parámetro define el número máximo de tareas permitidas para coexistir simultáneamente en GBDS. Cuando se alcanza este número, no se leerán más tareas hasta que se comprometan algunas.
Valor predeterminado:
100
Valores posibles:
10
a20000
3.14. gbds.node.wait-time-when-maxed-tasks:¶
Este parámetro define el tiempo de espera antes de intentar leer más tareas de Kafka.
Valor predeterminado:
1s
Valores posibles:
0s
a5s
3.15. gbds.node.hbase-template-loaders.number¶
Este parámetro define el número de cargadores de plantillas HBase.
Valor predeterminado:
1
3.16. gbds.node.rdb-template-loaders.number¶
Este parámetro define el número de cargadores de plantillas RDB.
Valor predeterminado:
1
3.17. gbds.biometric.fingerprint.cab.skip-non-cab¶
Este parámetro es una bandera para omitir plantillas no cab.
Valor predeterminado:
true
3.18. gbds.matchers.metrics.enabled¶
Este parámetro habilita las métricas de matcher.
Valor predeterminado:
true
3.19. gbds.biometric.face.identify.enabled¶
Este parámetro habilita la identificación para imágenes de rostros.
Valor predeterminado:
true
3.20. gbds.biometric.face.enroll.enabled¶
Este parámetro habilita la inscripción para imágenes de rostros.
Valor predeterminado:
true
3.21. gbds.biometric.fingerprint.cab.search-without-cab¶
Este parámetro define si la búsqueda está habilitada para plantillas de huellas dactilares sin información cab.
Valor predeterminado:
false
3.22. gbds.fingerprint.post-matching.enabled¶
Este parámetro habilita la coincidencia posterior de huellas dactilares para búsquedas latentes.
Valor predeterminado:
true
3.23. gbds.face.post-matching.enabled¶
Este parámetro habilita la coincidencia posterior de rostros.
Valor predeterminado:
true
3.24. gbds.cluster.quorum.quorum-check-delay¶
Este parámetro define el retraso, en segundos, para realizar la decisión de “Downing” un miembro del clúster inalcanzable o eliminado.
La cuenta regresiva de retraso comienza y se reinicia cada vez que hay un cambio en el estado de los miembros del clúster.
Valor predeterminado:
5s
3.25. gbds.boot.completed-message-ack.timeout¶
Este parámetro define cuánto tiempo, en segundos, el actor de arranque esperará para recibir un ack para el mensaje CompletedBootMessage de un NodeManager.
Si no se recibe el ack, el mensaje se reenviará.
Valor predeterminado:
3s
3.26. gbds.boot.people.node-nr-scanners¶
Este parámetro define el número de actores de escáner paralelos que escanearán personas registradas durante el arranque del sistema en cada nodo.
Valor predeterminado:
1
3.27. gbds.boot.shuffler-message-ack.timeout¶
Este parámetro define el tiempo máximo de espera para que el actor de mezcla reciba un mensaje de acuse de recibo. Si no se recibe el acuse de recibo, el mensaje se reenviará.
Valor predeterminado:
90s
3.28. gbds.boot.scan.ignoreErrorsOnRegion¶
Define si las regiones de HBase con errores deben ignorarse en el arranque.
Valor predeterminado:
true
Valores posibles:
true
false
3.29. gbds.boot.scan.ignoreErrorsOnRegion.maxTries¶
Define el número máximo de intentos antes de ignorar una región de HBase con error en el arranque.
Valor predeterminado:
5
3.30. gbds.boot.scan.maxRowsPerNode¶
Usando esta configuración, GBDS detendrá el escaneo de personas en un nodo cuando alcance este número de filas.
Valor predeterminado:
0
3.31. gbds.boot.scan-delayer.rows¶
Define el número de filas que se escanearán antes de esperar (retraso).
Valor predeterminado:
0
3.32. gbds.boot.scan-delayer.secs¶
Define el número de filas que se esperarán después de escanear el número de filas configurado.
Valor predeterminado:
0
3.33. gbds.ul.boot.scan.enabled¶
Define si se debe omitir el proceso de arranque de UL.
Valor predeterminado:
true
Valores posibles:
true
false
3.34. gbds.boot.scan.ignoreErrorsOnRegion¶
Define si se deben omitir las regiones malas en el arranque de UL.
Valor predeterminado:
true
Valores posibles:
true
false
3.35. gbds.boot.matcher.creation.sleepTime.ms¶
Define el tiempo de espera entre la creación de matcher.
Valor predeterminado:
500
Valor Mínimo:
0
Valor Máximo:
30000
3.36. gbds.biometric.fingerprint.enabled¶
Este parámetro se utiliza para determinar si las huellas dactilares son objetos de búsqueda primarios.
Valor predeterminado:
true
Valores posibles:
true
false
3.37. gbds.biometric.fingerprint.exception.enabled¶
Este parámetro define si las huellas dactilares deben considerarse al generar excepciones de inscripción.
Valor predeterminado:
true
Valores posibles:
true
false
3.38. gbds.biometric.fingerprint.identify.threshold¶
Este parámetro define la puntuación mínima de coincidencia para una comparación de huellas dactilares que se considerará una coincidencia durante una operación de búsqueda.
Valor predeterminado:
30
3.39. gbds.biometric.fingerprint.exception.threshold¶
Este parámetro define la puntuación mínima de coincidencia para considerar una comparación de huellas dactilares una coincidencia durante una inscripción, generando una excepción.
Valor predeterminado:
40
3.40. gbds.biometric.fingerprint.exception.enroll.min-matches-for-exception¶
Este parámetro define el número mínimo de dedos coincidentes requeridos para generar una excepción durante una operación de inscripción.
Valor predeterminado:
2
3.41. gbds.biometric.fingerprint.cab.identify.threshold¶
Este parámetro define el umbral para las coincidencias utilizando análisis CAB. Este parámetro no se utiliza si la verificación CAB no está habilitada.
Valor predeterminado:
5
3.42. gbds.biometric.fingerprint.latent.threshold¶
Este parámetro define la puntuación mínima para considerar una búsqueda latente como una coincidencia.
Valor predeterminado:
10
3.43. gbds.biometric.fingerprint.identify.index.delta-zero¶
Este parámetro define el índice de configuración para Delta Zero. Los coeficientes Delta se utilizan para optimizar las búsquedas.
Valor predeterminado:
-1
(deshabilitado)
3.44. gbds.biometric.fingerprint.identify.index.delta-one¶
Este parámetro define el índice de configuración para Delta One. Los coeficientes Delta se utilizan para optimizar las búsquedas.
Valor predeterminado:
-1
(deshabilitado)
3.45. gbds.latent.candidates.max-number¶
Este parámetro define la longitud máxima de la lista de candidatos al realizar búsquedas latentes.
Valor predeterminado:
1000
3.46. gbds.biometric.palmprint.enabled¶
Este parámetro se utiliza para determinar si las huellas palmares son objetos de búsqueda primarios.
Valor predeterminado:
false
Valores posibles:
true
false
3.47. gbds.biometric.palmprint.exception.enabled¶
Este parámetro define si las huellas palmares deben considerarse al generar excepciones de inscripción.
Valor predeterminado:
false
Valores posibles:
true
false
3.48. gbds.biometric.palmprint.interdigital.identify.threshold¶
Este parámetro define la puntuación mínima de coincidencia para una comparación interdigital de huellas palmares para considerarse una coincidencia durante una operación de búsqueda.
Valor predeterminado:
70
3.49. gbds.biometric.palmprint.thenar.identify.threshold¶
Este parámetro define la puntuación mínima de coincidencia para una comparación de huellas palmares thenar para considerarse una coincidencia durante una operación de búsqueda.
Valor predeterminado:
70
3.50. gbds.biometric.palmprint.hypothenar.identify.threshold¶
Este parámetro define la puntuación mínima de coincidencia para una comparación de huellas palmares hypothenar para considerarse una coincidencia durante una operación de búsqueda.
Valor predeterminado:
70
3.51. gbds.biometric.face.enabled¶
Este parámetro se utiliza para determinar si las caras son objetos de búsqueda primarios.
Valor predeterminado:
false
Valores posibles:
true
false
3.52. gbds.biometric.face.exception.enabled¶
Este parámetro define si las imágenes faciales deben considerarse al generar excepciones de inscripción.
Valor predeterminado:
false
Valores posibles:
true
false
3.53. gbds.biometric.face.identify.threshold¶
Este parámetro define la puntuación mínima de coincidencia para una comparación facial para considerarse una coincidencia durante una operación de búsqueda.
Valor predeterminado:
60
3.54. gbds.biometric.face.exception.threshold¶
Este parámetro define el umbral que se utilizará al comparar la biometría facial durante las operaciones de “identificación”. Asignar un valor alto a este parámetro puede aumentar posiblemente el número de falsos negativos.
Valor predeterminado:
60
3.55. gbds.biometric.face.exception.minimum.coincident-fingers.ignore.face¶
Este parámetro define el número de dedos correspondientes necesarios para descartar el resultado de comparación facial al generar una excepción de actualización.
Valor predeterminado:
4
3.56. gbds.biometric.face.template.format¶
Define el formato de plantilla para la cara.
Valores posibles: TPT_FORMAT_1
o TPT_FORMAT_2
.
Important
Los formatos de cara no son intercambiables. Las caras inscritas en un formato no se emparejarán con las caras inscritas en otro formato.
Danger
Este valor debe ser el mismo en application.conf
y gbdsapi.properties
3.57. gbds.biometric.iris.enabled¶
Este parámetro se utiliza para determinar si los iris son objetos de búsqueda primarios.
Valor predeterminado:
false
Valores posibles:
true
false
3.58. gbds.biometric.iris.exception.enabled¶
Este parámetro define si los iris deben considerarse al generar excepciones de inscripción.
Valor predeterminado:
false
Valores posibles:
true
false
3.59. gbds.biometric.iris.exception.threshold¶
Este parámetro define la puntuación mínima de coincidencia para una comparación de iris que se considerará una coincidencia durante una inscripción, generando una excepción.
Valor predeterminado:
62
3.60. gbds.biometric.iris.identify.threshold¶
Este parámetro define la puntuación mínima de coincidencia para una comparación de iris que se considerará una coincidencia durante una operación de búsqueda.
Valor predeterminado:
62
3.61. gbds.latent.reverse-latent-match.enabled¶
Este parámetro define si la inscripción y búsqueda de latentes no resueltos están habilitadas o deshabilitadas. Se utiliza para aplicaciones forenses.
Valor predeterminado:
false
Valores posibles:
true
false
3.62. gbds.latent.fingerprint.identify.threshold¶
Este parámetro define la puntuación mínima para considerar una búsqueda de latente de huella dactilar una coincidencia.
Valor predeterminado:
12
3.63. gbds.latent.additional-search.enabled¶
Este parámetro define si la búsqueda adicional está habilitada para búsquedas latentes. La búsqueda adicional realizará una comparación adicional para pares coincidentes entre un umbral de puntuación definido.
Valor predeterminado:
false
Valores posibles:
true
false
3.64. gbds.latent.additional-search.fingerprint.execution-lower-bound¶
Este parámetro define la puntuación de coincidencia más baja por encima de la cual se debe realizar una búsqueda adicional.
Valor predeterminado:
15
3.65. gbds.latent.additional-search.fingerprint.execution-upper-bound¶
Este parámetro define la puntuación de coincidencia más alta por debajo de la cual se debe realizar una búsqueda adicional.
Valor predeterminado:
120
3.66. gbds.latent.primary-classification.enabled¶
Este parámetro define si se debe utilizar la clasificación primaria para búsquedas latentes.
Valor predeterminado:
false
Valores posibles:
true
false
3.67. gbds.latent.primary-classification.same-class.fingerprint.threshold¶
Este parámetro define el umbral mínimo para comparar huellas dactilares de la misma clase y considerar una coincidencia durante las búsquedas latentes.
Valor predeterminado:
15
3.68. gbds.latent.primary-classification.different-class.fingerprint.threshold¶
Este parámetro define el umbral mínimo para considerar una coincidencia entre huellas dactilares de diferentes clases durante las búsquedas latentes.
Valor predeterminado:
40
3.69. gbds.latent.primary-classification.unknown-class.should-use-different-class-threshold¶
Este parámetro define si se debe utilizar el umbral de coincidencia de clase diferente para la búsqueda latente cuando hay una clasificación primaria desconocida.
Valor predeterminado:
true
Valores posibles:
true
false
3.70. gbds.latent.ul.fingerprint.identify.threshold¶
Este parámetro define el umbral predeterminado para buscar latentes de huellas dactilares no resueltos.
Valor predeterminado:
4
3.71. gbds.latent.ul.palmprint.identify.threshold¶
Este parámetro define el umbral predeterminado para buscar latentes de palma no resueltos.
Valor predeterminado:
4
3.72. gbds.latent.postmatching.enabled¶
Este parámetro define si la post-identificación está habilitada para búsquedas latentes inversas, búsquedas latentes regulares y búsquedas contra latentes no resueltos registrados.
Valor predeterminado:
false
Valores posibles:
true
false
3.73. gbds.rdb.driverClassName¶
Este parámetro define el nombre de la clase para la base de datos relacional que se utilizará para almacenar latentes no resueltos. Este valor debe definirse entre comillas.
Valor predeterminado:
"com.mysql.jdbc.Driver"
3.74. gbds.rdb.url¶
Este parámetro define la URL de la base de datos relacional a la que se accederá. Este valor debe definirse entre comillas.
Valor predeterminado:
"jdbc:mysql://<dirección>:<puerto>/gbds"
3.75. gbds.rdb.username¶
Este parámetro define el nombre de usuario que se utilizará para acceder a la base de datos relacional. Este valor debe definirse entre comillas.
Valor predeterminado:
"root"
3.76. gbds.rdb.password¶
Este parámetro define la contraseña que se utilizará para acceder a la base de datos relacional. Este valor debe definirse entre comillas.
3.77. gbds.rdb.dialect¶
Este parámetro define el dialecto que se utilizará en la base de datos relacional. Este valor debe definirse entre comillas.
Valor predeterminado:
"org.hibernate.dialect.MySQLDialect"
3.78. gbds.rdb.showSql¶
Este parámetro define si las declaraciones SQL deben incluirse en los registros de la aplicación.
Valor predeterminado:
true
Valores posibles:
true
false
3.79. gbds.rdb.maxPoolSize¶
Número máximo de conexiones que un grupo mantendrá en cualquier momento.
Valor predeterminado:
100
3.80. gbds.rdb.minPoolSize¶
Número mínimo de conexiones que un grupo mantendrá en cualquier momento.
Valor predeterminado:
1
3.81. gbds.rdb.initialPoolSize¶
Número de conexiones que un grupo intentará adquirir al inicio. Este valor debe estar en el rango de gbds.rdb.minPoolSize a gbds.rdb.maxPoolSize.
Valor predeterminado:
2
3.82. gbds.rdb.maxStatments¶
Este parámetro define el tamaño de la caché global de PreparedStatement de c3p0. Si tanto gbds.rdb.maxStatments como gbds.rdb.maxStatementsPerConnection son cero, el almacenamiento en caché de declaraciones no se habilitará. Si gbds.rdb.maxStatments es cero pero gbds.rdb.maxStatementsPerConnection es un valor distinto de cero, el almacenamiento en caché de declaraciones se habilitará, pero no se aplicará ningún límite global, solo el máximo por conexión.
Este parámetro controla el número total de declaraciones en caché, para todas las conexiones. Si se establece, debe ser un número bastante grande, ya que cada conexión agrupada requiere su propio conjunto de declaraciones en caché distintas. Como guía, considere cuántas PreparedStatements distintas se utilizan con frecuencia en su aplicación y multiplique ese número por gbds.rdb.maxPoolSize para llegar a un valor adecuado.
Valor predeterminado:
0
3.83. gbds.rdb.maxIdleTime¶
Este parámetro define, en segundos, el tiempo que una conexión puede permanecer agrupada pero sin usar antes de ser descartada. Cero significa que las conexiones inactivas nunca caducan.
Valor predeterminado:
1800
3.84. gbds.rdb.maxConnectionAge¶
Este parámetro define, en segundos, el tiempo máximo para que una conexión viva. Una conexión más antigua que gbds.rdb.maxConnectionAge será destruida y eliminada del grupo. Esto difiere de gbds.rdb.maxIdleTime en que se refiere a la edad absoluta. Incluso una conexión que no ha estado inactiva será eliminada del grupo si excede gbds.rdb.maxConnectionAge. Cero significa que no se aplica una edad absoluta máxima.
Valor predeterminado:
1800
3.85. gbds.rdb.statementCacheNumDeferredCloseThreads¶
Si se establece en un valor mayor que 0, la caché de declaraciones rastreará cuándo se están utilizando las conexiones y solo destruirá las declaraciones cuando sus conexiones principales no se estén utilizando de otra manera. Aunque el cierre de una declaración mientras la conexión principal está en uso está formalmente dentro de las especificaciones, algunas bases de datos y/o controladores JDBC, especialmente Oracle, no manejan bien el caso y se congelan, lo que lleva a bloqueos. Establecer este parámetro en un valor positivo debería eliminar el problema. Este parámetro solo debe establecerse si observa que los intentos de c3p0 para cerrar() declaraciones en caché se congelan (generalmente verá BLOQUEOS APARENTES en sus registros). Si se establece, este parámetro casi siempre debe establecerse en 1.
Valor predeterminado:
1
3.86. gbds.rdb.acquireIncrement¶
Determina cuántas conexiones a la vez intentará adquirir c3p0 cuando se agote el grupo.
Valor predeterminado:
10
3.87. gbds.rdb.testConnectionOnCheckout¶
Si es verdadero, se realizará una operación en cada verificación de conexión para verificar que la conexión sea válida. La prueba de conexiones en la verificación es la forma más simple y confiable de prueba de conexiones, pero para obtener un mejor rendimiento, considere verificar las conexiones periódicamente utilizando gbds.rdb.idleConnectionTestPeriod.
Valor predeterminado:
false
Valores posibles:
true
false
3.88. gbds.rdb.testConnectionOnCheckin¶
Si es verdadero, se realizará una operación de forma asíncrona en cada check-in de conexión para verificar que la conexión sea válida. Úselo en combinación con gbds.rdb.idleConnectionTestPeriod para realizar pruebas de conexión siempre asíncronas y bastante confiables.
Valor predeterminado:
true
Valores posibles:
true
false
3.89. gbds.rdb.acquireRetryAttempts¶
Define cuántas veces c3p0 intentará adquirir una nueva conexión de la base de datos antes de renunciar. Si este valor es menor o igual a cero, c3p0 seguirá intentando obtener una conexión indefinidamente.
Valor predeterminado:
10
3.90. gbds.rdb.idleConnectionTestPeriod¶
Si este es un número mayor que 0, c3p0 probará todas las conexiones inactivas, agrupadas pero no verificadas, cada este número de segundos.
Valor predeterminado:
30
3.91. gbds.biometric.newborn-palmprint.enabled¶
Este parámetro se utiliza para determinar si las huellas de palma de recién nacidos son objetos de búsqueda primarios.
Valor predeterminado:
false
Valores posibles:
true
false
3.92. gbds.biometric.newborn-palmprint.exception.enabled¶
Este parámetro define si las huellas de palma de recién nacidos deben considerarse al generar excepciones de inscripción.
Valor predeterminado:
false
Valores posibles:
true
false
3.93. gbds.biometric.newborn-palmprint.identify.threshold¶
Este parámetro define la puntuación mínima de coincidencia para una comparación de huellas de palma de recién nacidos para considerarse una coincidencia durante una operación de búsqueda.
Valor predeterminado:
50
3.94. gbds.cluster.recovery.qtd.scanners¶
Número de escáneres para la recuperación del clúster.
Valor predeterminado:
5
3.95. gbds.cluster.recovery.qtd.getters¶
Número de getters para la recuperación de clúster. Este parámetro no se utiliza en la versión 3.2x y superior.
Valor predeterminado:
2
3.96. gbds.cluster.recovery.shuffler.block.window.size¶
Tamaño de la ventana de bloque de shuffler (tamaño del búfer de shuffler) para la recuperación de clúster.
Valor predeterminado:
100
3.97. gbds.router.virtual-nodes.number¶
Este parámetro define el número de nodos virtuales.
Valor predeterminado:
100
3.98. gbds.biometric.best-of-biometrics.enabled¶
Este parámetro habilita el mejor de las biometrías, cuando está habilitado, la biometría de la persona es la consolidación de las mejores biometrías obtenidas de esa persona en todas las transacciones.
Warning
Esta bandera DEBE tener el mismo valor en GBDS API y GBDS.
Valor predeterminado:
false
Valores posibles:
true
false
3.99. gbds.biometric.remove-inactive-people-from-enroll-result¶
Este parámetro define si se deben eliminar personas inactivas de los resultados de inscripción.
Valor predeterminado:
false
Valores posibles:
true
false
3.100. gbds.transparency.search.identify.result.notify.enabled¶
Este parámetro habilita el servicio de notificación por correo electrónico, que envía notificaciones por correo electrónico para los resultados de búsqueda con personas de interés.
Valor predeterminado:
false
Valores posibles:
true
false
3.101. gbds.searches.verify.saveOnRdb.enabled¶
Define si las búsquedas de verificación se guardarán en la tabla RDB gbds.transaction
.
Valor predeterminado:
true
Valores posibles:
true
false
Danger
Este valor debe ser el mismo en application.conf
y gbdsapi.properties
3.102. gbds.searches.identify.saveOnRdb.enabled¶
Define si las búsquedas de identificación se guardarán en la tabla RDB gbds.transaction
.
Valor predeterminado:
true
Valores posibles:
true
false
Danger
Este valor debe ser el mismo en application.conf
y gbdsapi.properties
3.103. gbds.monitor.port¶
Define el puerto para ejecutar el Monitor GBDS.
Valor predeterminado:
9100
3.104. gbds.memory-monitor¶
Agrega un monitor de memoria que registra el uso de memoria de JVM cada 10 segundos.
Valor predeterminado:
false
Valores posibles:
true
false
3.105. gbds.watchdog.interval¶
Define, en minutos, el intervalo de tiempo para los registros del watchdog.
Valor predeterminado:
1
Valor máximo:
60
3.106. gbds.watchdog.log.mode¶
Define el modo de registro del watchdog.
Valor predeterminado:
TGUID_MATCHER_MAP
Valores posibles:
TGUID_MATCHER_MAP
MATCHER_TGUID_MAP
3.107. gbds.watchdog.log.level¶
Define el nivel de registro del watchdog.
Valor predeterminado:
DEBUG
Valores posibles:
DEBUG
INFO
3.108. gbds.verifyPostMatch.enabled¶
Activa o desactiva la verificación post match en transacciones de inscripción con excepciones.
Valor predeterminado:
true
Valores posibles:
true
,false
3.109. gbds.search.verify.adjust-resolution¶
Cuando esta configuración está activada, la verificación y actualización en la API y la verificación posterior al emparejamiento en GBDS ajustarán la resolución realizando una verificación de coincidencia, disminuyendo la puntuación en dedos y palmas.
Valor predeterminado:
true
Valores posibles:
true
,false
3.110. gbscluster.update.consider.fingerprints¶
Este parámetro define si se deben considerar las huellas dactilares al generar excepciones de actualización.
Valor predeterminado:
true
Possible values:
true
,false
3.111. gbscluster.update.consider.faces¶
Este parámetro define si se deben considerar las imágenes faciales al generar excepciones de actualización.
Valor predeterminado:
false
Possible values:
true
,false
3.112. gbscluster.update.consider.faces.beforeFingerprints¶
Este parámetro define si las caras deben analizarse antes que las huellas dactilares al generar excepciones de actualización. Si es false
, el análisis del rostro se realiza después del análisis de las huellas dactilares.
Valor predeterminado:
false
Possible values:
true
,false
3.113. gbscluster.update.faces.verify.matchthreshold¶
Este parámetro define el umbral que se utilizará al comparar la biometría facial durante las operaciones de búsqueda. Asignar un valor alto a este parámetro puede aumentar posiblemente el número de falsos negativos.
Valor predeterminado:
60
3.114. gbscluster.update.minimum.fingers¶
Este parámetro define el número mínimo de coincidencias de huellas dactilares requeridas para que una operación de “actualización” sea aceptada.
Valor predeterminado:
4
4. Configuración del Serializador de Plantillas¶
Esta sección describe los parámetros de configuración relacionados con el serializador de plantillas. Estos parámetros de configuración están diseñados para permitir el uso de Operaciones por lotes de GBDS.
See also
Consulte el manual de Operaciones por lotes de GBDS para obtener más información sobre cómo usarlo.
Cada vez que GBDS realiza una operación de arranque en frío, intenta recuperar las plantillas de la familia de columnas estándar. Si una plantilla no existe en la familia de columnas estándar, intenta recuperarla de la familia de columnas de respaldo.
Los parámetros de configuración para el serializador son los siguientes:
4.1. Familia de Columnas Estándar¶
Estos parámetros están divididos por modalidad biométrica. Las plantillas en estas familias de columnas no tienen codificación y el formato utilizado es byteArray.
gbds.hbase.templates.fingerprint.cf.name
gbds.hbase.templates.palmprint.cf.name
gbds.hbase.templates.face.cf.name
gbds.hbase.templates.iris.cf.name
gbds.hbase.templates.newborn-palmprint.cf.name
El valor predeterminado para estos parámetros es tpt
.
4.2. Familia de Columnas de Respaldo¶
Estos parámetros se refieren a la familia de columnas utilizada anteriormente para almacenar las plantillas biométricas, separadas por modalidad biométrica.
gbds.hbase.templates.fallback.fingerprint.cf.name
gbds.hbase.templates.fallback.palmprint.cf.name
gbds.hbase.templates.fallback.face.cf.name
gbds.hbase.templates.fallback.iris.cf.name
gbds.hbase.templates.fallback.newborn-palmprint.cf.name
Los valores predeterminados representan la familia de columnas utilizada antes de cambiar estos parámetros y son, respectivamente: fingerprints
, palmprints
, faces
, iris
.
4.3. Codificación base64 de Respaldo¶
La familia de columnas de respaldo admite codificación. Los siguientes parámetros definen si la familia de columnas está codificada en base64:
gbds.hbase.templates.fallback.fingerprint.cf.is-base64-encoded
gbds.hbase.templates.fallback.palmprint.cf.is-base64-encoded
gbds.hbase.templates.fallback.face.cf.is-base64-encoded
gbds.hbase.templates.fallback.iris.cf.is-base64-encoded
gbds.hbase.templates.fallback.newborn-palmprint.cf.is-base64-encoded
El valor predeterminado para estos parámetros es true
.
4.4. gbds.template.memory.format¶
Define cómo GBDS almacenará las plantillas en memoria.
Las opciones son:
DESERIALIZED_FULL
: Opción predeterminada. Las plantillas se almacenan en los matchers deserializados en memoria con minucias y segmentos.SERIALIZED_MINUTIAE_SEGMENTS
: Las plantillas se almacenan en los matchers serializados en memoria con minucias y segmentos.SERIALIZED_MINUTIAE
: Las plantillas se almacenan en los matchers serializados en memoria con solo minucias. Los segmentos se vuelven a extraer de la plantilla en cada búsqueda realizada. Esto afecta el tiempo de búsqueda 1:N.OPTIMIZED
: Utiliza un nuevo formato de plantilla optimizado para reducir la degradación del rendimiento de búsqueda con el tiempo.
4.5. Preasignación de Memoria¶
Define la cantidad de memoria preasignada para cada modalidad.
gbds.fingerprint.memory-storage.pre-aloc
gbds.palmprint.memory-storage.pre-aloc
gbds.newborn-palmprint.memory-storage.pre-aloc
gbds.ul-fingerprint.memory-storage.pre-aloc
gbds.ul-palmprint.memory-storage.pre-aloc
El valor predeterminado para cada configuración es 0
. El sistema entiende Kilobytes (k
, kb
), Megabytes (m
, mb
) y Gigabytes (g
, gb
), sin distinción de mayúsculas y minúsculas. El valor se divide equitativamente entre todos los matchers en el nodo.
Note
La cara y el iris no se pueden preasignar.
4.6. Microservicios de Matcher¶
Esta sección presenta los parámetros de configuración relacionados con los microservicios de matcher.
La configuración de microservicios es única para cada nodo en el clúster.
4.6.1. gbds.match.service.enabled¶
Define si los microservicios de matcher están activados.
Valor predeterminado:
false
Valores posibles:
true
false
4.6.2. gbds.match.service.initialPort¶
Define el puerto inicial para iniciar los servicios de coincidencia en el nodo.
Valor predeterminado:
32000
4.6.3. gbds.match.service.logLevel¶
Define el nivel de registro de los servicios de coincidencia en GBDS. Los diferentes niveles de registro son:
- NONE
- No registra nada
- INFO
- Registra scripts y URL de solicitud
- TIME
- Registra scripts, URL de solicitud y tiempo transcurrido
- DEBUG
- Registra todo y activa el registro de cola de registro de servicio
Valor predeterminado:
NONE
Valores posibles:
INFO
TIME
DEBUG
4.6.4. gbds.match.service.timeout¶
Define el tiempo máximo de espera para las solicitudes al microservicio de coincidencia, en milisegundos.
Valor predeterminado:
10000
4.6.5. gbds.match.service.templateSend.parallelByModality¶
Activa el procesamiento paralelo por modalidad biométrica en GBDS.
Valor predeterminado:
true
Valores posibles:
true
false
4.6.6. gbds.match.service.linkLibSegfault¶
Activa el seguimiento de fallas de segmentación en el microservicio de coincidencia.
Valor predeterminado:
false
Valores posibles:
true
false
4.6.7. gbds.match.service.maxTries¶
Cuando un microservicio de coincidencia tiene un error de conexión, intente 3 veces antes de fallar su transacción, esperando 2 segundos entre intentos.
Valor predeterminado:
3
4.6.8. gbds.match.service.maxConnectionErrors¶
Cuando un microservicio de coincidencia tiene 5 transacciones fallidas por error de conexión seguidas, detenga GBDS para evitar fallar cada transacción a partir de ese punto.
Valor predeterminado:
5
4.6.9. gbds.match.service.checkTimeoutSecs¶
Tiempo de espera (en segundos) para verificar si se creó el microservicio de coincidencia.
Valor predeterminado:
10