Heim > Datenbank > Redis > Was sind nicht relationale Datenbanken?

Was sind nicht relationale Datenbanken?

王林
Freigeben: 2020-11-30 10:30:52
Original
66690 Leute haben es durchsucht

Zu den gängigen nicht-relationalen Datenbanken gehören: 1. mongodb; 3. redis; 4. hbase; 5. neo4j, eine dokumentenorientierte Open-Source-Datenbank.

Was sind nicht relationale Datenbanken?

Mehrere gängige nicht-relationale Datenbanken:

(Lernvideo-Sharing: Redis-Video-Tutorial)

1. MongoDB

MongoDB ist die bekannteste NoSQL-Datenbank. Es handelt sich um eine dokumentenorientierte Open-Source-Datenbank. MongoDB ist eine skalierbare und zugängliche Datenbank. Es ist in C++. MongoDB kann auch als Dateisystem verwendet werden. In MongoDB kann JavaScript als Abfragesprache verwendet werden. MongoDB skaliert horizontal mithilfe von Sharding. Es ist in gängigen JavaScript-Frameworks sehr nützlich.

Die Leute genießen die Sharding-, erweiterte Textsuche-, GridFS- und Kartenreduzierungsfunktionen wirklich. Dank der erstaunlichen Leistung und neuen Funktionen steht diese NoSQL-Datenbank ganz oben auf unserer Liste.

Funktionen: Bietet hohe Leistung; läuft auf mehreren Servern; Daten werden in Form von JSON-Dokumenten gespeichert; automatische Lastausgleichskonfiguration; unterstützt die Suche nach regulären Ausdrücken; einfache Verwaltung im Fehlerfall.

Vorteile: Einfach zu installierende MongoDB; unterstützt horizontal skalierbare Datenbanken;

Nachteile: Verbindungen werden nicht unterstützt; das Datenvolumen ist groß; verschachtelte Dokumente werden unnötig stark beansprucht;

2. Cassandra

Cassandra wurde von Facebook für die Posteingangssuche entwickelt. Cassandra ist ein verteiltes Datenspeichersystem zur Verarbeitung großer Mengen strukturierter Daten. Typischerweise werden diese Daten auf viele gemeinsame Server verteilt. Sie können auch Datenspeicherkapazität hinzufügen, um Ihren Dienst online zu halten, eine Aufgabe, die Sie problemlos erledigen können. Da alle Knoten im Cluster identisch sind, entfällt die Notwendigkeit, sich mit komplexen Konfigurationen auseinanderzusetzen.

Cassandra ist in Java geschrieben. Cassandra Query Language (CQL) ist eine SQL-ähnliche Sprache zum Abfragen von Cassandra-Datenbanken. Damit belegt Cassandra den zweiten Platz unter den besten Open-Source-Datenbanken. Cassandra wird von einigen der größten Unternehmen wie Facebook, Twitter, Cisco, Rackspace, eBay, Twitter, Netflix und anderen verwendet.

Funktionen: linear skalierbar; unterstützt Eigenschaften wie Atomizität, Isolation und Haltbarkeit; unterstützt maximale Flexibilität bei der Verteilung von Daten;

Vorteile: Hoch skalierbar; keine Single-Point-of-Failure; enge Integration mit anderen JVM-basierten Anwendungen, besser geeignet für Multi-Datacenter-Bereitstellung, Failover und Disaster Recovery.

Nachteile: Begrenzte Unterstützung für Aggregation; unvorhersehbare Leistung; keine Unterstützung für Ad-hoc-Abfragen.

3. Redis

Redis ist ein Key-Value-Store. Darüber hinaus ist es der bekannteste Schlüsselwertspeicher. Redis unterstützt einige C++, PHP, Ruby, Python, Perl, Scala usw. Redis ist in der Sprache C geschrieben. Darüber hinaus ist es unter BSD lizenziert.

Funktionen: Automatisches Failover; Behält die Datenbank vollständig im Speicher;

Vorteile: Unterstützt mehrere Datentypen; sehr einfach zu installieren (~110.000 Gruppen werden pro Sekunde ausgeführt, ~81.000 Mal pro Sekunde);

Nachteile: Keine Unterstützung für Verknüpfungen; Lua-Kenntnisse für gespeicherte Prozeduren müssen gut in den Speicher passen.

4. HBase

HBase ist eine verteilte, spaltenorientierte Open-Source-Datenbank. Die Technologie stammt aus dem Google-Artikel „Bigtable: Ein verteiltes Speichersystem für strukturierte Daten“ von Fay Chang. So wie Bigtable den verteilten Datenspeicher von Google File System nutzt, bietet HBase zusätzlich zu Hadoop Bigtable-ähnliche Funktionen.

HBase ist ein Unterprojekt des Hadoop-Projekts von Apache. HBase unterscheidet sich von allgemeinen relationalen Datenbanken dadurch, dass es sich um eine Datenbank handelt, die für die unstrukturierte Datenspeicherung geeignet ist. Ein weiterer Unterschied besteht darin, dass HBase spaltenbasiert und nicht zeilenbasiert ist.

5. neo4j

Neo4j wird als native Graphdatenbank bezeichnet, da es das Attributgraphmodell bis hin zur Speicherebene effektiv implementiert. Dies bedeutet, dass die Daten genau wie auf einem Whiteboard gespeichert werden und die Datenbank Zeiger zum Navigieren und Durchlaufen des Diagramms verwendet. Neo4j verfügt über Community- und Enterprise-Versionen der Datenbank. Die Enterprise Edition umfasst alle Funktionen der Community Edition sowie zusätzliche Unternehmensanforderungen wie Backup-, Clustering- und Failover-Funktionen.

Funktionen: Es unterstützt eindeutige Einschränkungen; Neo4j unterstützt vollständige ACID-Regeln (Atomizität, Konsistenz, Isolation und Haltbarkeit); verwendet die Cypher-API und die native Java-API; enthält eine Benutzeroberfläche zum Ausführen von CQL Befehle: Neo4j Data Browser.

Vorteile: Einfaches Abrufen der angrenzenden Knoten oder Beziehungsdetails ohne Verknüpfungen oder Indizes. Zum Abrufen von Daten sind keine komplexen Verknüpfungen erforderlich. Ideal für Echtzeitanwendungen in großen Unternehmen Hohe Verfügbarkeit; vereinfachtes Tuning.

Nachteile: Unterstützt kein Sharding.

Verwandte Empfehlungen: Redis-Datenbank-Tutorial

Das obige ist der detaillierte Inhalt vonWas sind nicht relationale Datenbanken?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage