OrientDB: Unterschied zwischen den Versionen

Aus KGS-Wiki
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 11: Zeile 11:
=== Implementierung ===
=== Implementierung ===
Um OrientDB zu implementieren, werden eine Reihe von bekannten und gängigen [[Programmiersprachen]] verwendet. Darunter sind zum Beispiel:
Um OrientDB zu implementieren, werden eine Reihe von bekannten und gängigen [[Programmiersprachen]] verwendet. Darunter sind zum Beispiel:
* Java
* [[Java]]
* Python
* [[Python]]
* JS / NodeJS
* [[JavaScript]] / [[NodeJS]]
* PHP
* [[PHP]]
* Ruby
* [[Ruby]]


Bei der Implementierung lässt sich außerdem aus drei verschiedenen Arten von [[Treibern]] wählen, welche je nach Sprache unterschiedlich nutzbar sind:
Bei der Implementierung lässt sich außerdem aus drei verschiedenen Arten von [[Treibern]] wählen, welche je nach Sprache unterschiedlich nutzbar sind:

Version vom 16. März 2023, 11:16 Uhr

OrientDB

OrientDB ist Open Source und gehört zur 2. Generation von NoSQL-Datenbanken. Das Datenbanksystem kombiniert mehrere Datenmodelle, einschließlich Graphen-, Dokumenten-, Objekt- und Key-Value-Modelle und ist somit ein Multi-Model DBMS. Dadurch wird eine umfassende Datenverwaltung geboten und es kommt mehr Funktionalität sowie Flexibilität.

OrientDB wurde in Java geschrieben und läuft somit auf jedem System, welches Java Anwendungen unterstützt.

Dazu ist OrientDB leistungsstark genug, um ein operatives DBMS zu ersetzen, da es vor allem durch sehr schnelle Lese- sowie Schreibgeschwindigkeiten heraussticht, welche bis zu 120.000 Datensätze pro Sekunde erreichen können. Dabei wird diese Geschwindigkeit nicht beeinträchtigt durch die Datenbankgröße.

Anwendung

Der Anwendungsbereich von OrientDB ist durch die Flexibilität genauso divers.

Implementierung

Um OrientDB zu implementieren, werden eine Reihe von bekannten und gängigen Programmiersprachen verwendet. Darunter sind zum Beispiel:

Bei der Implementierung lässt sich außerdem aus drei verschiedenen Arten von Treibern wählen, welche je nach Sprache unterschiedlich nutzbar sind:

  • Native Binary Remote

Welcher direkt über die TCP/IP Verbindung via eines Binär Protokolls arbeitet

  • HTTP REST/JSON

Welcher direkt über die TCP/IP Verbindung via eines HTTP Protokolls arbeitet

  • Java-wrapped

Eine Verbindung, welche mit natürlichen Java Treibern arbeitet. Das ist sehr einfach die in der JVM laufen, wie z.B.: JRuby oder Scala

Weitere Informationen zu Sprachen und Treibern ist hier zu finden: OrientDB.com

Datenstruktur

Programmierung

SQL

Damit OrientDB für viele Nutzer einfach zu verstehen ist, wurde ein Dialekt zum SQL-Syntax entworfen und verwendet. Dafür wurde sich entschieden, da SQL eine standardisierte Sprache ist, heutzutage allgegenwärtig in der Datenbank Welt ist und somit von vielen schon verstanden wird. Die SQL-Syntax wurde erweitert mit Funktionen, damit komplexere Graphen-Konzepte unterstützt werden, wie Bäume und Graphen.

Test code

Test syntaxhighlight

Test

Notizen

- No more Joins: relationships are physical links to the records. - Traverses parts of or entire trees and graphs of records in milliseconds. - Better RAM use. - OrientDB can be distributed across different servers and used in different ways to achieve the maximum of performance, scalability and robustness.

Weblinks