Auch Flatfiles können SQL

Auch Flatfiles können SQL

23. Januar 2004 - PHP 5 bringt mit SQLite zum ersten Mal eine integrierte Datenbankengine mit, die in direkter Konkurrenz zu MySQL steht.
Artikel erschienen in IT Magazine 2004/02

Als die PHP-Entwickler im Juni letzten Jahres die erste Beta von PHP 5 vorstellten, beunruhigte zahlreiche User die Ankündigung, dass die MySQL-Client-Library in Zukunft wegen Lizenzproblemen nicht mehr zum Lieferumfang von PHP gehören soll. Statt dessen wird SQLite mit PHP ausgeliefert werden. Auch wenn man momentan daran arbeitet, die Lizenzprobleme zu beseitigen, bleibt SQLite doch in PHP enthalten und ist dank seiner unkonventionellen Architektur eine höchst interessante Entwicklung, die man unbedingt etwas genauer unter die Lupe nehmen sollte.


Sprachschule für Flatfiles

Relationelle Datenbanken (RDBMS) wie MySQL, PostgreSQL oder Oracle sind Daemons, die als eigene Prozesse laufen. Will man nun von einer Software aus Daten mit ihnen austauschen, benötigt man dazu in der Regel die passende Client-Library. Der grosse Nachteil dieser Client-Server-Architektur ist der relativ grosse Overhead, der bei der Kommunikation zwischen Client und Server entsteht und für entsprechende Geschwindigkeitseinbussen sorgt.



Dieses Problem kennt SQLite nicht. SQLite ist, im Gegensatz zu den grossen Datenbanken, ein SQL-Aufsatz für Flatfiles: Man braucht keinen Datenbankserver zu installieren, sondern arbeitet mit SQL-Queries direkt auf einer normalen Datei.



Was diese Architekturänderung bedeutet, kann man nach einem Studium der Geschwindigkeitsmessungen auf der SQLite-Homepage erahnen: Galt bei SQL-Datenbanken in Bezug auf Geschwindigkeit MySQL bisher als das Mass aller Dinge, überrascht es, wenn SQLite bis zu zweimal schneller als MySQL und sogar bis zu 20 mal so schnell wie PostgreSQL sein soll. Auch wenn diese Werte unrealistisch erscheinen, wurden sie in diversen Newsgroup-Postings bereits bestätigt.



Hinzu kommt, dass SQLite im Gegensatz zu MySQL auch Stored Procedures, Transaktionen und Subqueries beherrscht, alles Funktionen, die MySQL erst seit einiger Zeit einbaut erhält. Angesichts dieser Funktionsauswahl und der fast kompletten Kompatibilität zu ANSI SQL 92 wird sich so mancher Entwickler am Ziel seiner Träume wähnen.

 
Seite 1 von 2

Neuen Kommentar erfassen

Anti-Spam-Frage Wie hiess im Märchen die Schwester von Hänsel?
Antwort
Name
E-Mail
GOLD SPONSOREN
SPONSOREN & PARTNER