Un pipeline de ejecución distribuida para la agrupación de trayectorias basado en una relación de similitud difusa
Autores: Maguerra, Soufiane; Boulmakoul, Azedine; Karim, Lamia; Badir, Hassan
Idioma: Inglés
Editor: MDPI
Año: 2019
Acceso abierto
Artículo científico
2019
Un pipeline de ejecución distribuida para la agrupación de trayectorias basado en una relación de similitud difusa
Categoría
Ingeniería y Tecnología
Subcategoría
Ingeniería de Software
Palabras clave
Dispositivos
Trayectorias
Agrupamiento
Sistemas distribuidos
Spark
Rendimiento
Licencia
CC BY-SA – Atribución – Compartir Igual
Consultas: 28
Citaciones: Sin citaciones
La proliferación de dispositivos de seguimiento tanto en interiores como en exteriores ha dado lugar a una gran cantidad de datos espaciales. Cada objeto puede ser descrito por varias trayectorias que, una vez analizadas, pueden conducir a un conocimiento significativo. En particular, el análisis de patrones mediante la agrupación de trayectorias genéricas puede ofrecer información sobre objetos que comparten los mismos patrones. Sin embargo, los enfoques de agrupamiento secuencial no logran manejar grandes volúmenes de datos. Por lo tanto, es necesaria la implementación de sistemas distribuidos para poder inferir conocimiento en un intervalo de tiempo trivial. En este documento, detallamos un eficiente, escalable y distribuido proceso de ejecución para agrupar trayectorias en bruto. El agrupamiento se logra a través de una relación de similitud difusa obtenida por el cierre transitivo de una relación de proximidad. Además, el proceso de ejecución está integrado en Spark, implementado en Scala y aprovecha las bibliotecas Core y Graphx utilizando Conjuntos de Datos Distribuidos Resilientes (RDD) y procesamiento de gráficos. Además, se ha implementado una nueva lógica de particionamiento simple pero muy eficiente en Spark y se ha integrado en el proceso de ejecución. El objetivo detrás de esta lógica es distribuir equitativamente la carga entre todos los ejecutores teniendo en cuenta la complejidad de los datos. En particular, resolver el problema de equilibrio de carga ha reducido de manera importante el tiempo de ejecución convencional. La evaluación y el rendimiento de todo el proceso distribuido han sido analizados manejando el conjunto de datos de trayectorias GPS del proyecto Geolife.
Descripción
La proliferación de dispositivos de seguimiento tanto en interiores como en exteriores ha dado lugar a una gran cantidad de datos espaciales. Cada objeto puede ser descrito por varias trayectorias que, una vez analizadas, pueden conducir a un conocimiento significativo. En particular, el análisis de patrones mediante la agrupación de trayectorias genéricas puede ofrecer información sobre objetos que comparten los mismos patrones. Sin embargo, los enfoques de agrupamiento secuencial no logran manejar grandes volúmenes de datos. Por lo tanto, es necesaria la implementación de sistemas distribuidos para poder inferir conocimiento en un intervalo de tiempo trivial. En este documento, detallamos un eficiente, escalable y distribuido proceso de ejecución para agrupar trayectorias en bruto. El agrupamiento se logra a través de una relación de similitud difusa obtenida por el cierre transitivo de una relación de proximidad. Además, el proceso de ejecución está integrado en Spark, implementado en Scala y aprovecha las bibliotecas Core y Graphx utilizando Conjuntos de Datos Distribuidos Resilientes (RDD) y procesamiento de gráficos. Además, se ha implementado una nueva lógica de particionamiento simple pero muy eficiente en Spark y se ha integrado en el proceso de ejecución. El objetivo detrás de esta lógica es distribuir equitativamente la carga entre todos los ejecutores teniendo en cuenta la complejidad de los datos. En particular, resolver el problema de equilibrio de carga ha reducido de manera importante el tiempo de ejecución convencional. La evaluación y el rendimiento de todo el proceso distribuido han sido analizados manejando el conjunto de datos de trayectorias GPS del proyecto Geolife.