Neo4j Inc
   HOME

TheInfoList



OR:

Neo4j is a
graph database A graph database (GDB) is a database that uses graph structures for semantic queries with nodes, edges, and properties to represent and store data. A key concept of the system is the graph (or edge or relationship). The graph relates the dat ...
management system A management system is a set of policy, policies, business process, processes and procedures used by an organization to ensure that it can fulfill the tasks required to achieve its objectives. These objectives cover many aspects of the organizati ...
(GDBMS) developed by Neo4j Inc. The data elements Neo4j stores are nodes, edges connecting them, and attributes of nodes and edges. Described by its developers as an
ACID An acid is a molecule or ion capable of either donating a proton (i.e. Hydron, hydrogen cation, H+), known as a Brønsted–Lowry acid–base theory, Brønsted–Lowry acid, or forming a covalent bond with an electron pair, known as a Lewis ...
-compliant transactional database with native graph storage and processing, Neo4j is available in a non-open-source "community edition" licensed with a modification of the
GNU General Public License The GNU General Public Licenses (GNU GPL or simply GPL) are a series of widely used free software licenses, or ''copyleft'' licenses, that guarantee end users the freedom to run, study, share, or modify the software. The GPL was the first ...
, with
online backup A remote, online, or managed backup service, sometimes marketed as cloud backup or backup-as-a-service, is a service that provides users with a system for the backup, storage, and recovery of computer files. Online backup providers are companies ...
and
high availability High availability (HA) is a characteristic of a system that aims to ensure an agreed level of operational performance, usually uptime, for a higher than normal period. There is now more dependence on these systems as a result of modernization ...
extensions licensed under a closed-source commercial license. Neo also licenses Neo4j with these extensions under closed-source commercial terms. Neo4j is implemented in
Java Java is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea (a part of Pacific Ocean) to the north. With a population of 156.9 million people (including Madura) in mid 2024, proje ...
and accessible from software written in other languages using the
Cypher query language Cypher is a declarative graph query language that allows for expressive and efficient data querying in a property graph. Cypher was largely an invention of Andrés Taylor while working for Neo4j, Inc. (formerly Neo Technology) in 2011. Cypher wa ...
through a transactional HTTP endpoint, or through the binary " Bolt" protocol. The "4j" in Neo4j is a reference to its being built in Java, however is now largely viewed as an
anachronism An anachronism (from the Greek , 'against' and , 'time') is a chronological inconsistency in some arrangement, especially a juxtaposition of people, events, objects, language terms and customs from different time periods. The most common type ...
.


History

Neo4j is developed by Neo4j, Inc., based in
San Mateo, California San Mateo ( ) is the most populous city in San Mateo County, California, United States, on the San Francisco Peninsula. It is part of the San Francisco Bay Area metropolitan region, and is located about south of San Francisco. San Mateo border ...
, United States and
Malmö Malmö is the List of urban areas in Sweden by population, third-largest city in Sweden, after Stockholm and Gothenburg, and the List of urban areas in the Nordic countries, sixth-largest city in Nordic countries, the Nordic region. Located on ...
, Sweden. Version 1.0 was released in February 2010. Neo4j version 2.0 was released in December 2013. Neo4j version 3.0 was released in April 2016. In November 2016, Neo4j successfully secured $36M in Series D Funding led by Greenbridge Partners Ltd. In November 2018, Neo4j successfully secured $80M in Series E Funding led by One Peak Partners and
Morgan Stanley Morgan Stanley is an American multinational investment bank and financial services company headquartered at 1585 Broadway in Midtown Manhattan, New York City. With offices in 42 countries and more than 80,000 employees, the firm's clients in ...
Expansion Capital, with participation from other investors including Creandum, Eight Roads and Greenbridge Partners. In June 2021, Neo4j announced another round of funding, $325M in Series F.


Release history


Licensing and editions

Neo4j comes in five editions. Two are on-premises editions, Community (free) and Enterprise, and three are cloud-only editions: AuraDB Free, AuraDB Professional, and AuraDB Enterprise. It is dual-licensed:
GPL v3 The GNU General Public Licenses (GNU GPL or simply GPL) are a series of widely used free software licenses, or ''copyleft'' licenses, that guarantee end users the freedom to run, study, share, or modify the software. The GPL was the first c ...
(with parts of the code under AGPLv3 with Commons Clause), and a proprietary license. The Community Edition is free but is limited to running on one node only due to the lack of clustering and is without hot backups. The Enterprise Edition unlocks these limitations, allowing for clustering, hot backups, and monitoring. The Enterprise Edition is available under a closed-source commercial license. The licensing is controversial and has been the subject of at least one lawsuit.


Data structure

The data elements are nodes, edges which connect nodes to one another, and attributes of nodes and edges. Nodes and edges can be labelled. Labels can be used to narrow searches. As of version 2.0, indexing was added to Cypher with the introduction of schemas. Previously, indexes were supported separately from Cypher.


Criticisms

Database researcher Andy Pavlo from
Carnegie Mellon University Carnegie Mellon University (CMU) is a private research university in Pittsburgh, Pennsylvania, United States. The institution was established in 1900 by Andrew Carnegie as the Carnegie Technical Schools. In 1912, it became the Carnegie Institu ...
has questioned graph databases' decision to abandon the longstanding
relational model The relational model (RM) is an approach to managing data using a structure and language consistent with first-order predicate logic, first described in 1969 by English computer scientist Edgar F. Codd, where all data are represented in terms of t ...
in favor of a custom model. Researchers from CWI benchmarked a modified version of
DuckDB DuckDB is an open-source column-oriented Relational Database Management System (RDBMS). It is designed to provide high performance on complex queries against large databases in embedded configuration, such as combining tables with hundreds of ...
against Neo4j on graph-related workloads and found that, despite being an extension of a relational database running
SQL Structured Query Language (SQL) (pronounced ''S-Q-L''; or alternatively as "sequel") is a domain-specific language used to manage data, especially in a relational database management system (RDBMS). It is particularly useful in handling s ...
, their implementation outperforms Neo4j in a few specific tasks. Neo4j sued PureThink, a small business that had used a power created under the terms of the GNU AGPL, to remove a restrictive Commons clause that Neo4j had added to the AGPL license. The United States District Court for the Northern District of California made a decision on 2024-07-22 to impose $597,000 in actual damages on PureThink, having previously decided that PureThink had violated the
DMCA The Digital Millennium Copyright Act (DMCA) is a 1998 United States copyright law that implements two 1996 treaties of the World Intellectual Property Organization (WIPO). It criminalizes production and dissemination of technology, devices, or ...
by removing the Commons Clause from Neo4j's AGPL license, and that it had violated trademark law by continuing to use the name Neo4j in selling to government agencies.


See also

* ISO-GQL *
Cypher (query language) Cypher is a declarative graph query language that allows for expressive and efficient data querying in a property graph. Cypher was largely an invention of Andrés Taylor while working for Neo4j, Inc. (formerly Neo Technology) in 2011. Cypher was ...


References


External links

* {{Official website Graph databases Structured storage Free database management systems Software companies of Sweden Free software programmed in Java (programming language) 2007 software NoSQL Software using the GNU Affero General Public License