Warning: include_once(/var/www/html/pmwiki-2.2.86/cookbook/soap4pmwiki/soap4pmwiki.php): failed to open stream: No such file or directory in /var/www/html/fields/dbp15/local/config.php on line 4

Warning: include_once(): Failed opening '/var/www/html/pmwiki-2.2.86/cookbook/soap4pmwiki/soap4pmwiki.php' for inclusion (include_path='.:/opt/php/lib/php') in /var/www/html/fields/dbp15/local/config.php on line 4

Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/fields/dbp15/local/config.php:4) in /var/www/html/pmwiki-2.2.86/pmwiki.php on line 1250
Datenbankpraktikum SS 2015 - D - Einleitung

uoSQL-Server

Max Doll, Mathias Flüggen, Stephanie Heyderich, Svantje Jung, Lisa Konieczny, Hendrik Langebrake, Dennis Lindner, Elena Resch, Heiner Rieping, Quoc-Tri Tran

Ziel dieser Gruppe war es ein eigenes Datenbankmanagementsystem aufzubauen, was den bekannten SQL-Datenbanken, wie MySQL und Postgresql, ähnelt. Zur Umsetzung wurde hierfür die relativ junge Programmiersprache Rust verwendet. Unter Anleitung von Lukas Kalbertodt wurde der Weg einer SQL-Query vom Absenden des Users über die semantische Verarbeitung im Parser-Modul bis hin zur Abspeicherung realisiert.

uoSQL ist eine experimentelle SQL-Datenbank, die mithilfe der Programmiersprache Rust aufgebaut wurde.

Die Wahl der Sprache fiel aus folgenden Gründen dabei auf Rust: Die Geschwindigkeit, mit der eine Datenbank arbeitet, ist immens wichtig. Daher sind die bekannten Vertreter des Marktsegmentes in systemnahen Sprachen geschrieben, um die Leistung moderner PCs möglichst gut auszunutzen. Rust ist eine moderne und sehr vielversprechende Sprache, in der noch kein bekanntes DBMS geschrieben wurde. Daher wurde in diesem Projekt auf die bekannten Vertreter des Genres, wie C und C++, verzichtet.

Um einen Eindruck zu bekommen, was Rust als Programmiersprache ausmacht, zitieren wir die offizielle Website: "Rust is a systems programming language that runs blazingly fast, prevents nearly all segfaults, and guarantees thread safety."

Ein Datenbankmanagementsystem hat dabei folgende grundlegenden Funktionalitäten:

  1. Parsing: Syntaktische Untersuchung von SQL-Abfragen
  2. Query Execution: Ausführung der Abfrage
  3. Speicher: Verarbeitung der Records und Tabellen auf Datenebene
  4. Netzwerk: Die Datenbank läuft auf einem Server, damit mehrere Clienten auf die Datenbank zugreifen können

Zum Projekt selbst geht es über folgenden Link.


Page last modified on September 24, 2015, at 03:32 PM