Transparenz (Computersystem)

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Unter Transparenz versteht man im Zusammenhang mit der Computer- und Netzwerktechnik, dass ein bestimmter Teil eines Systems zwar vorhanden und in Betrieb, aber ansonsten „unsichtbar“ ist und daher vom Benutzer nicht als vorhanden wahrgenommen wird.

So spricht man z. B. von einem transparenten Proxyserver, wenn dieser nicht explizit vom Benutzer angegeben werden muss, sondern ohne sein Zutun und somit ohne erkennbar zu sein, seinen Aufgaben nachkommt. Auch ist z. B. der Transport von Telefongesprächen durch die weltweiten Daten- und Telefonnetze für den Endkunden weitgehend transparent, da er im Regelfall nicht feststellen kann und es für ihn nicht wichtig ist, ob sein Gespräch über Satelliten, Unterseekabel, Richtfunk oder herkömmliche Telefonkabel geroutet wird.

Das Gegenteil von Transparenz bei Middleware ist die Awareness.

Man unterscheidet:

  • Ortstransparenz (Positionstransparenz): Der Ort, an dem sich ein Dienst oder eine Ressource befindet ist dem Benutzer nicht bekannt. Der Zugriff erfolgt über einen bestimmten Namen, der allerdings keine Ortsinformationen enthält.
  • Zugriffstransparenz: Der Zugriff auf die Ressource erfolgt immer auf die gleiche Art und Weise, egal ob diese sich lokal oder entfernt im Netz befindet.
  • Persistenztransparenz: Der Benutzer braucht nicht zwischen persistenten und transienten Daten zu unterscheiden. Explizites Abspeichern bzw. Öffnen von Dateien entfällt somit.
  • Nebenläufigkeitstransparenz: Es ist mehreren Benutzern möglich, gleichzeitig auf die Dienste und Ressourcen zuzugreifen. Das System sorgt dafür, dass exklusive Zugriffe möglich sind, und Daten ggf. synchronisiert bzw. repliziert werden.
  • Skalierungstransparenz: Das System soll flexibel bei der Erweiterung oder dem Austausch von Komponenten sein. Systempflege oder Erweiterung soll ohne Ausfall möglich sein.
  • Migrationstransparenz: Das Verschieben von Objekten im Verteilten System soll für den Benutzer und die Anwendungen unbemerkt geschehen.
  • Prozesstransparenz: Programme können beliebig zwischen den Knoten des Verteilten Systems verschoben werden. Idealerweise sorgt das System selbst für die Verschiebung von Prozessen auf weniger ausgelastete Knoten. Der Name und Ausführungsstatus eines Programmes darf sich dabei nicht ändern.
  • Leistungstransparenz: Den Benutzern steht die volle Leistung des Gesamtsystems zur Verfügung. Das System sorgt selbst dafür, dass die Aufgaben auf die verschiedenen Knoten optimal verteilt werden.
  • Replikationstransparenz: Aus Performancegründen kann es mehrere Kopien derselben Ressource geben. Das System sorgt für die transparente Replikation der darin vorgenommenen Änderungen.
  • Fragmentierungstransparenz: Die Teilbestandteile einer Ressource können an verschiedenen Orten gespeichert sein.
  • Fehler- und Ausfalltransparenz: Beim Ausfall eines Systems oder einer Netzwerkverbindung sollte der Anwender weiterarbeiten können, wenn auch mit verminderter Leistung.
  • Sprachtransparenz: Die Kommunikation zwischen den Komponenten ist unabhängig von der jeweils verwendeten Programmiersprache.

Siehe auch[Bearbeiten]