Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Difference between a graph and a hypergraph database?

Is there a difference between a graph and a hypergraph database?

Is every hypergraph database system also a graph database system?

I am asking for a side-by-side comparison. If it is possible to show this in one row:

Graph support:       No/Graph/Hypergraph

Or if it is better to use two rows:

Graph support:       No/Yes
Hypergraph suppport: No/Yes

Or means "graph" and "hypergraph" the same in the database context?

like image 399
flori Avatar asked Jun 05 '12 10:06

flori


People also ask

What is the difference between graph and hypergraph?

In a simple graph, each edge, denoted by a line, only connects two vertices. In a hypergraph, each edge, denoted by a ellipse, connects more than two vertices.

What is the difference between relational database and graph database?

The most notable difference between the two is that graph databases store the relationships between data as data. Relational databases infer a focus on relationships between data but in a different way. The relational focus is between the columns of data tables, not data points.

How is a graph database difference from an object database?

An object database's main data elements are objects, the way we know them from an object-oriented programming language. A graph database's main data elements are nodes and edges. An object database does not have the notion of a (bidirectional) edge between two things with automatic referential integrity etc.

What is the difference between NoSQL and graph database?

A graph system requires handling the complex relationship of the database, while NoSQL database does not require handling the complex associations between the data models (Membrey, Hows, & Plugge, 2014).


1 Answers

How a certain graph database handles its edges is an implementation detail. Hence an answer cannot really be given in regards to "[hyper]graph databases in general".

From the point of mathematical graph theory however there is a difference:

  • Edges as known from standard graphs model (directed or undirected) 1:1 connections.
  • Hyperedges as known from hypergraphs model (directed or undirected) n:n connections.

Graph vs. Hypergraph:

A simple graph can be considered a special case of the hypergraph, namely the 2-uniform hypergraph. However, when stated without any qualification, an edge is always assumed to consist of at most 2 vertices, and a graph is never confused with a hypergraph. (Source)

Undirected hyperedges:

A[n] [undirected] hyperedge is an edge that is allowed to take on any number of vertices, possibly more than 2. A graph that allows any hyperedge is called a hypergraph. (Source)

Directed hyperedges:

Directed hypergraphs (Ausiello et al., 1985; Gallo et al., 1993) are a generalization of directed graphs (digraphs) and they can model binary relations among subsets of a given set. (Source)

like image 106
3 revs, 2 users 82% Avatar answered Oct 14 '22 02:10

3 revs, 2 users 82%