 Buenos días, yo soy Maximiliano Rinaldi de Dirección Nacional de Emigraciones y acompañé el proyecto desde sus inicios, más que nada del lado de la infraestructura. Para poder implementar SAM, nosotros tuvimos que soportar una gran cantidad de cambios porque siempre trabajamos con todo lo que es infraestructura del lado de HyperBee, Microsoft, etcétera. Y para poder llegar a esto necesitábamos implementar Red Hat, virtualización, OpenShift, lo cual fue un cambio no menor. Para poder llegar a eso, al principio teníamos, no sé, alrededor de unas 5 o 6 máquinas virtuales que era lo que soportaba el proyecto y vemos que teníamos gran cantidad de datos para ingerir. Hoy en día estamos en el orden de los 2.000 millones de datos, lo cual no es poco, lo cual nos llevó a empezar a expandirnos y buscar formas de poder hacerlo. Tengan en cuenta que miraciones es un organismo que tiene como principal función, por un lado, registrar y documentar a todas las personas que quieran quedarse en el país, pero también hay que registrar los ingresos y ingresos del país, controlándolos previamente porque no podemos dejar ni entrar ni salir a cualquier persona. Hay un orden de los 200.000 personas de ingresos o ingresos en todo el país, en nuestros más de 230 pasos fronterizos entre aéreos, terrestres y marítimos, de los cuales hay alrededor de un millón que son tránsitos biométricos en nuestros aeropuertos. Tengan en cuenta que eso lleva a cierto tiempo, tanto para validarlo previamente como para registrar tanta cantidad de información. Hoy en día, además, estamos trabajando con las puertas biométricas, y algunos viajo recientemente, pero van al aeropuerto, no tienen ni que hablar con nadie, pasan, ponen huella, pasaporte, foto y siguen de largo, serán unos 20, 30 segundos, lo cual lo hace muy rápido para poder optimizar tiempo porque no somos tantos realmente en miraciones. Bueno, la cuestión es que entre tantas aplicaciones que tenemos, tenemos datos no tan normalizados, porque vienen de distintos orígenes, las aplicaciones que hay muchas que tienen gran cantidad de años, y los analistas, previamente, a poder decidir si alguien puede o no entrar, tenían que controlar entre cuatro y cinco sistemas. Entre otras cosas tenían que controlar excels, que tenían que solicitarlos desde la oficina de información hacia el área de sistemas, llevaban estos controles en algunos casos 24, 48 y 72 horas, lo cual no es algo menor, porque para ese entonces las personas pueden ya estar en el país. Hace un tiempo se buscó la forma de estar preparados de manera previa ante quién puede llegar o no, y por eso empezamos a trabajar con lo que SAPI, que es la información anticipada del pasajero, que está implementado ya en muchos países. De esa forma, un tiempo antes de que venga la persona al país, nosotros ya tenemos un mensaje avisándonos quién puede ser y quién no, para que nos dé una ventana para buscar si la persona tiene algún registro problemático, si tiene antecentes penales. El caso más conocido fue hace unos meses, Mike Tyson, que no se le dejó entrar al país, ni siquiera se le dejó abordar al avión en el área de salida, porque tiene antecentes penales. Eso es uno de los casos más conocidos que creo que habrán escuchado. Se darán cuenta que para poder procesar todo esto, un analista no puede echar cuántas personas creen que puede haber una dirección así para filtrar toda esta clase de contenido. 200.000 personas por día no son realmente tanto, tendremos del orden de los 40 personas hoy en día analizando todo esto. Para eso tuvimos que implementar un sistema unificado de control, que es SAM, el sistema de análisis miratorio, el cual participó hace unos meses en la San Francisco Innovation Award y recibió un premio. Ahora les voy a dejar un video de esto. En un mundo complejo, para tener una vista única y obtener datos que sean veraces de manera oportuna en un tiempo instantáneo, no es una tarea fácil. La Argentina recibe unos 70 millones de movimientos anuales. La Dirección Nacional de Migraciones es la que regula el ingreso y egreso de personas al país la que genera los documentos de los extranjeros en la Argentina. Ese análisis que antes se hacía de manera manual o que se hacía sistema por sistema, de manera independiente, se haga todo junto, es decir, sea más rápido, sea más eficiente, sea más preciso, sea en tiempo real. En esta base colaborativa nos daba una ventaja sustancial contra aquellas personas que hasta hace años atrás tenían mayor facilidad si se quiere para ingresar al territorio argentino o ingresar del territorio con algún impedimento legal. Cuando iniciamos el desarrollo de SAM, junto con el gente de Red Card, nuestro gran desafío fue hacer de todas nuestras bases de conocimiento una única plataforma para ver a la persona como un individuo único de diferentes miradas. Red Card Fuse nos permitió integrar la información rápidamente y con conectores muy sencillos de lo que tenía que ver con redes sociales. El uso de esta plataforma precisamente al consolidar las búsquedas en una única pantalla que les permite acceder a la información de todas las bases redundó en que los informes que antes se desarrollaban en 48, 72 horas se pueden realizar en el día. Red Card Virtualization para nosotros es fantástico. No potenciamos absolutamente porque aprovechamos todo el hardware que estaba disponible y que con otras soluciones propietarias no teníamos los mismos tiempos de respuesta. Lo que hacemos ahora es dar respuesta a la sociedad. Nuestras sociedades son seguras, compatibilizan el estado de derecho y las leyes por la seguridad nacional y la gente pueda estar más tranquila y desarrollarse y trabajar en paz. Lo que fue la implementación del sistema análisis migratorio llevó una gran cantidad de tiempo para lo que fue conocer el negocio porque se habló con todos los analistas buscando uno por uno a ver qué clase de búsquedas hacían, cómo lo realizaban, la documentación que tenía que eran unos libros enormes para poder aprender y lograr implementar todo esto dentro de nuestro sistema. Ahora, Victoria les va a comentar un poco más al respecto. Gracias, Maxi. Buenas tardes a todos. Me imagino que están ansiosos también por el almuerzo. Uno de los grandes desafíos que tuvimos en conjunto con migraciones fue el poder entender estas necesidades y en esto se transformó el sistema que se construyó bajo el nombre del sistema análisis migratorio. Sam, lo que hace es que un único punto de acceso permite conciliar diferentes fuentes que pueden ser abiertas, pueden ser cerradas, no importa el origen, no importa el formato, como también lo mencionaba Maxi, permite potenciar la capacidad expresiva del analista porque, como mencionó, incorporamos las heurísticas que son propias de migraciones. Eso que decía del manual explica cómo tienen que hacer las búsquedas para saber qué tienen que buscar, qué no tienen que buscar. Eso se incorporó como conocimiento a la herramienta y cada vez que un analista realiza una búsqueda se disparan estas heurísticas para que ya esté preprocesado esta información y permitió cambiar la forma de trabajo que antes era más reactivo forense a una forma más preventivo forense porque justamente lo que permite es estar alerta de los posibles patrones que pueden llegar a ocurrir y poder anticiparse, como mencionaba antes, a los pasajeros que están por ingresar al país y de esta manera cuidar las fronteras. Uno de las partes importantes tiene que ver con todas las fuentes que se van conciliando. Vienen fuentes del Ministerio de Justicia, de lo que es el Ministerio de Seguridad, de lo que es ANSES, de lo que es AFIP, de lo que mencionaba también de la información anticipada de pasajeros, que es la que se llama API, y las fuentes internas que tienen migraciones que es donde se van registrando los diferentes pedidos de erradicaciones, los diferentes pasos por los puntos de control migratorio, terrestres fluviales, marítimos de aéreos, y todos los pedidos y las de restricciones también que van sucediendo que se van conciliando en este punto. Toda esta información se preprocesa, se homogeniza, se pasan estas heurísticas y en base a eso lo transformamos en un modelo que es intelegible para el usuario que quiere decir esto, que lo que hacemos es unificar y consolidar el perfil de un usuario. Se va desambiguando esa información porque cada vez que pasa alguien por un puesto de control migratorio, a veces si pasa, lo habrán vivido en un punto terrestre, a veces hay un operario que es el que registra quién es la persona que está pasando, y por otros, lo que ha pasado en aeropuertos, en bouquets bus, es un control biométrico con otro tipo de automatización. Entonces eso hace que muchas veces haya registros, Victoria Martínez, que puede estar como Victoria Martínez con Z, con S, como Victoria Suárez y termino siendo la misma persona. Este es un gran trabajo de consolidación de datos y desambiguación de perfiles que se va transformando justamente en este formato de la dimensión de perfiles, las acciones que va consolidando. Todo lo que sucede en estas fuentes de ANSES, de AFIP, de las que se fueron consolidando en esta otra dimensión de acciones, la parte que tiene que ver con los documentos de expedientes digitales va a parar a otra dimensión de expedientes, y eso hace que el usuario pueda concentrarse en la búsqueda que tiene que hacer y no en cómo acceder a cada una de esas fuentes, disminuye esa reticencia tecnológica que hay de cómo acceder a esos datos y que directamente pueda gestionar su conocimiento. Entonces esa manera se facilita el trabajo del analista y también se facilita el trabajo del área de sistemas, porque antes, como mencionaba Maxi, se pedían los diferentes formatos de búsqueda, se le pedían a la gente de sistemas, recuerden que esta es un área que trabaja 24 por 7. Eso quiere decir que 24 por 7 era gente que tenía que estar haciendo guardias realizando esas búsquedas, devolviendo esos resultados para que luego sean también procesados por los analistas. Entonces toda esa optimización de tiempos operativos termina siendo el conocimiento que uno puede gestionar para decir cómo buscar preventivamente. Uno de los puntos que mencionamos principales es el tema de las búsquedas. En las búsquedas, una de las particularidades es que a veces uno va recibiendo información como si fuese un rompecabezas que quiere decir esto, que a veces yo sé que el nombre de una persona es preciso pero después tengo otros atributos que pueden ser difusos, entonces se combinan diferentes tipos de atributos que me hacen algunas búsquedas no precisas porque no sé exactamente esa persona, el tipo nacionalidad que puede tener o el apellido, como puede llegar a ser escrito exactamente, semánticamente. Entonces se van haciendo estas búsquedas por aproximaciones. Otro de los puntos importantes es que uno puede hacer estas búsquedas precisas o puede hacer unas búsquedas más de segmentación. ¿Qué quiere decir esto? Que uno puede estar concentrado en estudiar o ver cómo van cambiando los patrones migratorios a lo largo del tiempo y en base a eso se vayan detectando ciertas anomalías. Cada vez que ingresa un dato a la plataforma se comienza a interrelacionar con todos los otros datos que forman parte también de la base de datos de todas las bases de datos que se van consolidando y se empiezan a marcar relaciones. Estas relaciones pueden ser explícitas o pueden ser implícitas. Cuando hablamos de relaciones explícitas pueden ser relaciones que uno tiene las propias fuentes y las implícitas están relacionadas con algunas relaciones que no quiere decir que estén marcados por ejemplo como un dato filial porque fui y pasé por un paso migratorio con un hijo. ¿Qué significa esto? Esto da vida a lo que llamamos red de relaciones que me permite mirar esta información en formato de grafo que es la manera un poco más sencilla de poder visualizarlo y de esa manera entender cómo forman todas estas relaciones como se van trazando a medida que van ingresando a la plataforma. Otro punto muy importante es que si uno tiene una consolidación de datos en un repositorio común se va dejando toda una marca de auditoria de las personas que observan esos datos quien accede se puede emitir también alerta sobre eso. Algo que les vamos a mostrar ahora y aclaro que es con datos sintéticos eso significa que son datos simulados por una cuestión de confidencialidad también con migraciones y los datos. Esto es lo que les decía que uno tiene como si fuesen el Google interno de sus propias fuentes donde uno puede hacer una búsqueda que puede preguntar por un segmento de decir bueno todos los de género femenino que hayan pasado entre tal y tal fecha puedo buscar a Roi González y escribirlo directamente en la plataforma y sobre eso me va a traer todo lo que esté relacionado con Roi González. Se ve muy chico. Se ve mejor. Uno puede ver cuál es la persona se concilian todos los datos si tienen restricciones el perfil, los diferentes tipos de paso uno puede, el problema, vamos a tener que... puedo ver información, resumen que eso me va marcando de esta persona o este conjunto de personas cuáles son las métricas características en el caso por ejemplo de los tránsitos que son las diferentes dimensiones se acuerdan cuando les dije que se acomodaba en diferentes dimensiones en este caso estoy sobre la de perfil que es la que vimos anteriormente la de tránsitos si ven en este mapa yo puedo ver que posible perfil o conjunto de perfiles tiene una gran afluencia de pasos por controles terrestres entonces de esa manera de una forma rápida uno puede ver cuál es la frecuencia de los tránsitos cuáles son los tránsitos que se predominan las procedencias frecuentes en el caso de admisiones también que son los pedidos de erradicaciones entonces dónde se erradican y de esa manera poder trabajar en todo lo que es el tráfico que sucede que se coinciden en ciertos domicilios algunos gestores entonces de esa manera uno puede empezar a detectar ese tipo de patrones la frecuencia de los tránsitos de esa manera entender un poco la información no tan solo desde la búsqueda sino con la caracterización por ciertas métricas todo eso puede ser configurable obviamente con las fuentes que se van ingresando y aquí está lo que sería la dimensión de contenidos que me permiten entender todos los contenidos relacionados con lo que estoy buscando dónde están geolocalizados el sentimiento asociado las palabras frecuentes el análisis de sentimiento tiene que ver con si es positivo o negativo o neutro para saber y tener un termómetro de lo que se está hablando y en qué frecuencia y en qué momento se está hablando positivo o negativo eso permite también mejorar lo que es la calidad de servicio en los diferentes puntos de control migratorio uno puede por ejemplo en esto entender hay algo que les llamamos detección de tópicos que me permite entender de qué se está hablando acá por ejemplo lo que hicimos fue bajar algo un monitor relacionado con hoy que es buen jueves y de qué se está hablando las palabras relacionadas con lo que es buen jueves bueno, hay algunas que ya sabemos que son parte de las noticias diarias de Argentina como Vidal, Macri, Mañana, Silvestre parte de las noticias que están sucediendo pero eso nos permite también estar atentos y entender qué es lo que está pasando hay una parte que es interesante que tiene que ver con el hecho de poder dar de alta el ingresar conocimiento a la plataforma que significa esto de que uno desde la interfaz del usuario puede escribir lo que estoy buscando el patrón que vaya a ingresar si digo bueno, Uruguayos jóvenes masculinos entonces sobre eso luego de una forma muy fácil y muy ágil puede empezar a generar este tipo de reglas de la interfaz del usuario empezar a combinarla es de la jerarquía y eso es muy ágil porque está pensado justamente para un usuario que no es técnico entonces que tiene la gestión de conocimiento y que sabe lo que está buscando que conoce el negocio y de esa manera uno puede estar dinámicamente cambiando estas reglas o patrones que justamente en este tipo de ámbitos es importante tener esta agilidad para interactuar con la información eso es, desde lo que sería a grandes rasgos y muy rápidamente hay algo que les quería mostrar si yo... bueno, puede, bueno, Ruy González como dije anteriormente sobre esto yo puedo ver por ejemplo en este perfil puedo hablar de lo que les había mencionado antes que era la red de relaciones y entender cómo se relacionan cuáles son los perfiles relacionados directamente o indirectamente uno puede empezar a jugar también con este tipo de redes cuál es la relación que vincula a estos perfiles y de esa manera me permita entender cómo se conforma desde diferentes miradas la información que ya tenemos por eso es algo que a veces llamamos que hay oro en tu basura porque a veces uno no sabe todo la información que tiene porque no la está analizando que patrones pueden llegar a encontrar en tiempo real y sobre eso poder estar alertas eso es a grandes rasgos y un poco como para que se pueda entender todo esto que estuvo explicando Maxi cómo se transformaba en la aplicación y una de las cosas que permitió poder implementarlo obviamente fue la buena sinergia entre los diferentes equipos el equipo técnico, el equipo de analistas y justamente el hecho de que ha sido uno de los primeros proyectos iniciados con herramientas open source para hacer analítica avanzada y eso es algo importante y ahora vamos a ver desde el back cómo pudo llegar a hacerse esto justamente hay muchos enlatados a veces conocidos cómo se puede llevar adelante analítica de una manera sencilla y justamente con lo que es la plataforma OpenShift ahora Martín va a explicar un poco cómo fue posible yo les voy a contar un poco más de la parte técnica cómo hicimos la implementación el desafío en particular fue que en esta instalación de migración tenemos alrededor de 70 nodos distribuidos en 3 clusters que fue lo que nos permitió lograr este resultado final pero para poder tener ese punto empezamos al comienzo muchas de las ventajas de OpenShift que son estas tres que están acá el tiempo de despliegue, la complejidad, la arquitectura y también el servicio monitorio que podemos instalar en primer lugar el tiempo de despliegue era muy importante porque al principio en un proceso de ver un proyecto de analítica hay mucha incertidumbre muchas hipótesis que hacíamos sobre los datos y cómo necesitamos que sea la infraestructura lo que nos permitió OpenShift y la virtualización de RedHack fue poder escalar dinámicamente la infraestructura a medida que el proyecto iba avanzando no solamente eso sino que podíamos agregar nuevos nodos de OpenShift en cuestión de minutos lo cual era una gran ventaja y al trabajar con datos y al trabajar con algunas bases de datos distribuidas algo que generó mucho mucho valor era el punto de poder desplegar tecnologías distribuidas en pocos minutos por ejemplo, pudimos desplegar que ahora les voy a mostrar la continuación un Elastic Search un Cluster de Elastic Search de 18 nodos en cuestión de una hora, dos horas eso era gracias a que no necesitamos hacer ninguna configuración fina al principio sino simplemente necesitamos un Cluster no necesitamos poder indexar la información que teníamos para poder empezar a trabajar en segundo lugar, la complejidad de la arquitectura implicaba a través de estos tres Clusters junto OpenShift con Helm pudimos generar troubleshooting cuando teníamos un bug de las diferentes versiones de todos los microservicios que teníamos se había un problema, pudimos sacar una foto concreta y poder rastrear cuál era el componente que tenía un problema eso fue de mucha utilidad después ante la consolidación de diferentes fuentes de datos al hacer los agentes que generan las sesiones de importación que son los que te permiten agarrar la información de miraciones para poder indexarla también necesitamos la escalabilidad el escalamiento automático para poder mantener el ritmo con el volumen de datos que tiene migraciones y finalmente por esta parte el despliegue de microservicios de machine learning no solamente generar los modelos es importante sino también poder desplegarlos pero en la parte de generarlos era muy fundamental poder dar el acceso a los data scientists y a los analistas a notebooks que desplegábamos dentro del mismo Cluster que estaban en el mismo entorno para poder generar los modelos y validarlos en el mismo lugar no hay un proceso separado de analítica para generar esos modelos sino que estaban en la misma aplicación lo cual era los que nos permitían mucha velocidad de poder intercambiar con los datos para generar modelos que sean útiles finalmente, durante todo este proceso fue muy importante la parte del monitoreo porque teníamos muchas hipótesis que ibamos validando y para poder validar esas hipótesis necesitábamos poder entender que estaba pasando para entender que estaba pasando utilizábamos formateus para juntar métricas de todos los spots, de todos los nodes de cómo interactuaban estos entre ellos y de cómo estaban reaccionando las diferentes aplicaciones que fue lo que nos permitió, por ejemplo avanzar mucho e eliminar muchos cuellos de botella después esto prometejo juntado a las métricas Grafana te permitía visualizarlas ahora les voy a mostrar cómo se ve Grafana que es algo que todos los desarrolladores tienen acceso por ende no había un equipo de monitoreos separado del desarrollo sino que el mismo equipo de desarrollo podía buscar sus propias métricas ver que quería monitorear y a partir de ahí continuar su desarrollo y finalmente más de una cuestión preventiva podíamos generar alertas proactivas cuando veíamos que se estaba saturando cuando uno se caía podemos levantar una alerta y poder reaccionar con eso en el tiempo lo que les voy a mostrar ahora está bien este es uno de los proyectos, este es uno de los clásteres que tenemos en migraciones como pudimos desplegar todos estos microservicios de manera simple pero lo más importante acá son dos cosas, en primer lugar que Fuse en parte Fuse para hacer los conectores en las redes sociales pudimos desplegarlo como un contenedor dentro de Fuse para la versión que tiene para Expas lo cual te ahorra muchísimo tiempo porque a partir del mismo código que fuimos generando en cuestión de minutos podríamos tener una imagen corriendo en el mismo entorno lo cual agiliza mucho el proceso de desarrollo y también un cláster de Elasticsearch esto es lo que le digo que teníamos un cláster de 18 nodos ¿Está bien? que era simplemente escalar los pods no hacía falta configurar más que eso simplemente definí cuáles eran los master, cuáles eran los nodos clientes y cuáles eran los nodos que almacenaban los datos ahí está bien esto es lo que les decía que era sumamente ventajoso porque en un momento temprano no teníamos que hacer optimizaciones de Elasticsearch para empezar a trabajar después entramos en la parte de obtener más performance de la aplicación pero teníamos ese ventaje en el desarrollo y después por parte de monitoreo teníamos todas estas métricas Prometheus nos permite conseguir muchas métricas en diferentes niveles de diferentes componentes y para eso nos permite generar diferentes alarmas según la necesidad del momento para ver qué es lo que se está yendo qué es lo que tenemos con su botella que si hay algún problema de conectividad y finalmente todo esto es visualizable rápidamente y por los desarrolladores en los dashboard que pudimos crear con Grafana acá podemos ver todo el rendimiento de cláster podemos ver el rendimiento de los pods podemos ver el rendimiento de los nodos y en conjunto si tenemos que hacer algún troubleshooting que estaba pasando en el momento que haya pasado estos fueron los puntos claves que tuvimos durante el desarrollo que permitieron que llegáramos al punto que llegamos hoy pero la historia de alguna forma no termina acá así que ahora lo invito máximo nuevamente para que cuente cómo son los próximos pasos del proyecto muchas gracias Martín entre los próximos pasos además de estar trabajando con Api que como había comentado dentro de unos meses vamos a estar trabajando con PNR que es el Passenger Name Record que incluye toda la información de un pasajero que esté registrada en conjunto con la reserva de un vuelo si la persona registró un hotel, un auto, etc. también estamos trabajando mucho con el gobierno de los Estados Unidos para intercambiar una cantidad de restricciones conocer el estado de visas ahora estamos trabajando mucho con lo que es los aves o las autorizaciones de viajes electrónicas donde una persona que ya posee una visa de los Estados Unidos simplemente por ello puede llegar a acceder a entrar al país sin necesitar una visa consular argentina previo todos los controles que tienen todos en los demás casos alguna pregunta o algo que quieran saber espero que les haya gustado muchas gracias