Frage

Ich lerne traditionellen relationalen Datenbanken (mit PostgreSQL ) und tun etwas Forschung ich über einige gekommen sind, neue Arten von Datenbanken. CouchDB , Drizzle und Scalaris nur einige zu nennen, was das sein wird, nächste Datenbanktechnologien beschäftigen?

War es hilfreich?

Lösung

würde ich sagen, Next-Gen Datenbank , nicht Next-Gen-SQL.

SQL ist eine Sprache zur Abfrage und Bearbeitung von relationalen Datenbanken. SQL wird von einem internationalen Standard diktiert. Während der Standard überarbeitet wird, so scheint es, immer in dem relationalen Datenbank Paradigma zu arbeiten.

Hier sind ein paar neue Datenspeichertechnologien, die Aufmerksamkeit bekommen zur Zeit:

  • CouchDB ist eine nicht-relationale Datenbank. Sie nennen es eine dokumentenorientierte Datenbank.
  • Amazon SimpleDB ist auch eine nicht-relationale Datenbank zugegriffen in eine verteilte Weise über einen Web-Service. Amazon hat auch einen verteilten Schlüssel-Wert-Geschäft namens Dynamo , die Befugnisse einige seiner S3 Services.
  • Dynomite und Kai sind Open-Source-Lösungen inspiriert von Amazon Dynamo.
  • BigTable eine proprietäre Datenspeicherlösung verwendet und von Google implementiert ihre Google File System-Technologie. Googles MapReduce-Framework verwendet BigTable.
  • Hadoop ist eine Open-Source-Technologie von Googles MapReduce inspiriert und ein ähnliches Bedürfnis dient, die Arbeit von sehr großen Daten speichern zu verteilen.
  • Scalaris ist eine verteilte Transaktions key / Wertspeicher. Auch nicht relational, und nicht SQL verwenden. Es ist ein Forschungsprojekt aus dem Zuse-Institut in Berlin, Deutschland.
  • RDF ist ein Standard semantische Daten für die Speicherung, in denen Daten und Metadaten sind austauschbar. Es hat seine eigene Abfragesprache SPARQL, die oberflächlich SQL ähnelt, ist aber eigentlich ganz anders.
  • Vertica ist eine hoch skalierbare spaltenorientierte analytische Datenbank konzipiert für verteilte (Gitter) Architektur. Es spielt Anspruch relationale und SQL-konform zu sein. Es kann durch Amazons Elastic Compute Cloud verwendet werden.
  • Greenplum ist ein High-Skala Data-Warehousing-DBMS, die implementiert sowohl MapReduce und SQL.
  • XML ist kein DBMS überhaupt, es ist ein Austauschformat. Aber einige DBMS-Produkte arbeiten mit Daten im XML-Format.
  • ODBMS oder Objektdatenbanken sind für komplexe Verwaltung von Daten. Es scheint keine dominanten ODBMS Produkte in dem Mainstream zu sein, vielleicht wegen der fehlenden Standardisierung. Die SQL-Standard wird nach und nach einigen OO-Funktionen (zum Beispiel erweiterbare Datentypen und Tabellen) zu gewinnen.
  • Drizzle ist eine relationale Datenbank, eine Menge von seinem Code von MySQL Zeichnung . Es enthält verschiedene Änderungen an der Architektur entwickelt, um Daten in einer skalierbaren „Cloud Computing“ Systemarchitektur zu verwalten. Vermutlich wird es weiterhin Standard-SQL mit einigen MySQL-Erweiterungen verwenden.
  • Cassandra eine hoch skalierbare ist, schließlich konsistent, verteilt, strukturierter Schlüssel-Wert-Speicher, bei Facebook von einem der Autoren entwickelt vonAmazon Dynamo, und trug zum Apache-Projekt.
  • Projekt Voldemort ist ein nicht-relational, verteilt, Schlüsselwert Speichersystem. Es befindet sich auf LinkedIn.com
  • verwendet
  • Berkeley DB auch verdient einige erwähnen. Es ist nicht „Next-Gen“, weil es zurück zu den frühen 1990er Jahren stammt. Es ist ein beliebter Schlüssel-Wert-Speicher, der in einer Vielzahl von Anwendungen einzubetten ist einfach. Die Technologie wird derzeit von Oracle Corp.

Auch diesen schönen Artikel von Richard Jones sehen: " Anti-RDBMS: Eine Liste von verteilten Schlüsselwert speichert „. Er geht mehr ins Detail einige dieser Technologien beschreiben.

Relationale Datenbanken haben Schwächen, um sicher zu sein. Die Menschen streiten haben, dass sie behandeln nicht alle Modellierungsanforderungen Daten seit dem Tag, es zuerst eingeführt wurde.

Jahr für Jahr kommen Forscher neue Möglichkeiten der Verwaltung von Daten bis hin zu speziellen Anforderungen zu erfüllen: entweder Anforderungen Datenbeziehungen zu behandeln, die nicht in das relationale Modell passen, oder auch Anforderungen von High-Skala Lautstärke oder Geschwindigkeit, die Daten verlangen Verarbeitung auf verteilten Sammlungen von Servern durchgeführt werden, anstelle von zentralen Datenbankserver.

Auch wenn diese fortschrittlichen Technologien große Dinge tun, um das spezielle Problem zu lösen, die sie für entworfen wurden, relationale Datenbanken sind immer noch eine gute Allzwecklösung für die meisten geschäftlichen Anforderungen. SQL ist nicht weg.


Architekt Magazin über die Innovation von nicht-relationalen Datenbanken und Datenmodellierung in relationalen vs. nicht-relationalen Datenbanken | Artikel in php

Ich habe geschrieben. http://www.phparch.com/magazine/2010-2/september/

Andere Tipps

Ich bin fehlt Graph-Datenbanken in den bisherigen Antworten. Ein Diagramm oder ein Netzwerk von Objekten ist üblich in der Programmierung und kann in Datenbanken als auch nützlich sein. Es kann semi-strukturierte und vernetzte Informationen auf effiziente Art und Weise handhaben. Zu den Bereichen, in denen Graph-Datenbanken viel Interesse gewonnen haben, sind semantische Web und Bioinformatik. RDF wurde erwähnt, und es ist in der Tat eine Sprache, die ein Diagramm darstellt. Hier einige Hinweise auf das, was in der Graphdatenbank Bereich passiert:

Ich bin ein Teil des Neo4j Projektes, das in Java geschrieben ist, aber Bindungen zu Python, Ruby und Scala auch. Einige Leute benutzen es mit Clojure oder Groovy / Grails. Es gibt auch eine GUI-Tool entwickelt sich weiter.

ist vielleicht nicht der beste Ort, um mit diesem zu beantworten, aber ich mag diese Taxonomie von NoSQL-Welt von Steve Yen erstellt teilen (bitte unter http://de.slideshare.net/northscale/nosqloakland-200911021 )

  1. Schlüssel-Wert-Cache

    • Memcached
    • repcached
    • Kohärenz
    • in fi nispan
    • extreme
    • jbosscache
    • Geschwindigkeit
    • terracoqa
  2. Schlüssel-Wert-store

    • Schlüsselraum
    • fl sind
    • Schema frei
    • RAMCloud
  3. schließlich konsistentes Schlüssel-Wert-store

    • Dynamo
    • voldemort
    • Dynomite
    • SUBRECORD
    • MongoDB
    • Dovetaildb
  4. bestellt-Schlüssel-Wert-store

    • tokyotyrant
    • lightcloud
    • NMDB
    • Luxio
    • memcachedb
    • actord
  5. Datenstrukturen Server

    • redis
  6. Tupel-store

    • GigaSpaces
    • coord
    • apacheriver
  7. Objektdatenbank

    • ZopeDB
    • db4o
    • Shoal
  8. Dokument speichern

    • CouchDB
    • Mongo
    • Hase
    • XMLDatabases
    • ThruDB
    • Wolkenjunge
    • perservere
    • RiakBasho
    • Scalaris
  9. breite säulen speichern

    • BigTable
    • Hbase
    • Cassandra
    • Hypertable
    • KAI
    • OpenNep

Für einen Blick in das, was die akademische Forschung im Bereich der Next-Gen-Datenbanken zu sehen, dies getan: http : //www.thethirdmanifesto.com/

In Bezug auf die SQL-Sprache als eine ordnungsgemäße Durchführung des relationalen Modells, zitiere ich aus Wikipedia, „SQL, zunächst als Standardsprache für relationale Datenbanken geschoben wird, weiche von dem relationalen Modell an mehreren Stellen. Den aktuellen Standard ISO SQL nicht das relationale Modell erwähnen oder relationale Begriffe oder Begriffe verwenden. Allerdings ist es möglich, eine Datenbank konform zu dem relationalen Modell mit SQL zu erstellen, wenn man nicht bestimmte SQL-Funktionen nicht verwendet. "

http://en.wikipedia.org/wiki/Relational_model (Referenced in der Abschnitt „SQL und das relationale Modell“ am 28. März 2010

Nicht zu pedantisch, aber ich möchte darauf hinweisen, dass zumindest CouchDB ist nicht auf SQL-Basis. Und ich würde hoffen, dass der Next-Gen-SQL wäre viel weniger machen SQL ... fugly und nicht intuitiv.

Es gibt spezielle Datenbanken für XML wie Marklogic und Berkeley XMLDB. Sie können Index xml-docs und man kann sie mit XQuery abfragen. Ich erwarte, dass JSON Datenbanken, vielleicht schon sie existieren. Haben einige googeln konnte aber nicht finden.

SQL gibt es schon seit den frühen 1970er Jahren, so glaube ich nicht, dass es in absehbarer Zeit zu gehen weg geht.

Vielleicht ist die 'neue (ish) sql' wird OQL (siehe http: //en.wikipedia .org / wiki / ODBMS )

Ich habe auch gehört, über NimbusDB von Jim Starkey

Jim Starkey ist der Mann, der "create" Interbase

, die auf Vulcan (a Firebird Gabel) arbeiten

und die am Anfang von Falcon for MySQL war

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top