Bazy danych nowej generacji

Uczę się tradycyjnych relacyjnych baz danych (z PostgreSQL) i robiąc pewne badania natknąłem się na kilka nowych typów baz danych. CouchDB, mżawka i Skalaris aby wymienić tylko kilka, jakie będą następne technologie bazodanowe?

Author: Jakub Konecki, 2008-11-12

8 answers

Powiedziałbym next-Gen baza danych, a nie next-gen SQL.

SQL jest językiem do zapytań i manipulowania relacyjnymi bazami danych. SQL jest podyktowany międzynarodowym standardem. Podczas gdy standard jest zmieniany, wydaje się, że zawsze działa w paradygmacie relacyjnej bazy danych.

Oto kilka nowych technologii przechowywania danych, które obecnie zwracają uwagę:

  • CouchDB jest nie relacyjną bazą danych. Nazywają to zorientowanym na dokumenty baza danych.
  • Amazon SimpleDB jest również nie relacyjną bazą danych dostępną w sposób rozproszony za pośrednictwem usługi internetowej. Amazon posiada również rozproszony magazyn wartości klucza o nazwie Dynamo , który obsługuje niektóre usługi S3.
  • Dynomit oraz Kai to rozwiązania open source inspirowane Amazon Dynamo.
  • BigTable jest autorskim rozwiązaniem do przechowywania danych używanym przez Google, a realizowane przy użyciu technologii systemu plików Google. Google MapReduce framework używa BigTable.
  • Hadoop jest to technologia open-source inspirowana przez Google MapReduce i służąca podobnej potrzebie, do dystrybucji pracy magazynów danych na bardzo dużą skalę.
  • Scalaris jest rozproszonym magazynem kluczy/wartości transakcyjnych. Również nie relacyjny i nie używa SQL. To projekt badawczy Instytutu Zuse w Berlinie, Niemcy.
  • RDF jest standardem przechowywania danych semantycznych, w którym Dane i metadane są wymienne. Posiada własny język zapytań SPARQL, który powierzchownie przypomina SQL, ale w rzeczywistości jest zupełnie inny.
  • Vertica jest wysoce skalowalną analityczną bazą danych zorientowaną na kolumny, zaprojektowaną dla architektury rozproszonej (grid). Twierdzi, że jest relacyjny i zgodny z SQL. Można go używać za pomocą elastycznego komputera Amazon Chmura.
  • Greenplum jest hurtownią danych o wysokiej skali DBMS, która implementuje zarówno MapReduce, jak i SQL.
  • XML to nie jest DBMS, to format wymiany. Ale niektóre produkty DBMS działają z danymi w formacie XML.
  • ODBMS, lub obiektowe bazy danych, służą do zarządzania złożonymi danymi. Wydaje się, że nie ma żadnych dominujących produktów ODBMS w głównym nurcie, być może z powodu braku standaryzacji. Standard SQL stopniowo zyskuje pewne funkcje OO(np. rozszerzalne typy danych i tabele).
  • mżawka jest relacyjną bazą danych, rysującą wiele swojego kodu z MySQL. Obejmuje ona różne zmiany architektoniczne przeznaczone do zarządzania danymi w skalowalnej architekturze systemu "cloud computing". Prawdopodobnie będzie nadal używać standardowego SQL z niektórymi ulepszeniami MySQL.
  • Cassandra jest wysoce skalowalny, ostatecznie spójny, rozproszony, strukturyzowany sklep z kluczami, opracowany na Facebook przez jednego z autorów Amazon Dynamo i przyczynił się do projektu Apache.
  • projekt Voldemort jest nie relacyjnym, rozproszonym systemem przechowywania wartości klucza. Stosowany jest w LinkedIn.com
  • Berkeley DB też zasługuje na wzmiankę. To nie jest" next-gen", ponieważ pochodzi z początku 1990 roku. to popularny sklep z wartościami kluczy, który jest łatwy do osadzenia w różnych aplikacjach. Technologia jest obecnie własnością Oracle Corp.]}

Zobacz również ten ładny artykuł Richarda Jonesa: "Anti-RDBMS: lista rozproszonych sklepów z wartością klucza."Szczegółowo opisuje niektóre z tych technologii.

Relacyjne bazy danych mają pewne słabości. Ludzie argumentują, że nie spełniają wszystkich wymagań dotyczących modelowania danych od dnia, w którym zostały one po raz pierwszy wprowadzone.

Rok po roku naukowcy wymyślają nowe sposoby zarządzanie danymi w celu spełnienia specjalnych wymagań: albo wymagania dotyczące obsługi relacji danych, które nie pasują do modelu relacyjnego, albo wymagania dotyczące dużej objętości lub prędkości, które wymagają przetwarzania danych, powinny być wykonywane na rozproszonych kolekcjach serwerów, zamiast na centralnych serwerach baz danych.

Mimo że te zaawansowane technologie robią wielkie rzeczy, aby rozwiązać specjalistyczny problem, do którego zostały zaprojektowane, relacyjne bazy danych są nadal dobrym rozwiązaniem ogólnego przeznaczenia dla większości potrzeby biznesowe. SQL nie odejdzie.


Napisałem artykuł w php / Architect magazine na temat innowacji nie relacyjnych baz danych i modelowania danych w relacyjnych i nie relacyjnych bazach danych. http://www.phparch.com/magazine/2010-2/september/

 103
Author: Bill Karwin,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-01-26 18:19:42

Brakuje mi Wykresów w odpowiedziach do tej pory. Wykres lub sieć obiektów jest powszechna w programowaniu i może być również przydatna w bazach danych. Może efektywnie obsługiwać półstrukturalne i wzajemnie powiązane informacje. Wśród obszarów, w których grafowe bazy danych zyskały duże zainteresowanie są semantic web i bioinformatyka. RDF został wspomniany, a w rzeczywistości jest to język, który reprezentuje Graf. Oto kilka wskazówek na temat tego, co dzieje się w bazie Wykresów powierzchnia:

Jestem częścią Neo4j projektu, który jest napisany w Javie, ale ma powiązania z Pythonem, Ruby i Scala jako cóż. Niektórzy używają go z Clojure lub Groovy / Grails. Istnieje również narzędzie GUI ewoluuje.

 24
Author: nawroth,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-10-08 19:11:51

Może nie jest to najlepsze miejsce na odpowiedź, ale chciałbym podzielić się tą taksonomią świata noSQL stworzonego przez Steve ' a Yena (proszę ją znaleźć na http://de.slideshare.net/northscale/nosqloakland-200911021 )

  1. Key-value-cache

    • memcached
    • repcached
    • spójność
    • infinispan
    • skala ekstremalna
    • JBoss cache
    • velocity
    • terracoqa
  2. Key-value-store

    • keyspace
    • flara
    • bez schematu
    • RAMCloud
  3. Ostatecznie-konsekwentnie key-value-store

    • dynamo
    • voldemort
    • Dynomite
    • SubRecord
    • MongoDb
    • Dovetaildb
  4. Ordered-key-value-store

    • tokyo tyrant
    • lightcloud
    • NMDB
    • luxio
    • memcachedb
    • actord
  5. Dane-struktury Serwer

    • redis
  6. Tuple-store

    • gigaspaces
    • coord
    • Apache river
  7. Obiektowa baza danych

    • ZopeDB
    • db4o
    • Ławica
  8. Dokument sklep

    • CouchDB
    • Mongo
    • Jackrabbit
    • bazy danych XML
    • ThruDB
    • CloudKit
    • Perservere
    • Riak Basho
    • Scalaris
  9. Sklep wielobranżowy

    • BigTable
    • Hbase
    • Cassandra
    • Hypertable
    • KAI
    • OpenNep
 9
Author: Paolo Bozzola,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-07-07 10:34:48

Aby dowiedzieć się, jakie badania naukowe są prowadzone w obszarze baz danych next gen, spójrz na to: http://www.thethirdmanifesto.com/

W odniesieniu do języka SQL jako właściwej implementacji modelu relacyjnego, cytuję z Wikipedii, " SQL, początkowo pchany jako standardowy język dla relacyjnych baz danych, odbiega od modelu relacyjnego w kilku miejscach. Obecny standard ISO SQL nie wymienia modelu relacyjnego ani nie używa terminów relacyjnych lub koncepcje. Możliwe jest jednak utworzenie bazy danych zgodnej z modelem relacyjnym przy użyciu SQL, jeśli nie używa się pewnych funkcji SQL."

Http://en.wikipedia.org/wiki/Relational_model[[2]} (odwołany w sekcji "SQL i model relacyjny" 28 marca 2010

 2
Author: Norman H,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-03-28 11:15:43

Nie chcę być pedantyczny, ale chciałbym zaznaczyć, że przynajmniej CouchDB nie jest oparty na SQL. I mam nadzieję,że SQL nowej generacji sprawi, że SQL będzie o wiele mniej... brzydkie i nieintuicyjne.

 1
Author: Jason Baker,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-11-12 02:05:24

Istnieją specjalne bazy danych dla XML, takie jak MarkLogic i Berkeley XMLDB. Mogą indeksować dokumenty xml i można je odpytywać za pomocą XQuery. Oczekuję baz danych JSON, może już istnieją. Trochę googlowałem, ale nie mogłem znaleźć.

 1
Author: tuinstoel,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-03-22 17:30:34

SQL istnieje od początku 1970 roku, więc nie sądzę, że w najbliższym czasie zniknie.

Może 'new (- ish) sql' będzie oql (Zobacz http://en.wikipedia.org/wiki/ODBMS )

 0
Author: Christopher Edwards,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-11-12 02:15:26

Słyszałem też o NimbusDB Jim Starkey

Jim Starkey jest człowiekiem, który "tworzy" Interbase

Którzy pracują na Vulcanie (widelec Firebird)

I kto był na początku Falcon dla MySQL

 0
Author: Hugues Van Landeghem,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-04-08 22:00:22