Espacio de tupla


Un espacio de tupla es una implementación del paradigma de memoria asociativa para la computación paralela / distribuida. Proporciona un repositorio de tuplas al que se puede acceder simultáneamente. Como ejemplo ilustrativo, considere que hay un grupo de procesadores que producen piezas de datos y un grupo de procesadores que usan los datos. Los productores publican sus datos como tuplas en el espacio y los consumidores luego recuperan datos del espacio que coinciden con un patrón determinado. Esto también se conoce como la metáfora de la pizarra . El espacio de tuplas puede pensarse como una forma de memoria compartida distribuida .

Los espacios de tupla fueron la base teórica del lenguaje Linda desarrollado por David Gelernter y Nicholas Carriero en la Universidad de Yale en 1986.

También se han desarrollado implementaciones de espacios de tuplas para Java ( JavaSpaces ), Lisp , Lua , Prolog , Python , Ruby , Smalltalk , Tcl y .NET Framework .

Object Spaces es un paradigma para el desarrollo de aplicaciones informáticas distribuidas . Se caracteriza por la existencia de entidades lógicas, denominadas espacios de objetos . Todos los participantes de la aplicación distribuida comparten un espacio de objetos . Un proveedor de un servicio encapsula el servicio como un Objeto y lo coloca en el Espacio de Objetos . Los clientes de un servicio luego acceden al espacio de objetos , averiguan qué objeto proporciona el servicio necesario y el objeto atiende la solicitud.

Los espacios de objetos , como paradigma informático, fueron propuestos en la década de 1980 por David Gelernter de la Universidad de Yale . Gelernter desarrolló un lenguaje llamado Linda para apoyar el concepto de coordinación global de objetos.

El espacio de objetos se puede considerar como un repositorio virtual, compartido entre los proveedores y los que acceden a los servicios de red, que a su vez se abstraen como objetos. Los procesos se comunican entre sí utilizando estos objetos compartidos, actualizando el estado de los objetos cuando sea necesario.