Datenbankserver - Database server
Ein Datenbankserver ist ein Server, der eine Datenbankanwendung verwendet , die anderen Computerprogrammen oder Computern Datenbankdienste bereitstellt , wie durch das Client-Server- Modell definiert . Datenbankverwaltungssysteme (DBMSs) bieten häufig Datenbank-Server-Funktionalität, und einige Datenbankverwaltungssysteme (wie MySQL ) verlassen sich ausschließlich auf das Client-Server-Modell für den Datenbankzugriff (während andere wie SQLite für die Verwendung als eingebettete Datenbank gedacht sind ). .
Der Zugriff auf einen Datenbankserver erfolgt entweder über ein auf dem Computer des Benutzers laufendes „ Frontend “, das angeforderte Daten anzeigt, oder über das „ Backend “, das auf dem Server läuft und Aufgaben wie Datenanalyse und -speicherung übernimmt.
In einem Master-Slave- Modell sind Datenbank-Master-Server zentrale und primäre Speicherorte für Daten, während Datenbank-Slave-Server synchronisierte Backups des Masters sind, die als Proxys fungieren .
Die meisten Datenbankanwendungen reagieren auf eine Abfragesprache . Jede Datenbank versteht ihre Abfragesprache und konvertiert jede übermittelte Abfrage in eine vom Server lesbare Form und führt sie aus, um Ergebnisse abzurufen.
Beispiele für proprietäre Datenbankanwendungen sind Oracle , DB2 , Informix und Microsoft SQL Server . Beispiele für kostenlose Software- Datenbankanwendungen sind PostgreSQL ; und unter der GNU General Public License enthalten sind Ingres und MySQL . Jeder Server verwendet seine eigene Abfragelogik und -struktur. Die Abfragesprache SQL (Structured Query Language) ist bei allen relationalen Datenbankanwendungen mehr oder weniger gleich .
Zur Verdeutlichung ist ein Datenbankserver einfach ein Server, der Dienste in Bezug auf Clients über Datenbankanwendungen verwaltet.
DB-Engines listet in seinem Ranking über 300 DBMS.
Geschichte
Die Grundlagen für die Modellierung großer Datenmengen wurden erstmals 1969 von Charles Bachman eingeführt. Bachman führte Datenstrukturdiagramme (DSDs) als Mittel zur grafischen Darstellung von Daten ein. DSDs boten ein Mittel, um die Beziehungen zwischen verschiedenen Datenentitäten darzustellen. 1970 führte Codd das Konzept ein, dass Benutzer einer Datenbank das "Innenleben" der Datenbank nicht kennen sollten. Codd schlug die "relationale Sicht" von Daten vor, die sich später zu dem relationalen Modell entwickelte, das heute von den meisten Datenbanken verwendet wird. 1971 schlug die Database Task Report Group von CODASYL (die treibende Kraft hinter der Entwicklung der Programmiersprache COBOL ) erstmals eine "Datenbeschreibungssprache zur Beschreibung einer Datenbank, eine Datenbeschreibungssprache zur Beschreibung des Teils der Datenbank vor, der einem Programm und eine Datenbearbeitungssprache." Der Großteil der Forschung und Entwicklung von Datenbanken konzentrierte sich in den 1970er Jahren auf das relationale Modell.
1975 demonstrierte Bachman, dass das relationale Modell und der Datenstruktursatz ähnliche und "kongruente" Methoden zur Strukturierung von Daten waren, während er für Honeywell arbeitete . Das Entity-Relationship-Modell wurde erstmals 1976 in seiner jetzigen Form von Peter Chen vorgeschlagen, als er am MIT forschte . Dieses Modell wurde das am häufigsten verwendete Modell zur Beschreibung relationaler Datenbanken. Chen war in der Lage, ein Modell vorzuschlagen, das dem Navigationsmodell überlegen war und besser auf die "reale Welt" anwendbar war als das von Codd vorgeschlagene relationale Modell.