Новый документ (3).pdf
Document Details
Uploaded by FirstRateBinary
Tags
Related
- College of Computer Science Information Systems Department 2024 PDF
- What Is an Information System PDF
- PPT CSD102 Data Science Session 1 and 2_Shefali Naik.pdf
- Information Systems Introduction PDF
- Information Systems Concepts PDF
- Fundamentals Of Computing And Information Systems - Chapter 3: Understanding Data - PDF
Full Transcript
VORLESUNG 1 Was sind Daten? - Daten sind Informationen, die in einer strukturierten oder unstrukturierten Form vorliegen und zur Verarbeitung, Speicherung oder Übertragung verwendet wer...
VORLESUNG 1 Was sind Daten? - Daten sind Informationen, die in einer strukturierten oder unstrukturierten Form vorliegen und zur Verarbeitung, Speicherung oder Übertragung verwendet werden können. - Daten sind auch Angaben, (Zahlen-)Werte oder formulierbare Befunde,die durch Messung, Beobachtung u. a. gewonnen wurden - [Mess-]Daten liegen für gewöhnlich entweder numerisch oder kategorial vor - Daten in Datenbanken liegen häufig auch als freier Texteintrag vor Kategorisierung von Daten Strukturierte Daten: sind Daten, die in einem festgelegten Format organisiert sind, wie z.B. Tabellen in einer Datenbank. ( Telefonbücher, Adresslisten ) Unstrukturierte Daten: sind Daten, die kein festgelegtes Format oder Schema haben, wie z.B. Textdokumente oder Digitale Bilder. Semistrukturierte Daten: sind Daten, die zwar eine gewisse Struktur aufweisen, aber nicht in ein striktes Schema passen, wie z.B. XML- oder JSON-Daten. ( Produktkataloge, Patientenakte ) Persistente Daten: sind Daten, die dauerhaft gespeichert und über Systemneustarts hinweg erhalten bleiben. ( Persistent = dauerhaft, Gespeicherte Daten ) Transiente Daten: sind Daten, die nur vorübergehend existieren und nach der Verarbeitung oder einem Systemneustarts verloren gehen. (Transient = flüchtig, übergangsweise, Temporäre Daten) Speichern von Daten in Dateien Nachteile der Speicherung in Dateien: Redundanz: ( Überflüssige Information → Information, die mehrfach vorhanden ist ) Durch die freie Gestaltung von Informationsspeicherung in Dateien passiert es schnell, dass Dinge mehrfach gespeichert werden. Redundanz bezeichnet das mehrfache Vorhandensein derselben Daten in einem Datenspeicherungssystem, was zu unnötigem Speicherverbrauch führen kann. (z.B. Die Adresse einer Kundin steht in mehreren Dateien → Bei Adressänderung müssen alle Stellen geändert werden). Inkonsistenz: (Unbeständigkeit, Widersprüchlichkeit) Inkonsistenz tritt auf, wenn unterschiedliche Kopien derselben Daten widersprüchliche Informationen enthalten. Durch Redundanz in den Daten kann es zu Inkonsistenzen kommen. (z.B. Adresse wurde nicht überall geändert. Oder: Daten werden von 2 Benutzern gleichzeitig geändert ). Datenintegrität: (Makellosigkeit, Unbescholtenheit, Korrekter Inhalt) Datenintegrität ist nicht gewährleistet, wenn die Richtigkeit und Vollständigkeit der Daten nicht sichergestellt werden kann. (z.B. Daten werden von 2 Benutzern gleichzeitig geändert → Es kann zu Fehlern kommen: Datenintegrität ist nicht gewährleistet ) Datenschutz und Datensicherheit problematisch: Datenschutz und Datensicherheit sind problematisch, wenn personenbezogene Daten nicht ausreichend vor unbefugtem Zugriff und Missbrauch geschützt sind.( Lese- und Schreibzugriff auf Dateien lässt sich nicht so komfortabel einschränken.Dateien müssen gesichert werden ) Fehlende Datenunabhängigkeit: Fehlende Datenunabhängigkeit bedeutet, dass Änderungen an der Datenstruktur die darauf basierenden Anwendungen beeinträchtigen oder erfordern, dass diese ebenfalls geändert werden. Umstrukturierung von Daten erfordert weitere Umstrukturierungen bezüglich des Datenzugriffs. VORLESUNG 2 Datenbanken Datenbank (DB) : Sammlung von Daten, die einen Ausschnitt der realen Welt beschreiben Datenbankmanagementsystem (DBMS) : Softwaresystem, das dem Benutzer das Erstellen und die Pflege einer Datenbank ermöglicht Datenbanksystem (DBS) : Ein Datenbankmanagementsystem zusammen mit einer oder mehreren Datenbanken. 3-Ebenen-Architektur Externe Ebene: Sicht 1 - Sicht n → Benutzeroberflächen, Benutzersichten, Ausschnitte aus der Gesamtsicht. z.B. Sicht zur Umsatzberechnung. (ANr, Preis, Anzahl) Konzeptionelle Ebene: Konzeptionelles Schema → Logische Gesamtsicht, Beschreibung der Objekte, Datentypen, Beziehungen usw. z.B. Lieferant (LNr, Name, …) Artikel (ANr, Bezeichnung, …) Lieferung (ANr, LNr, Preis, …) + Lieferdatum ( Wird ein Lieferdatum eingefügt, muss an der Sicht zur Umsatzberechnung nichts geändert werden.) Interne Ebene: Internes Schema → Physische Beschreibung, Art und Form der Speicherung, Zugriffspfad. z.B. Änderung der Speicherung zum schnelleren Datenzugriff ( Wird die Datenspeicherung geändert, muss am konzeptionellen Schema nichts geändert werden.) Vorteile: - Jede*r Benutzer*in sieht die Daten, die sie/er benötigt und auf die sie/er zugreifen darf (Ausschnitt der Daten) - Die konzeptionelle Ebene beschreibt die Gesamtheit der Daten unabhängig von - den Benutzersichten und - der physikalischen Speicherung - Änderungen einer Ebene erfordern keine Änderungen in einer anderen Ebene (nur in den betroffenen Transformationen) Datenbankmodelle Hierarchische Datenbanken: organisieren Daten in einer baumartigen Struktur mit einer einzigen Wurzel und mehreren Ebenen von untergeordneten Elementen. ○ Historisch die ersten Datenbankmodelle. ○ Streng hierarchisch geordnet ○ Vater-Sohn-Beziehung (Ein Vater kann mehrere Söhne haben → Jeder Sohn hat genau einen Vater ). Netzwerkdatenbanken: verwenden ein flexibles Modell, bei dem Datenelemente in einem Netz von Beziehungen miteinander verknüpft sind, was viele-zu-viele Beziehungen ermöglicht. ○ Weiterentwicklung der hierarchischen Modelle ○ Daten werden in sog. Recordsets gepeichert ○ Einem Record können mehrere Records eines anderen Sets zugeordnet sein ○ Beziehung hat immer eine Richtung (gerichteter Graph) Relationale Datenbanken: speichern Daten in Tabellen, die durch Schlüssel miteinander verbunden sind, und verwenden SQL zur Datenverwaltung. ○ Es werden Beziehungen beschrieben ○ Daten werden in Tabellenform sog. Relationen gespeichert ○ In Tabellen werden Attribute gespeichert Spaltenorientierte Datenbanken: speichern Daten spaltenweise statt zeilenweise, was besonders für analytische Abfragen effizient ist. ○ Speicherung von Relationen / Tabellen ○ Physische Speicherung erfolgt spaltenweise (in relationaler Datenbank zeilenweise) ○ Beschleunigter Leseprozess in Spaltenrichtung Objektorientierte Datenbanken: speichern Daten in Form von Objekten, wie sie in objektorientierten Programmiersprachen verwendet werden. ○ Enthält Objekte mit: Dateninformationen (Attribute), Verweisen auf andere Objekte, Operationen (Methoden) ○ Definition über Klassen ○ Komplexe Datenstrukturen sind möglich Objektrelationale Datenbanken: kombinieren Merkmale von relationalen und objektorientierten Datenbanken und erlauben das Speichern von komplexen Datentypen. Wurden entwickelt um: ○ Eigenschaften relationaler Datenbanken nutzen ○ Nachteile relationaler Datenbanken zu beseitigen ○ Abfragesprache SQL beibehalten ( Diese wurde für objektrelationale Datenbanken erweitert PostgreSQL ) ○ Vorteile komplexer Objekte nutzen (statt das begrenzte Typsystem relationaler Datenbanksysteme). Zum Beispiel können Verhaltensweisen in relationalen Datenbanken nicht abgebildet werden In objektorientierten Datenbanken: Methoden NoSQL-Datenbanken: sind nicht-relationale Datenbanken, die für große Datenmengen und hohe Flexibilität in der Datenstruktur entwickelt wurden. NoSQL = not only (nicht nur) SQL. Anstieg des Datenvolumens erfordert Alternativen. Typisch ist die Nutzung verteilter Datenbanken auf mehreren Servern. Drei Gruppen: ○ Dokumentenorientierte Datenbanken: speichern Daten in Form von Dokumenten, oft im JSON- oder XML-Format, und sind besonders nützlich für semi-strukturierte Daten. Für unterschiedliche Ausprägungen von Einzelinformationen.Speicherung von Feldname-Wertpaaren. Nicht jeder Feldname muss in jedem Dokument vorkommen. ○ Graphen-Datenbanken: speichern Daten in Form von Knoten und Kanten und sind ideal für Anwendungen, die komplexe Beziehungsstrukturen modellieren. Stärke bei Vielzahl von Querverbindungen zwischen Daten. Daten werden als Knoten dargestellt. Beziehungen durch Verbindungen. (Typische Anwendungen: Z.B. Twitter – Wer folgt wem? ▪ Soziogramme) ○ Key/Value-Datenbanken: speichern Daten als Schlüssel-Wert-Paare und bieten eine einfache und schnelle Methode zum Speichern und Abrufen von Daten. Einfach gehaltenes Schema. Schlüssel-Wert-Zuordnung (Ganze „Datensätze“ werden als ein Wert / Value betrachtet) Schnelle Datenzugriffe Vorteilhaft bei großen Datenmengen Keine komplexen Abfragen möglich ( Zugriff nur auf den gesamten Value ▪ Alles weitere erfolgt über das Anwendungsprogramm ) Physische Datenbankarchitektur Zentralisiertes DBS: Ein zentralisiertes Datenbanksystem (DBS) speichert alle Daten an einem einzigen physischen Standort, was eine einfache Verwaltung, aber mögliche Engpässe und Ausfälle zur Folge hat. Verteiltes DBS: Ein verteiltes Datenbanksystem (DBS) speichert Daten über mehrere physische Standorte hinweg, was eine höhere Verfügbarkeit und Fehlertoleranz bietet, aber eine komplexere Verwaltung erfordert. ○ Vorteile: Zu den Vorteilen von verteilten Datenbanksystemen gehören erhöhte Zuverlässigkeit, Skalierbarkeit und Zugriffsgeschwindigkeit. ○ Nachteile: Zu den Nachteilen von verteilten Datenbanksystemen gehören höhere Komplexität bei der Verwaltung und Synchronisation sowie potenzielle Konsistenzprobleme. ○ Homogene Verteilung: Bei einer homogenen Verteilung verwenden alle Standorte eines verteilten Datenbanksystems das gleiche DBMS und das gleiche Datenmodell. ○ Heterogene Verteilung: Bei einer heterogenen Verteilung verwenden die Standorte eines verteilten Datenbanksystems unterschiedliche DBMS und Datenmodelle, was eine höhere Flexibilität, aber auch größere Integrationsaufwände bedeutet. Client-Server DBS: Ein Client-Server-Datenbanksystem teilt die Aufgaben zwischen Clients, die Anfragen stellen, und einem oder mehreren Servern, die diese Anfragen verarbeiten und die Daten bereitstellen. Parallele DBS: Parallele Datenbanksysteme nutzen mehrere Prozessoren und Speichergeräte gleichzeitig, um die Verarbeitungsgeschwindigkeit und Effizienz großer Datenmengen zu erhöhen. Aufgaben eines Datenbankmanagementsystems Persistenz und integrierte Datenhaltung: Ein DBMS sorgt für die dauerhafte Speicherung und integrierte Verwaltung von Daten. Anlegen von Datenschemata: Ein DBMS ermöglicht das Erstellen und Verwalten von Datenmodellen und -strukturen. Einfügen, Ändern, Löschen von Daten: Ein DBMS bietet Funktionen zum Hinzufügen, Aktualisieren und Entfernen von Daten in der Datenbank. Lesen von Daten: Ein DBMS ermöglicht effizientes Abrufen und Abfragen von gespeicherten Daten. Integrität und redundanzfreie Datenhaltung: Ein DBMS stellt sicher, dass die Daten konsistent und ohne unnötige Redundanzen gespeichert werden. Koordination der parallelen Nutzung: Ein DBMS koordiniert den gleichzeitigen Zugriff mehrerer Benutzer auf die Datenbank, um Konflikte zu vermeiden. Rechteverwaltung: Ein DBMS verwaltet Benutzerrechte und Zugriffsberechtigungen, um die Sicherheit der Daten zu gewährleisten. Datensicherung: Ein DBMS bietet Mechanismen zur Sicherung und Wiederherstellung der Daten im Falle eines Datenverlustes. Katalog: Ein DBMS führt einen Katalog oder ein Verzeichnis aller Datenbankobjekte und ihrer Metadaten zur Unterstützung der Datenbankverwaltung. VORLESUNG 3 Entity-Relationship-Modell (ERM) Das Entity-Relationship-Modell (ERM) ist ein konzeptionelles Schema, das verwendet wird, um Daten und deren Beziehungen in einem Informationssystem darzustellen. Entity (Entität, Objekt): Eine Entität ist ein eindeutig identifizierbares Objekt oder Konzept, das in der Datenbank gespeichert werden soll, wie z.B. eine Person, ein Ort oder ein Ereignis. Relationship (Beziehung): Eine Beziehung beschreibt die Verknüpfung zwischen zwei oder mehr Entitäten und definiert, wie diese miteinander in Beziehung stehen. Kardinalität: Kardinalität gibt an, wie viele Entitäten einer Entitätsmenge mit wie vielen Entitäten einer anderen Entitätsmenge in Beziehung stehen können. Grad der Beziehung: Der Grad der Beziehung bezeichnet die Anzahl der Entitäten, die an einer Beziehung beteiligt sind, z.B. binär (zwei Entitäten) oder ternär (drei Entitäten). Attribute (Eigenschaften): Attribute sind die Merkmale oder Eigenschaften einer Entität oder Beziehung, die zur Beschreibung verwendet werden, wie z.B. Name, Alter oder Datum. Erweiterungen: Erweiterungen beziehen sich auf zusätzliche Konzepte im ERM, die über das Grundmodell hinausgehen, um komplexere Strukturen abzubilden. Attributformen: Attributformen umfassen verschiedene Arten von Attributen wie einfache, zusammengesetzte, mehrwertige und abgeleitete Attribute. Generalisierung und Spezialisierung: Generalisierung ist der Prozess des Zusammenfassens ähnlicher Entitäten zu einer allgemeinen Entität, während Spezialisierung das Erstellen spezifischer Unterentitäten aus einer allgemeinen Entität ist. Aggregation: Aggregation ist ein Konzept, bei dem eine Beziehung als höhere Entität betrachtet wird, um komplexe Beziehungen zwischen Entitäten und Beziehungen darzustellen. Existenzabhängigkeit: Existenzabhängigkeit bedeutet, dass das Vorhandensein einer Entität von der Existenz einer anderen Entität abhängt, oft dargestellt durch schwache Entitäten.