Tupel Space

Autor: Robert Simon
Erstelldatum: 24 Juni 2021
Aktualisierungsdatum: 24 Juni 2024
Anonim
BISSA - A Scalabale Tuple Space
Video: BISSA - A Scalabale Tuple Space

Inhalt

Definition - Was bedeutet Tuple Space?

Ein Tupelraum ist eine Ausführung des assoziativen Speichermodells für verteiltes / paralleles Rechnen. Es bietet eine Bibliothek von Tupeln, auf die gleichzeitig zugegriffen werden kann. Tupel sind Begriffe mit null oder mehr Argumenten und einem Schlüssel.


Die Auflistung von Tupeln unterstützt einige grundlegende Operationen, z. B. das Hinzufügen eines Tupels zum Space (Schreiben) und das Entfernen eines Tupels aus dem Space (Nehmen). Die Tupel-Sammlung wird über ein Netzwerk von mehreren Tupel-Space-Servern aufbewahrt und verwaltet. Mehrere Threads auf einem oder mehreren Computern greifen gleichzeitig auf den Speicherplatz zu. Einige fügen Tupel zum Raum hinzu, während andere sie in einem Prozess entfernen, der als Tafelmetapher bezeichnet werden kann.

Eine Einführung in Microsoft Azure und die Microsoft Cloud | In diesem Handbuch erfahren Sie, worum es beim Cloud-Computing geht und wie Microsoft Azure Sie bei der Migration und Ausführung Ihres Unternehmens aus der Cloud unterstützen kann.

Techopedia erklärt Tuple Space

Tupelräume sind die Theorie, auf der die Linda-Sprache basiert. Tuple-Space-Implementierungen werden auch für Java (JavaSpaces), Lua, Lisp, Python, Prolog, Ruby, .NET, Smalltalk und Tcl entwickelt.

Die Tupel-Space-Abstraktion ist eine effektive Wahl für die Kapselung in einem Modul. Es ist eine nützliche Struktur mit einer genau definierten Schnittstelle. Daher kann es wiederverwendet und modularisiert werden.

Einige der vom Tupel-Space unterstützten Grundoperationen sind:
  • write (Tupel): Fügt dem Space ein Tupel hinzu
  • take (template tuple): Wird verwendet, um eine assoziative Suche nach einem Tupel durchzuführen, das der Vorlage entspricht. Einmal gefunden, wird das Tupel aus dem Space gelöscht und dann zurückgebracht.
  • waitToTake (Vorlagentupel): Wird verwendet, um eine assoziative Suche nach einem Tupel durchzuführen, das mit der Vorlage übereinstimmt. Es wird geblockt, bis eine Übereinstimmung gefunden wurde. Anschließend wird das übereinstimmende Tupel aus dem Feld entfernt und zurückgebracht.
  • read (template tuple): Wie "take", mit der Ausnahme, dass das Tupel nicht aus dem Tupelraum entfernt wird
  • waitToRead (Template-Tupel): Wie "waitToTake", mit der Ausnahme, dass das Tupel nicht aus dem Tupel-Space entfernt wird
  • scan (template tuple): Entspricht dem oben erläuterten Befehl "read", mit der Ausnahme, dass eine vollständige Sammlung übereinstimmender Tupel zurückgegeben wird
  • count (template tuple): Entspricht "scan" (siehe oben) mit der Ausnahme, dass die Anzahl der übereinstimmenden Tupel anstelle der Auflistung der Tupel selbst zurückgegeben wird.
Einige Beispiele für Tuple-Space-Implementierungen sind unter anderem Apache River, das Blitz-Projekt, der Fly Object Space, GigaSpaces und Linda in a Mobile Environment (LIME).