Montag, 22. August 2011

Was hat NoSQL mit Kalbsleberwurst gemeinsam?

Seit einigen Jahren gibt es in der IT einen neuen Begriff: NoSQL. Übersetzen würde ich es mit kein-SQL oder Nicht-SQL. SQL ist eine Programmiersprache zur Beschreibung von relationalen Datenbanken.

Jetzt könnte angenommen werden, da SQL eine Programmiersprache ist, handelt es sich bei NoSQL um alle anderen Programmiersprachen. Wäre ja naheliegend. Genauso naheliegend, wie die Annahme, dass Kalbsleberwurst aus Kalbsleber besteht. Aber beides ist ein Trugschluss.

Liest man die Beschreibungen durch, erfährt man:
NoSQL soll quasi der Oberbegriff für alle Datenbankkonzepte in der IT, die nicht SQL zur Beschreibung nutzen. Relational oder nicht ist dabei egal.

Datenbankkonzepte ohne SQL. Wie war das noch - da gibt es doch seit Jahren mehr als das relationale Konzept - es gibt hierarchische Datenbankkonzepte (Implementierte Beispiele sind Dateisysteme und LDAP) und es gibt objektorientierte Datenbankansätze (OODB).

Und die meisten relationalen Systemen benutzten, bevor sie SQL implementierten auch etwas anderes. Postgres hat POSTQUEL benutzt und bekam durch die Hochzeit mit SQL lediglich einen neuen Namen Postgres95, der sich dann nur wenig später durch die Hochzeit mit OpenSource nochmals in PostgreSQL änderte.

Daraus folgt offensichtlich - dass Postgres NoSQL war.

Mit dem Begriff NoSQL ist also vorsicht geboten. Nicht nur moderne System wie MongoDB, CouchDB, GraphDB und MySQL Cluster sind NoSQL. Sondern auch alte Systeme wie Ext, XFS, UFS, FAT und LDAP. Und Postgres war durchaus nicht das einzige SQL System, das als NoSQL angefangen hat. 














Keine Kommentare:

Kommentar veröffentlichen