Графовая база данных

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Графовая база данных

Гра́фовая база данных — разновидность баз данных с реализацией сетевой модели в виде графа и его обобщений. Графовая СУБД — система управления графовыми базами данных.

История[править | править вики-текст]

Модель хранения информации в виде графов, графов со свойствами в узлах и гиперграфов сложилась в 1990—2000 годах[1], хотя использование графов в виде модели представления данных сложилось ещё c 1980-х годов[1]. Первая графовая СУБД Neo4j создана в 2007 году. По состоянию на середину 2010-х годов существуют десятки других графовых СУБД.

Описание[править | править вики-текст]

Графовую модель данных обычно рассматривают как обобщение RDF-модели или сетевой модели данных[1]. Основными элементами модели являются узлы и связи. В зависимости от реализации узлов и рёбер графовую модель данных разделяют на несколько подтипов.

Графовые базы данных применяются для моделирования социальных графов (социальных сетей)[2], в биоинформатике, а также для семантической паутины[3].

В графовых СУБД как правило разделяют хранилище (англ. underlying storage) и механизм обработки (англ. processing engine)[4].

Для задач с естественной графовой структурой данных графовые СУБД могут существенно превосходить реляционные по производительности, а также иметь преимущества в наглядности представления и простоте внесения изменений в схему базы данных[5].

Механизмы графовых вычислений[править | править вики-текст]

Для аналитической работы с большими объёмами данных в глобальных графах применяются специализированные механизмы графовых вычислений (англ. graph compute engine). В отличие от графовых СУБД, ориентированных в основном на OLTP-приложения, в системах графовых вычислений используются подходы и методы оптимизации, свойственные OLAP. Существуют различные реализации механизмов для графовых вычислений, как резидентные (англ. in-memory), так и использующие энергонезависимые устройства хранения, как работающие на одном узле, так и распределённые (работающие на нескольких узлах одновременно)[6].

Список графовых СУБД[править | править вики-текст]

Наиболее известные графовые СУБД[7][8][6]:

  • AllegroGraph
  • ArangoDB
  • DEX[en]
  • FlockDB
  • Giraph
  • HyperGraphDB (использует модель мультиграфа)
  • InfiniteGraph
  • InfoGrid
  • Neo4j (использует модель ориентированного графа)
  • OrientDB (декларируется как «мультимодельная СУБД»)
  • SparkSee
  • Sqrrl
  • Titan
  • Datomic

Примечания[править | править вики-текст]

  1. 1 2 3 http://www.dcc.uchile.cl/~cgutierr/papers/surveyGDB.pdf
  2. Graphs in the database: SQL meets social networks
  3. Graph Databases and the Future of Large-Scale Knowledge Management
  4. Robinson, Webber, Eifrem, 2013, pp. 5-8.
  5. Robinson, Webber, Eifrem, 2013, Chapter 3-4.
  6. 1 2 Robinson, Webber, Eifrem, 2013, pp. 5—8.
  7. DB-Engines Ranking of Graph DBMS
  8. Nick Bassiliades, Mirjana Ivanovic, Margita Kon-Popovska. New Trends in Database and Information Systems II: Selected papers of the 18th East European Conference on Advances in Databases and Information Systems and Associated Satellite Events, ADBIS 2014 Ohrid, Macedonia, September 7-10, 2014 Proceedings II. — Springer, 2014. — P. 4. — ISBN 978-3-319-10518-5.

Литература[править | править вики-текст]

  • Robinson, I. and Webber, J. and Eifrem, E. Graph Databases. — O’Reilly Media, 2013. — 178 p. — ISBN 978-1449356262.
  • Shashank Tiwari. Professional NoSQL. — John Wiley & Sons, 2011. — ISBN 978-1-118-16780-9.