Kombiniert die Flexibilität von JSON mit der Leistungsfähigkeit von SQL

Yannis Papakonstantinou, Professor für Informatik und Ingenieurwesen an der University of California, San Diego, und Couchbase Inc. haben heute ihre Zusammenarbeit bei der Entwicklung einer Abfragesprache der nächsten Generation für Big Data bekannt gegeben - ein wichtiger Schritt auf dem Weg zu einer breiteren Akzeptanz von dokumentenorientierten Daten und dem Datenformat JavaScript Object Notation (JSON). Ihre Arbeit vereint die volle Leistungsfähigkeit von SQL mit der Flexibilität von JSON.

Gemeinsame Vision: SQL + JSON

Vor ihrer Zusammenarbeit kamen sowohl Couchbase als auch Prof. Papakonstantinou unabhängig voneinander zu dem Schluss, dass die bestehenden Ansätze keine vollständige und effiziente Lösung für die Abfrage semi-strukturierter Daten bieten. Beide hatten die gemeinsame Vision, SQL, die führende Datenbankabfragesprache, mit JSON, dem führenden Format für die Modellierung halbstrukturierter Daten in modernen Anwendungen, zu kombinieren. Beide hatten bereits Arbeiten in dieser Richtung begonnen, und ihre Entscheidung zur Zusammenarbeit beruht auf dieser gemeinsamen Vision.

Couchbase wird die weitere Forschung an der UC San Diego finanzieren, um die Entwicklung von SQL++ voranzutreiben, einer formal definierten, SQL-rückwärtskompatiblen deklarativen Sprache für semi-strukturierte Daten, die von Papakonstantinous Team an der UC San Diego's Database Group entwickelt wurde. Couchbase wird auch N1QL weiter ausbauen, die Abfragesprache des Unternehmens, die SQL für JSON erweitert und mit den Spezifikationen von SQL++ konsistent ist.

SQL++ ist leicht zu erlernen, insbesondere für Entwickler, die mit der Syntax von SQL vertraut sind. Aber im Gegensatz zu einer relationalen Datenbank, bei der alle Daten ordentlich in Tabellen passen müssen, ist JSON ein leichtgewichtiges Datenaustauschformat, das für Menschen leicht zu lesen und zu schreiben und für Maschinen leicht zu erzeugen und zu analysieren ist.

Wie in einem kürzlich erschienenen technischen Bericht* der UC San Diego Database Group dargelegt, haben die Miterfinder von SQL++, Papakonstantinou und der Forscher und CSE-Absolvent Kian Win Ong (PhD '12), die Syntax und Semantik von SQL++ spezifiziert, das viel sauberer ist und nur eine kleine Anzahl von Abfragesprachenerweiterungen zu SQL einführt. "SQL-Fähigkeiten werden meist durch die Beseitigung semantischer Einschränkungen von SQL erweitert, anstatt neue Funktionen zu erfinden", sagt Papakonstantinou. "Dadurch kann SQL++ unnötige Erweiterungen von SQL vermeiden." Die Benutzerfreundlichkeit wird auch dadurch verbessert, dass die Semantik von SQL++ in der Regel deutlich kürzer ist als bei früheren Abfragesprachen.

SQL++ und N1QL

Nachdem er sich 11 Abfragesprachen angesehen hatte, kam Papakonstantinou zu dem Schluss, dass keine von ihnen eine vollwertige Abfrage semistrukturierter Daten ermöglichte. Mit finanzieller Unterstützung der National Science Foundation (NSF) und Informatica als FORWARD-Projekt der UCSD entwickelten er und sein Team die SQL++-Spezifikation und brachten sie auf den Markt. Parallel dazu hatte Couchbase unabhängig N1QL entwickelt, um eine umfassende Abfragesprache bereitzustellen, die die Abfragemöglichkeiten von SQL mit der Flexibilität von JSON-Daten kombiniert.

"Unternehmen begannen, nach deklarativen Abfragen für semi-strukturierte Datenbanken zu fragen. Mit SQL++ haben Sie eine deklarative Abfragesprache, die JSON abfragt und mit SQL abwärtskompatibel ist", so Papakonstantinou. "Dies ist eine Abfragesprache für die neue Ära von Big Data, denn sie arbeitet mit halbstrukturierten Daten, ist aber vollständig deklarativ und mit SQL kompatibel. Sie bietet das Beste aus beiden Welten. Couchbase N1QL entspricht den SQL++ Spezifikationen und den Anforderungen für die Abfrage semi-strukturierter Daten."

"Wir freuen uns, mit Professor Papakonstantinou und seinem Forschungsteam zusammenzuarbeiten, weil sie unsere Vision teilen, dass eine deklarative Abfragesprache für JSON auf SQL basieren sollte", sagt Gerald Sangudi, Chief Architect für Query Engineering bei Couchbase. "SQL++ bringt außerdem Strenge und Vollständigkeit mit sich, was für unsere Nutzer von Vorteil ist."

Tatsächlich haben Couchbase und UCSD formell festgestellt, dass N1QL ein Dialekt von SQL++ ist. Das formale Mapping von N1QL auf SQL++ wird separat veröffentlicht.

Andere sollen sich an der Zusammenarbeit beteiligen

Neben Couchbase wird die UCSD auch andere akademische und industrielle Partner einladen, sich an einer Zusammenarbeit im Bereich der Abfragesprachen zu beteiligen, um die Nutzer zu unterstützen und die Einführung von semi-strukturierten und NoSQL-Datenbanken zu erleichtern. Die von Professor Mike Carey geleitete AsterixDB * der UC Irvine unterstützt bereits den größten Teil von SQL++ und ist auf dem Weg, das gesamte SQL++ zu unterstützen. Die Zusammenarbeit hat bereits wichtiges Feedback zum Sprachdesign geliefert.

*Kian Win Ong, Yannis Papakonstantinou, Romain Vernoux, Die Abfragesprache SQL++: Konfigurierbar, vereinheitlichend und halb-strukturiert, Technischer Bericht 2015Department of Computer Science and Engineering, University of California, San Diego, 29. April 2015. http://arxiv.org/pdf/1405.3631v7.pdf

Über die UC San Diego Database Group

Die Database Group ist im Fachbereich Computer Science and Engineering der UC San Diego angesiedelt und wird von CSE-Professor Yannis Papakonstantinou geleitet, einem führenden Experten für Datenbanken und Datenmanagementtechnologien. Er ist auch Co-Direktor und Mitglied des Lehrkörpers des neuen Master of Advanced Studies in Data Science and Engineering, der im Herbst 2014 eingeführt wurde. Papakonstantinou ist auch Unternehmer: Im Jahr 2000 gründete er Enosys Software, das 2003 von BEA Systems übernommen wurde. Enosys war eines der ersten Unternehmen, das einen Prozessor für halbstrukturierte Datenabfragen auf der Grundlage von XML entwickelte, das derzeit rasch durch JSON ersetzt wird. In jüngerer Zeit arbeiteten Papakonstantinou, die Forscher Kian Win Ong und Yannis Katsis und ihr Team aus Doktoranden und MS-Absolventen am FORWARD-Projekt, einer schnellen Entwicklungsplattform für Analyseanwendungen, die SQL++ zur Erstellung und inkrementellen Aktualisierung integrierter Datenansichten in mehreren Datenbanken (SQL, NoSQL oder beides) verwendet. FORWARD umfasst einen Middleware-Abfrageprozessor, der SQL++ verwendet, um verteilte Abfragen über eine Vielzahl von Datenquellen zu erstellen, darunter SQL, NoSQL, NewSQL und SQL-on-Hadoop. Die SQL++-basierte Visualisierungs- und App-Entwicklungsplattform des FORWARD-Projekts wurde bereits kommerziell eingesetzt. Weitere Informationen zum FORWARD-Projekt finden Sie unter http://forward.ucsd.edu/.

Kontakt:
Doug Ramsey
858-822-5825
dramsey@ucsd.edu

Über Couchbase

Wir bei Couchbase glauben, dass Daten das Herzstück eines Unternehmens sind. Wir ermöglichen es Entwicklern und Architekten, ihre geschäftskritischsten Anwendungen zu erstellen, einzusetzen und zu betreiben. Couchbase bietet eine leistungsstarke, flexible und skalierbare moderne Datenbank, die im Rechenzentrum und in jeder Cloud läuft. Viele der weltweit größten Unternehmen vertrauen auf Couchbase, um die Kernanwendungen zu betreiben, auf die ihr Geschäft angewiesen ist. Für weitere Informationen besuchen Sie www.couchbase.com.

Medienkontakt

James Kim

couchbasePR@couchbase.com
Couchbase-Kommunikation

Mit dem Bau beginnen

Besuchen Sie unser Entwicklerportal, um NoSQL zu erkunden, Ressourcen zu durchsuchen und mit Tutorials zu beginnen.

Capella kostenlos testen

Mit nur wenigen Klicks können Sie Couchbase in die Praxis umsetzen. Capella DBaaS ist der einfachste und schnellste Weg, um loszulegen.

Downloads Aufruf

Erstellen Sie leistungsstarke Anwendungen mit weniger Komplexität und Kosten.