Grundlagen und Architektur verteilter Systeme (SID)

Eingeordnet in Informatik

Geschrieben am in Deutsch mit einer Größe von 24,38 KB

Was ist ein verteiltes System?

Ein verteiltes System ist ein Informationssystem, in dem Funktionen über verschiedene Arbeitsbereiche eines Netzwerks gemeinsam genutzt werden. Ziel ist es, die organisatorischen Vorgaben zu erfüllen, die das Informationssystem misst.

Elemente eines SID (System Informations-Design)

  • Prozess-Plattform: Verantwortlich für die Bereitstellung materieller Ressourcen und der Basis-Software (Mainframes, PCs, PDAs, Telefone).
  • Konnektivitätskomponenten: Zuständig für die Kommunikation und Integration der Plattformelemente (Netzwerke und Kommunikation).
  • Datenspeicherung: Die Daten selbst sowie die Manager der Speicherorte.
  • Software-Elemente: Beinhaltet Anwendungen, Dienste und Schnittstellen. In diesem Stadium werden Architekturen wie zentrale Systeme, Batch-, Transaktions-, Client/Server- oder Web-Anwendungen integriert.
  • Sicherheit: Umfasst die gesamte logische Sicherheit der Daten und Informationen.
  • Management-System: 1. Muss in die Führungsressourcen integriert sein. 2. Sollte das Zusammenleben verschiedener Management-Zentren ermöglichen.
  • Bedienfeld: Ein wesentlicher Teil des Managements, unterteilt in:
    • Zielverfolgung: Automatisierte Echtzeit-Informationen für Manager zum Vergleich von Ist-Werten und Prognosen.
    • Betrieb: Zentralisierte Koordination von Verwaltung, Überwachung und Systembetrieb.

Design verteilter Systeme

Das Design umfasst die Erstellung von Softwareanwendungen mit Diensten, die eine transparente Verbindung zu Prozess-Plattformen und Datenspeichern herstellen. Verteilte Systeme müssen:

  1. An den Geschäftszielen des Unternehmens ausgerichtet sein.
  2. Die Effektivität und Effizienz steigern.
  3. Höchste Leistung bei niedrigsten Kosten in den Computerstrukturen ermöglichen.

Ziele des Systemdesigns

  • Ausrichtung von Technologie und Wirtschaft.
  • Transparenz und Toleranz.
  • Kontinuität der Betriebsvorgänge.

Enterprise Architecture

Die Enterprise Architecture ist der Fahrplan für die Entwicklung von Wirtschaft und Technik. Der Strategische Plan erfasst alle Voraussetzungen für die Entwicklung und das Management.

Die fünf Perspektiven der Architektur

  1. Business (Geschäft): Beschreibt die Arbeitsweise des Unternehmens, inklusive Drittbeziehungen und Entwicklungsplänen.
  2. Anwendung: Definiert Enterprise-Anwendungen und Dienste zur Unterstützung von Geschäftsprozessen.
  3. Information: Definiert Dateninhalte, Begriffe (Dictionary), Datenmodelle und Management-Strategien.
  4. Management: Definiert Einschränkungen und Policies für die Bewirtschaftung der Plattform.
  5. Technologie: Schlägt Basis-Software, Hardware und Netzwerke vor.

Distributed Architecture und ihre Komponenten

Ein modernes Design basiert auf Diensten. Ein Dienst ist ein Mechanismus, der den transparenten Zugriff auf Netzwerkressourcen ermöglicht.

Struktur eines Service

  • Spezifikation: Definiert Funktionalität und Daten.
  • Form: RPC, SOAP, Queues, ODBC.
  • Nutzung: Asynchron, synchron oder getrennt.

Client/Server-Systeme

Die Arbeit wird in spezialisierte Programme aufgeteilt: Clients rufen Dienste auf, Server bieten diese an.

  • Träger (Carriers): Verantwortlich für den Nachrichtentransport.
  • Plattformen: Menge aus Hardware, Betriebssystemen und Netzwerken.
  • Prozess: Ein Dialog zwischen Client und Server (Request/Response).

Voraussetzungen für verteilte Architekturen

  • Multi-Tasking-Systeme: Gleichzeitige Ausführung mehrerer Programme.
  • Internet-Plattformen: Dienste werden über Netzwerke unabhängig von der Client-Plattform geliefert.
  • Kommunikationssysteme: Austausch von Nachrichten (z. B. via TCP/IP).

Merkmale des Client/Server-Konzepts

  • Spezialisierung der Dienste und Transparenz der Lage.
  • Unabhängigkeit von Hardware und Betriebssystemen.
  • Horizontale und vertikale Skalierbarkeit sowie Wiederverwendbarkeit.

Infrastruktur und Middleware

Die Infrastruktur ist die physische Realisierung des Systems (Hardware, Software, Sicherheit, Internet). Der Träger nutzt Mechanismen für Benachrichtigungen und Transport.

Middleware-Funktionen

Die Middleware verteilt Daten und Prozesse über Netzwerke. Ihr Hauptziel ist Transparenz. Man unterscheidet zwischen statischer (beim Booten) und dynamischer Lage (Aktivierung im laufenden Betrieb).

Protokolle und Cluster-Systeme

Protokolle sind Regeln für die Kommunikation. Sie agieren auf High-Level (Anwendungen) und Low-Level (Signale).

Was ist ein Cluster?

Ein Cluster besteht aus zwei oder mehr gekoppelten Computern, die wie ein einziges System wirken. Dies erhöht die Fehlertoleranz und Verfügbarkeit erheblich.

SAN (Storage Area Networks)

Ein dediziertes Glasfasernetz zur Verbindung von Servern und Speicherelementen. Vorteile sind hohe Leistung, Skalierbarkeit und der Verzicht auf Single Points of Failure.

Middleware-Architektur und Interoperabilität

Image

  • Transport Stack: Umfasst die End-to-End-Kommunikationsprotokolle.
  • Netzwerk-Betriebssystem: Erweitert lokale Optionen auf Netzwerkgeräte.
  • Distributed System Administrator (DSM): Übernimmt das Management des verteilten Systems.

Interoperabilität vs. Interaccesibilität

  • Interaccesibilität: Systeme sind verbunden, aber nicht transparent für Programme.
  • Interoperabilität: Programme können transparent auf Systeme zugreifen. Dies wird durch den Kauf von Middleware oder Migration erreicht.

Vorteile gegenüber zentralisierten Systemen

  1. Besseres Preis-Leistungs-Verhältnis.
  2. Höhere Geschwindigkeit durch parallele Verarbeitung.
  3. Inhärente Unterstützung verteilter Dienste (E-Mail, Web, P2P).
  4. Erhöhte Zuverlässigkeit und Verfügbarkeit.

Herausforderungen und Problematiken

  • Kommunikationsprobleme (Verlust von Nachrichten, Sicherheitsrisiken).
  • Höhere Wahrscheinlichkeit von Teilausfällen.
  • Heterogenität der Knoten (verschiedene Hardware/Software).

Designziele für verteilte Dienste

  • Transparenz: Ort, Migration, Replikation und Nebenläufigkeit bleiben dem Nutzer verborgen.
  • Heterogenität: Unterstützung verschiedener Systeme (z. B. via Java Virtual Machines).
  • Zuverlässigkeit: Verfügbarkeit, Fehlertoleranz und Integrität.
  • Skalierbarkeit: Das System muss bei steigender Knotenzahl stabil bleiben.

Wettbewerbsvorteile durch SID

  • Kostensenkung: Effizientere Prozesse und geringere Marktzutrittsschranken.
  • Differenzierung: Einzigartige Dienstleistungen über das Internet.
  • Strategische Allianzen: Integration von Drittanbietern (z. B. Zahlungsdienstleister).
  • Kundenbindung: Erleichterter Zugang zu Transaktionen und Informationen.

Verwandte Einträge: