Particionado de Ontologías

Sofia2 unifica el mundo IoT con el mundo BigData, con su modelo de trabajo basado en el uso de un repositorio de tiempo Real (MongoDB) que vuelca la información a un repositorio Histórico (HDFS) cuando el primero no puede manejar el volumen de información.


Cuando los datos son volcados en el repositorio histórico, se disponibilizan como una tabla en Hive, con el tiempo el volumen generado en el repositorio de Tiempo Real, puede ser extremadamente elevado e  incluso complicado de manejar para la infraestructura BigData.


La operación de E/S es el principal cuello de botella de rendimiento para ejecutar consultas de Hive. El rendimiento se puede mejorar si se puede reducir la cantidad de datos que deben leerse. De forma predeterminada, las consultas de Hive examinan tablas completas de Hive. Esto es excelente para las consultas como recorridos de tabla; sin embargo, para las consultas que sólo necesitan analizar una pequeña cantidad de datos (por ejemplo, consultas con filtrado), esto crea una sobrecarga innecesaria.


Un modo de organizar la información mejorando las operaciones de E/S y optimizando los tiempos de acceso es mediante el uso de particiones.


La creación de particiones de Hive se implementa mediante la reorganización de los datos en nuevos directorios teniendo cada partición su propio directorio.


Ilustremos con un ejemplo, supongamos que las consultas que realizamos sobre un volumen muy grande de información siempre son discriminado el sexo y luego el país de residencia, en este supuesto podríamos crear dos particiones uno por sexo donde en disco se crearán dos directorio uno para Hombres y otro para Mujeres y  dentro de cada uno de estos directorios otros subdirectorios con el nombre de cada país de residencia.


Esto crea una estructura en forma de Árbol, y nos permite utilizar las capacidades de búsqueda de estas estructuras de datos. Debemos ser conscientes que si bien el rendimiento es muy superior cuando buscamos datos a través de los filtros basados en las particiones el sistema es altamente ineficiente si realizamos búsquedas que no hagan uso de estos filtros, por ejemplo si buscamos por nombre sin buscar por sexo y país de residencia.

presentacion1


También debemos prestar una especial atención a la organización de la información sería mucho más óptimo crear la primera partición por Pais y luego por Sexo, al tener el árbol más equilibrado.

Algunas consideraciones de particiones:

 

  • No cree particiones insuficientes: la creación de particiones en columnas con solo unos pocos valores puede generar muy pocas particiones. Por ejemplo, la creación de particiones por sexo solo creará dos particiones (hombres y mujeres); por tanto, solo se reduce la latencia a un máximo de la mitad.

 

  • No cree particiones excesivas: en el otro extremo, la creación de una partición en una columna con un valor único (por ejemplo, userid) hará que varias particiones provoquen un gran esfuerzo en el namenode del clúster ya que tendrá que controlar la gran cantidad de directorios.

 

  • Evite el sesgo de datos: elija su clave de creación de particiones con cuidado de manera que todas las particiones tengan el mismo tamaño. Un ejemplo es que la creación de particiones enEstado puede hacer que el número de registros en California 30 veces superior al de Vermont debido a la diferencia en la población.

Sofia2 permite la configuración del particionado de las ontologías. A través del menú mis ontologías.

imagen-1El usuario podrá decidir si la ontología debe almacenarse particionada en la BDH de Sofia2 y en tal caso con que campos.

 

El asistente nos permite seleccionar aquellos campos por los que queremos particionar, uno o varios.

 

El proceso de particionado puede ser costoso en función de los datos registrados en la BDH para esa ontología, durante ese tiempo desaparecerá el icono de configuración del participando

Particionado de Ontologías

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s