GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

Was ist eine Datenbank?

Einführung

Datenbanken sind das Rückgrat aller modernen Informationssysteme. Da Computer moderne Datenbanken speichern, können die Daten beliebig groß und komplex sein. Je nach Verwendung und Datentyp gibt es viele Möglichkeiten, Daten zu sammeln und zu ordnen.

Dieser Artikel bietet einen umfassenden Überblick über Datenbanken und Datenbanksysteme.

Datenbankdefinition

Eine Datenbank ist ein organisierter Satz logisch verbundener Daten. Die Informationen verwandeln sich in hilfreiches Wissen, strukturiert und gepflegt, um den Bedürfnissen des Benutzers gerecht zu werden. Abgesehen von der Speicherung der Daten selbst hält eine Datenbank auch die Beziehungen zwischen Datenpunkten fest.

Im weiteren Sinne ist eine Datenbank ein integrierter Satz von Informationen über ein System und die Verfahren für Wartung und Nutzung. Im Gegensatz zu Tabellenkalkulationen greifen mehrere Benutzer und Anwendungen gleichzeitig auf den Speicher zu.

Wofür werden Datenbanken verwendet?

Datenbanken haben ein breites Anwendungsspektrum. Typische Beispiele sind:

  • Banksysteme Führen Sie Datenbanken für Kunden, Bankkonten, Kredite, Transaktionen usw.
  • Flugverkehr speichert die Informationen über Flüge, Ticketreservierungen und ähnliches. Fluggesellschaften sind die erste Branche, die geografisch verteilte Datenbanken verwendet.
  • Universitäten Datenbanken verwenden, um Informationen über Studenten, Bewerbungen, Noten, Kurse usw. zu erfassen
  • Kreditkartentransaktionen enthalten Registerkarten zu Zahlungen und generieren monatliche Berichte.
  • Telekommunikationsunternehmen Informationen über Anrufe speichern, monatliche Rechnungen erstellen, die Kommunikationsleitung verfolgen usw.
  • Der Finanzsektor verfolgt die Verkäufe und Käufe von Finanzinstrumenten wie Anleihen und Aktien.
  • Handel und E-Commerce Unternehmen speichern Daten über Verbraucher, Produkte und verschiedene Preiskataloge.
  • Produktionsunternehmen Lieferketten, Produktionslinien, Lager verwalten, Rechnungen erstellen usw.
  • Personalwesen speichert Informationen über Mitarbeiter, Gehaltsschecks, Steuern, Sozialleistungen usw.

Die obige Liste zeigt, wie wichtig Datenbanken für jeden Geschäftstyp sind. Bei modernen Benutzeroberflächen ist das Backend beim Zugriff auf eine Datenbank verborgen, sodass viele Benutzer nicht wissen, dass sie täglich eine verwenden.

Eine kurze Geschichte der Datenbanken

Die erste automatisierte Datenbank ist mit Herman Hollerith verbunden, der das System zur automatischen Datenverarbeitung 1884 patentieren ließ. Die US-Volkszählung von 1890 verwendete das Lochkarten-Zählsystem, und die Sammlung von Karten stellt das erste automatisierte Datenbanksystem dar.

Jede Karte hatte 80 Spalten und charakterisierte Informationen über eine Person. Normalerweise würde die Verarbeitung von Volkszählungsinformationen zwei Jahre dauern. Das Lochkartensystem und der automatische Kartenlesemechanismus benötigten jedoch nur etwa sechs Wochen, um die Daten zu verarbeiten. Das Lochkartensystem wurde im gesamten 20. Jahrhundert verwendet, insbesondere zum Abstimmen und Einstempeln zur Arbeit.

Nach dem Zweiten Weltkrieg begannen Unternehmen und Regierungsinstitutionen, Computer für einfache lineare Buchhaltungsdatenbanken zu verwenden. Die ersten computergestützten Datenbanken wurden für spezifische Aufgaben verwendet und waren nicht flexibel.

Datenbanken in den 1960er Jahren

In den 1960er Jahren spielten Dokumentendatenbanken eine dominierende Rolle. Die ersten Datenbankverwaltungssysteme erschienen in diesem Jahrzehnt und wurden für große und komplexe Projekte wie die Apollo-Mondlandung verwendet.

Datenbanken in den 1970er Jahren

Datenbanken werden in den 1970er Jahren zu einer kommerziellen Realität. Hierarchische und Netzwerksysteme zur Verwaltung von Daten werden hauptsächlich für den Umgang mit komplexen Datenstrukturen, wie z. B. Fabrikkonten, beim Einkauf von Rohstoffen eingeführt.

Dieses Jahrzehnt umfasst das kommerzielle DBMS der ersten Generation, und einige werden noch heute verwendet. Einige Nachteile sind:

  • Die Daten waren schwer abzurufen. Unternehmen nutzten in den 1970er Jahren komplexe Programme, um auf einfache Daten zuzugreifen.
  • Eingeschränkte Datenunabhängigkeit machte es schwierig, Informationen zu ändern und zu aktualisieren.
  • Keine theoretische Grundlage für irgendwelche Datenbankmodelle.

Datenbanken in den 1980er Jahren

Die 1980er Jahre adressieren die Nachteile des vorangegangenen Jahrzehnts. Das relationale Datenmodell erscheint in den 1970er Jahren, und das DBMS der zweiten Generation findet in den 1980er Jahren kommerzielle geschäftliche Verwendung. Bei Verwendung des relationalen Modells liegen alle Daten in einem vertrauten Tabellenformat vor. Eine relativ einfache Programmiersprache (SQL) ruft die Daten aus der Datenbank ab.

Das neue Datenbankmodell ermöglichte Personen, die keine Programmierer waren, einen einfacheren Datenzugriff und löste damit das wichtigste Problem der vorherigen Modelle. Das relationale Modell war praktisch für die Client/Server-Kommunikation, parallele Datenübertragungen und eine GUI machte die Nutzung einfacher.

Datenbanken in den 1990er Jahren

In den 1990er Jahren entstanden Internetanwendungen und Datenspeichersysteme. Multimediale Daten (Grafiken, Ton, Bilder und Videos) wurden immer häufiger. Massive Mengen sowohl strukturierter als auch unstrukturierter Daten waren Standard. Aufgrund der steigenden Datenkomplexität wandten sich relationale Datenbanksysteme dem objektorientierten Ansatz zu.

Datenbanken in den 2000er Jahren

Drei neue Datenbanktypen erscheinen:XML-, NoSQL- und NewSQL-Datenbanken.

XML-Datenbanken sind ein stark strukturierter dokumentenbasierter Typ. Abfragen sind über XML-Attribute mit unterschiedlichem Grad an Flexibilität möglich.

NoSQL-Datenbanken entsprechen der starken Nachfrage nach hochflexiblen verteilten Datenbanksystemen, die Eventual Consistency verwenden und kein festes Schema benötigen. Der NoSQL-Typ ist hochgradig skalierbar und speichert denormalisierte Daten.

NewSQL zielt darauf ab, die besten Attribute von NoSQL-Datenbanken, wie z. B. Skalierbarkeit, zu kombinieren, während SQL verwendet und die ACID-Konformität aufrechterhalten wird.

Verschiedene Arten von Datenbanken

Derzeit sind viele verschiedene Datenbanktypen verfügbar, die jeweils Vor- und Nachteile haben. Jeder Datenbanktyp schafft eine spezifische Umgebung für die Speicherung von Daten und die Beziehung zwischen Informationen.

  • Relationale Datenbanken speichern Daten in tabellenähnlichen Strukturen als Zeilen und Spalten mit einem Fokus auf Datenkonsistenz. Dieser Datenbanktyp konzentriert sich auf Beziehungen zwischen Daten und ist der am weitesten verbreitete Datenbanktyp.
  • Objektorientierte Datenbanken kombinieren die Prinzipien der objektorientierten Programmierung (OOP) mit relationalen Datenbankstandards.
  • Verteilte Datenbanken, die über mehrere Standorte verteilt sind und horizontal skaliert werden.
  • Data Warehouses integrieren Daten aus verschiedenen Quellen konsistent in ein einziges Entscheidungsunterstützungssystem. Warehouses sind für große Datenmengen ausgelegt und befinden sich häufig auf Big-Data-Servern.
  • NoSQL-Datenbanken sind strukturell unterschiedliche Arten von Datenbanken mit Fokus auf Hochverfügbarkeit. NoSQL-Systeme eignen sich am besten für große Mengen unstrukturierter Daten.
  • Graphdatenbanken sind eine Art NoSQL-Datenbank mit Fokus auf Beziehungen zwischen Datenpunkten. Mit einer topografischen Netzwerkstruktur sind Graphdatenbanken das beste System zum Erkunden und Entdecken von Beziehungen.
  • OLTP-Datenbanken konzentrieren sich auf kurze tägliche Transaktionen und unterstützen eine große Benutzerbasis mit hoher Datenintegrität und Effektivität bei gleichzeitigen Abfragen.
  • Open-Source-Datenbanken sind offen für Änderungen und können kostenlos verwendet werden. Anpassbare Benutzereinstellungen und die geringen Kosten machen diesen Datenbanktyp weit verbreitet.
  • Cloud-Datenbanken haben alle traditionellen Datenbankfunktionen mit Cloud-Computing-Flexibilität.
  • Datenbanken mit mehreren Modellen bieten eine einzelne Engine für die Arbeit mit mehreren Datenbankmodelltypen.
  • Dokument/JSON-Datenbank ist ein NoSQL-Speichersystem, das Daten in JSON-Dokumenten speichert.
  • Selbstfahrende Cloud-Datenbanken (autonome Datenbanken) verwenden maschinelles Lernen, um verschiedene Aufgaben im DBMS zu automatisieren.

Bestandteile einer Datenbank

Fünf Hauptkomponenten bilden ein Datenbanksystem.

Hardware

Hardware umfasst die physischen Geräte, die Computer mit der realen Welt verbinden. Wenn es um Datenbanken geht, umfassen Server, Speicherplatten und verschiedene Datenerfassungsgeräte die Hardware, die zum Ausführen und Füllen einer Datenbank erforderlich ist.

Software

Die Software enthält eine breite Palette von Programmen, die zum Zugreifen auf, Bearbeiten und Steuern der Datenbanken verwendet werden. Auf den unteren Ebenen umfasst die Software die Betriebssysteme, auf denen sich die Datenbanken befinden, das Netzwerk für die Kommunikation mit den Datenbanken und die Software für den Zugriff auf die Daten.

Daten

Daten sind die wesentlichen Tatsachen über einen Artikel oder ein Ereignis, die die Datenbank speichern kann. Die Daten müssen verarbeitet werden, um Bedeutung zu erlangen und zu Informationen zu werden. Darüber hinaus extrahiert die Verarbeitung aufschlussreiche Details aus den Daten und hilft bei Entscheidungsverfahren.

Verfahren

Datenbankprozeduren umfassen alle Funktionen, die innerhalb eines Speichers ablaufen. Unabhängig davon, ob es sich um regelmäßige Sicherungen, das Erstellen von Berichten und andere alltägliche Vorgänge handelt, sind Prozeduren ein Befehlssatz, der im Datenbankverwaltungssystem ausgeführt wird.

Datenbankzugriffssprache

Die Datenbankzugriffssprache ist die Programmiersprache, die verwendet wird, um in einer Datenbank gespeicherte Daten einzufügen, zu aktualisieren, zu löschen und zu modifizieren. Datenbanken führen Abfragen direkt in der Datenbankzugriffssprache aus.

Was ist ein Datenbankmanagementsystem (DBMS)?

Ein Datenbankmanagementsystem (DBMS) dient als Schnittstelle zwischen dem Benutzer (oder Anwendungen) und der Datenbank. Das Programm ermöglicht die direkte Kommunikation mit der Datenbank, wodurch Datenabruf, Aktualisierungen, Optimierung und die allgemeine Verwaltung der in der Datenbank gespeicherten Informationen ermöglicht werden.

Was ist ein Datenbankserver?

Ein Datenbankserver ist ein dedizierter Server, der einem Client über Datenbankanwendungen Dienste bereitstellt. Ein Teil des Servers speichert das DBMS, während ein anderer die Datenbank selbst speichert. Normalerweise haben Datenbankserver eine große Speicherkapazität und viele Speichersticks.

Warum sind Datenbanken wichtig?

Ein Datenbanksystem speichert wesentliche Daten über ein Unternehmen:Die Daten werden, wenn sie analysiert werden, zu wertvollen Informationen über ein Unternehmen und helfen bei der Entscheidungsfindung.

Ebenso hilft eine Datenbank beim Aufbau eines Archivs über das Unternehmen, wodurch ein Unternehmen robuster und bewusster wird, wohin es geht, wenn es Entscheidungen trifft. Das Speichern von Daten über eine Interaktion hilft dabei, Einblicke in Informationen zu erhalten, die dem Unternehmen helfen, sich weiterzuentwickeln und die Gewinne zu steigern.

Es gibt viele Vorteile, wenn Sie ein System mit einer Datenbank verwenden:

  • Unabhängigkeit zwischen Programmen und Daten . Das Trennen von Metadaten von Anwendungen, die Daten verwenden, ist ein Schlüsselattribut. Das Hauptmerkmal der Datenbank ist die Fähigkeit, die Daten einer Organisation zu ändern und auf ein anderes Computersystem zu übertragen, ohne die Programme zu ändern, die die Informationen verarbeiten.
  • Minimale Datenredundanz . Datenbanken begegnen der Herausforderung der Datenwiederholung. Informationen werden in eine logische Struktur integriert, und jedes Datenelement wiederholt sich minimal. Datenbanken beseitigen Redundanzen jedoch nicht vollständig. Das System ermöglicht es einem Datenbankdesigner, den Umfang von Redundanzen je nach Anwendungsfall zu planen.
  • Verbesserter Datenaustausch. Datenbanken sind eine Unternehmensressource, die von vielen Mitarbeitern und Branchen genutzt wird. Bestimmte interne und externe Benutzer betreiben die Datenbank, und jede Person oder Gruppe hat spezialisierte Ansichten der Daten.
  • Mehr Datensicherheit. Ein DBMS verfügt über Verwaltungsfunktionen, die helfen, die Sicherheit sensibler Informationen durch Berechtigungen und Benutzerrollen zu kontrollieren.
  • Höhere Produktivität bei der Anwendungsentwicklung. Die Entwicklung neuer Anwendungen geht dank Datenbanksystemen schneller. Ein Programmierer kann sich auf Funktionen konzentrieren, die für eine neue Anwendung notwendig sind, ohne Daten definieren zu müssen. Ein DBMS hilft bei der Automatisierung von Aktivitäten wie dem Design und der Implementierung einer Datenbank.

Häufige Datenbankherausforderungen

Datenbanken beinhalten Herausforderungen, Risiken und Kosten beim Aufbau des Systems.

Mitarbeiterschulung Ein Unternehmen, das sich für ein Datenbanksystem entscheidet, muss Mitarbeiter anwerben oder schulen, um eine Datenbank zu entwerfen, zu implementieren und zu warten. Aufgrund der sich ständig ändernden Natur ist kontinuierliches Training notwendig, um die Effizienz von Datenbanktechnologien zu maximieren.
Installations- und Verwaltungskosten und Komplexität Multiuser-Datenbanksysteme sind umfangreiche und komplexe Softwarearchitekturen, oft mit jährlichen Kosten für technischen Support und Erweiterungen. Softwareerweiterungen mit kontinuierlicher Verbesserung der Sicherheit sind ein Muss bei der Arbeit mit Daten.
Backups, Wiederherstellung und Sicherheit Regelmäßige Backups gewährleisten Datenkonsistenz und Hochverfügbarkeit. Klare Sicherheitsverfahren und Datenbankwiederherstellung sind für ein modernes Datenbanksystem notwendig.
Organisationskonflikte Gemeinsam genutzte Datenbanken erfordern eine Zustimmung zur Definition und zum Dateneigentum. Darüber hinaus ist eine dedizierte Person erforderlich, um die Daten zu pflegen. Daher sind ein fähiger Datenbankadministrator und sinnvolle Zugriffsrechte erforderlich.

Die Zukunft der Datenbanken

Die Technologie mit den größten potenziellen Auswirkungen auf die Zukunft von Datenbanken sind autonome Datenbanken. Maschinelles Lernen hilft, die Bereitstellung, Verwaltung, Optimierung und Upgrades einer Datenbank vollständig zu automatisieren. Die Automatisierung trägt außerdem dazu bei, einen stärkeren Fokus auf die Datenbanksicherheit zu legen, die die größte Herausforderung für Systeme in der Zukunft darstellt.


Cent OS
  1. Was ist eine NoSQL-Datenbank? – NoSQL erklärt

  2. NoSQL-Datenbanktypen

  3. Was ist ein Spark-DataFrame?

  4. Was ist eine relationale Datenbank?

  5. Elasticsearch Distributed NoSQL Database – Was ist das und sollten Sie es verwenden?

Was ist eine Dokumentendatenbank?

Was ist eine OLTP-Datenbank?

Was ist Datenbank-Denormalisierung?

Was ist Datenbanknormalisierung?

Was ist NewSQL?

Was ist eine verteilte Datenbank und wozu dienen verteilte Datensysteme?