3.2 Arquitectura propuesta
3.2.1 Servicios identificados a ofrecer
Parte importante de esta tesis es identificar los servicios de bibliotecas digitales que puede ser ofrecidos a través de la tecnología punto a punto, a continuación se presentan de manera muy general los que la arquitectura debe ofrecer:
• Almacenamiento local de una copia de la biblioteca digital contenida en PDLib (Digital Library Skeleton): Cada usuario tendrá una copia de su biblioteca digital dentro de su PDA, es decir, dentro de la aplicación que se encontrará en cada uno de los dispositivos móviles se contará con la estructura lógica de la biblioteca digital (biblioteca digital local) que se encuentra en los servidores de PDLib, en esta estructura se podrán observar las colecciones y documentos de manera lógica. Se refiere a manera lógica el hecho de que los documentos no necesariamente estarán en el dispositivo móvil, sin embargo se tendrá una referencia al mismo, de tal manera que el usuario pueda saber la existencia de un documento dentro de alguna colección.
• Compartir colecciones de la biblioteca digital (vistas): A partir de la estructura lógica de la biblioteca digital contenida en el dispositivo móvil, el usuario puede crear vistas de ésta (básicamente una vista es una colección) y compartirlas para que otros usuarios vean lo que hay en la vista compartida (otras colecciones y documentos). Las vistas son enviadas y recibidas para consulta de lo que hay en otras bibliotecas y solo se comparte la estructura lógica de la vista, es decir, en este servicio no hay intercambio de documentos. Una vista como ya se mencionó no es más que un subconjunto de la biblioteca digital local.
• Compartir documentos entre puntos: Dentro de los dispositivos móviles se pueden encontrar algunos documentos físicos, que fueron traídos del servidor de datos de PDLib. Dentro de la copia de la estructura de la biblioteca digital local, se tienen también, como ya se mencionó, los documentos de manera lógica, sin embargo existe un metadato que le indica al usuario si el documento existe en la PDA o solo se encuentra en el servidor. Si el documento está en el dispositivo éste puede ser enviado a algún otro usuario del sistema punto a punto. Cuando un usuario recibe un documento, éste puede seleccionar la colección dentro de su copia local de la
biblioteca donde se almacenará. Cabe mencionar que si el documento no se encuentra físicamente en el dispositivo móvil únicamente se enviaran sus metadatos • Generación de un identificador único por nodo o punto: Debido a que las
direcciones IP o direcciones de red de los puntos conectados son muy variables, es necesario que cada uno de ellos sea identificado de manera única.
• Servicio de reconciliación por pérdida de conexión: Dentro de la comunicación en dispositivos móviles existe el problema de las frecuentes desconexiones, por tal motivo se debe contar con un mecanismo de reconciliación de información para cuando esto ocurra.
• Búsquedas de recursos en la red punto a punto: Todos los puntos conectados a la red punto a punto podrán realizar búsquedas sobre recursos de los demás puntos a través del uso del punto privilegiado y del uso de un DBMS. Esta funcionalidad hereda algunas ideas del proyecto PeerDB [16], PeerDB es un sistema de compartición de datos distribuido, en donde al igual que éste proyecto hacen uso de una base de datos, sin embargo dicha base de datos se encuentra del lado de cada nodo, y las búsquedas se hacen en cada uno de ellos a través del uso de agentes móviles, es decir que hacen uso de un esquema totalmente descentralizado en donde no se hace uso de algún servidor. En el proyecto de P2PDLib no es posible tener un servidor de base de datos del lado de cada nodo debido a que son dispositivos móviles y tienen recursos muy limitados.
• Chat: Todos los usuarios tienen la funcionalidad de poder enviar y recibir mensajes de texto entre ellos, de tal forma que puedan mantener una conversación tipo chat. En el proyecto PDLib se ofrecen algunos servicios de bibliotecas digitales que requieren hacer uso de algunos sus objetos, ya sea para su modificación o para su consulta, por ejemplo obtener un documento o modificar una colección. Por otro lado, los servicios que se ofrecen en este trabajo también requieren hacer uso de algunos de los objetos de la biblioteca digital. En PDLib ya existen algunos objetos clave para una biblioteca digital, sin embargo para este proyecto se agregaron algunos y se agregaron por supuesto algunos servicios nuevos propios de P2P que hacen uso de ellos.
En la figura 3.4 se puede observar una tabla con los nuevos objetos creados en este trabajo de tesis, así como los nuevos servicios que se ofrecerán sobre ellos. Los objetos y servicios subrayados en negritas son nuevos, es decir no existían en PDLib, así mismo el servicio en itálicas tampoco existía en PDLib, pero no es implementado en este proyecto, sin embargo si es utilizado, por lo que se hace distinción.
Objetos Servicios
Digital Libray Skeleton Retriveral, Update and Deletion
Library Creation, Retrieval, Update and Deletion.
Collection View Creation, Update and Deletion, P2PSharing. Collection Creation, Retrieval, Update, Deletion, Copy and
Move.
Document Submision, Retrieval, Update, Deletion, Send,
Search, Email, and Copy, P2PSharing
Document Format Submision, Retrieval, Update, Deletion and Convertion
Metadata Set Creation, Retrieval, Update, Deletion, and
Get/Set Collection Metadata Set
Document Metadata Update Document Metadata, Backup
Document Metadata in device, P2PSharing.
Permission Get/Set Collection Permission and Get/Set
Document Permission
Figura 3.4 Servicios de PDLib y P2PDLib