• No results found

MTSCH Protocol for Mobile IoT Constrained Devices

Chapter 5. Mobility Aware Scheme for IEEE 802.15.4e Timeslotted

5.4 MTSCH Protocol for Mobile IoT Constrained Devices

Está claro que ciertos datos deben ser comunes, y tener los mismos valores, en cualquier base de datos en los que se encuentren. Volvamos al ejemplo anterior, los datos identificativos de un cierto cliente: Nombre, Apellidos, DNI, Teléfono, Localidad, Provincia, etc., deben ser los mismos, cualquiera que sea el inventario. Es posible, por ejemplo, que en algún sistema se utilice el nombre completo de la Provincia en la que reside el cliente, y en otro se utilice únicamente una abreviatura. No nos confundamos, en cualquier caso estamos hablando de una provincia, y las provincias son siempre las mismas. Si una vez usamos el nombre completo y otra vez la abreviatura eso quiere decir que debemos almacenar ambos datos por separado como dos atributos de esa entidad. Pero los valores de las provincias deben ser los mismos en todos los sistemas.

que todos estos datos, comunes a todos los sistemas, residan en un repositorio único, centralizados todos en un único sistema;

o bien, que los datos se distribuyan entre todos los sistemas, teniendo cada sistema únicamente responsabilidad sobre un subconjunto de esos datos.

Figura 23: Datos comunes centralizados

La primera alternativa, la centralización de datos, podría parecer en teoría la más idónea. Los datos comunes residirían en un único repositorio, sin posibilidad de que se produzcan desalineamientos de datos entre varios sistemas, porque precisamente los datos residen en un único lugar. Ese lugar sería un sistema especializado únicamente en Inventario de datos. Sería un sistema independiente del resto de sistemas de gestión de la operadora, y su misión sería tener el inventario de todos los datos comunes y disponibilizarlo al resto de sistemas. Siguiendo con el ejemplo, una tabla con el inventario de todos los clientes de una compañía se consideraría uno de esos datos comunes. Dicha tabla residiría en nuestro sistema de Inventario Centralizado, y cualquier otro sistema que necesitara consultar o actualizar algún cliente o algún dato de algún cliente, deberá conectarse con el sistema de Inventario Centralizado y enviar ahí su petición de transacción.

Ahora bien, la centralización de los datos en un único sistema implica que este sistema va a recibir una gran cantidad de peticiones, tanto de consulta como de actualización de datos, desde el resto de sistemas de la operadora que tengan necesidad de usar esos datos comunes. El sistema de Inventario Centralizado debe ofrecer unos tiempos de respuesta muy cortos ante cualquier solicitud de cualquier sistema externo. Evidentemente también debe garantizar el bloqueo de los datos, de manera que dos sistemas no puedan actualizar a la vez el mismo dato en el inventario. Por supuesto que también debe disponer de una política de copias de seguridad de los datos, puesto que se supone que posee datos únicos que no están replicados en ningún otro sistema.

Resumiendo, en un sistema con un Inventario Centralizado de datos comunes, tendríamos como principal ventaja que es imposible el desalineamiento de esos datos comunes, y como principal desventaja que es sistema tiene unos requerimientos muy grandes de velocidad de respuesta y capacidad de procesamiento.

En la medida que la tecnología va avanzando cada vez disponemos de redes más rápidas y sistemas con mayor capacidad de procesamiento. Sin embargo si el entorno del que disponemos no soporta la instalación de una solución centralizada, deberíamos optar por la alternativa distribuida. En esta alternativa, en lugar de construir un único inventario maestro poseedor de todos los datos comunes, se trataría de distribuir esa información entre diferentes sistemas. Cada sistema se constituiría como el inventario maestro de un subconjunto de los datos comunes (sería el subconjunto propio responsabilidad de ese sistema). Por ejemplo, parece claro que la tabla con el inventario de clientes de la compañía debería residir en un sistema más comercial, cuya misión fuera la gestión de la relación con los clientes. Por el contrario una tabla con los puertos libres de los equipos que hay instalados en la red debería residir en el inventario de un sistema de gestión de elementos de red, puesto que esa es su responsabilidad. Con este esquema obtenemos una división de los datos de los inventarios, pudiendo decir que cada inventario de cada sistema es el inventario “maestro” de un cierto conjunto de datos. Así pues, cuando cualquier sistema necesite acceder a un cierto dato, deberá dirigir una petición al inventario maestro que posea ese dato (para lo cual deberá conocer la ubicación de ese inventario si es que no está en ese mismo sistema).

Figura 24: Datos comunes distribuidos

En el esquema distribuido se necesita un directorio de ubicación de datos, es decir un conocimiento compartido, entre todos los sistemas/inventarios, de dónde reside cada dato, o sea de cuál es el sistema inventario maestro de cada uno de los conjuntos de datos que se manejan entre todos. Si un sistema A necesita consultar un dato que no reside en su propio inventario, tendrá primero que

consultar la información del directorio de ubicación de datos para saber dónde consultar el dato, el cual podrá residir en otro sistema B; y entonces el sistema A realizará su petición de consulta de datos a ese sistema B.

Al igual que en el esquema centralizado, en el distribuido también conseguimos que los datos no queden desalineados, ya que sólo existe un inventario maestro de cada conjunto de datos. Lo que se consigue es no sobrecargar de peticiones de consulta o actualización un único sistema, ya que la información está distribuida en varios sitios diferentes. La desventaja es la necesidad del directorio de ubicación de datos, el cual debe estar correctamente actualizado en cada momento para que no se pierda ninguna solicitud de información sobre los inventarios.

En cualquier caso, en este punto hemos hablado varias veces de datos “comunes”. En los inventarios de los diferentes sistemas de gestión también existirán datos “no comunes”, es decir, datos específicos de cada sistema y que sólo son usados en ese sistema. Estos datos no necesitan estar centralizados ni estar disponibles al resto de sistemas ya que son datos propios de un único sistema. Desde este punto de vista estos datos podrían residir perfectamente en un inventario propio de ese sistema sin por ello perjudicar el diseño de la solución global de gestión en la compañía.