Neo4j

From Wikipedia, the free encyclopedia
(Redirected from Neo4J)
Jump to navigation Jump to search
Neo4j
DeveloperNeo4j Inc.
Initial release2007; 19 years ago (2007)[1]
Repository
  • {{URL|example.com|optional display text}}Lua error in Module:EditAtWikidata at line 29: attempt to index field 'wikibase' (a nil value).
Written inJava
Engine
    Lua error in Module:EditAtWikidata at line 29: attempt to index field 'wikibase' (a nil value).
    TypeGraph database
    License
    Websiteneo4j.com

    Neo4j is a graph database management system (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-compliant transactional database with native graph storage and processing,[2] Neo4j is available in a non-open-source "community edition" licensed with a modification of the GNU General Public License, with online backup and high availability extensions licensed under a closed-source commercial license.[3] Neo also licenses Neo4j with these extensions under closed-source commercial terms.[4]

    Neo4j is implemented in Java and accessible from software written in other languages using the Cypher query language through a transactional HTTP endpoint, or through the binary "Bolt" protocol.[5][6][7][8] The "4j" in Neo4j is a reference to its being built in Java, however is now largely viewed as an anachronism.[9]

    History

    [edit | edit source]

    Neo4j is developed by Neo4j, Inc., based in San Mateo, California, United States and Malmö, Sweden.

    Version 1.0 was released in February 2010.[10]

    Neo4j version 2.0 was released in December 2013.[11]

    Neo4j version 3.0 was released in April 2016.[12]

    In November 2016, Neo4j successfully secured $36M in Series D Funding led by Greenbridge Partners Ltd.[13]

    In November 2018, Neo4j successfully secured $80M in Series E Funding led by One Peak Partners and Morgan Stanley Expansion Capital, with participation from other investors including Creandum, Eight Roads and Greenbridge Partners.[14]

    In June 2021, Neo4j announced another round of funding, $325M in Series F, led by Eurazeo and GV (Alphabet’s venture capital arm), which valued the company at over $2 billion making the company one of the best funded database companies.[15][16]

    In late 2024, the company began preparations for an initial public offering (IPO) on the Nasdaq stock exchange, although the timing of the IPO will be dependent on broader market conditions.[17]

    Release history

    [edit | edit source]
    Release history
    Release First release[18] Latest minor version[19] Latest release[19] End of
    Support Date[18]
    1.0 2010-02-23 Unsupported: 1.0 2011-08-23
    1.1 2010-07-30 Unsupported: 1.1 2012-01-30
    1.2 2010-12-29 Unsupported: 1.2 2012-06-29
    1.3 2011-04-12 Unsupported: 1.3 2012-09-12
    1.4 2011-07-08 Unsupported: 1.4 2013-01-08
    1.5 2011-11-09 Unsupported: 1.5 2013-03-09
    1.6 2012-01-22 Unsupported: 1.6 2013-07-22
    1.7 2012-04-18 Unsupported: 1.7 2013-10-18
    1.8 2012-09-28 Unsupported: 1.8 2014-03-28
    1.9 2013-05-21 Unsupported: 1.9.9 2014-10-13 2014-11-21
    2.0 2013-12-11 Unsupported: 2.0.4 2014-07-08 2015-06-11
    2.1 2014-05-29 Unsupported: 2.1.8 2015-04-01 2015-11-29
    2.2 2015-03-25 Unsupported: 2.2.10 2016-06-16 2016-09-25
    2.3 2015-10-21 Unsupported: 2.3.12 2017-12-12 2017-04-21
    3.0 2016-04-16 Unsupported: 3.0.12 2017-10-03 2017-10-31
    3.1 2016-12-13 Unsupported: 3.1.9 2018-06-05 2018-06-13
    3.2 2017-05-11 Unsupported: 3.2.14 2019-02-26 2018-11-31
    3.3 2017-10-24 Unsupported: 3.3.9 2018-11-02 2019-04-28
    3.4 2018-05-17 Unsupported: 3.4.17 2019-11-19 2020-03-31
    3.5 2018-11-29 Unsupported: 3.5.35 2022-08-11 2022-05-27
    4.0 2020-01-15 Unsupported: 4.0.12 2021-07-06 2021-07-14
    4.1 2020-06-23 Unsupported: 4.1.12 2022-08-11 2021-12-22
    4.2 2020-11-17 Unsupported: 4.2.19 2022-08-11 2022-05-16
    4.3 2021-06-17 Unsupported: 4.3.23 2022-12-21 2022-12-16
    4.4 2021-12-02 Unsupported: 4.4.46 2025-10-01 2025-11-30
    5.0 2022-10-06 Unsupported: 5.0 2022-10-24
    5.1 2022-10-24 Unsupported: 5.1 Release of 5.2
    5.2 2022-11-21 Unsupported: 5.2 Release of 5.3
    5.3 2022-12-15 Unsupported: 5.3 Release of 5.4
    5.4 2023-01-26 Unsupported: 5.4 Release of 5.5
    5.5 2023-02-16 Unsupported: 5.5 Release of 5.6
    5.6 2023-03-24 Unsupported: 5.6 Release of 5.7
    5.7 2023-04-20 Unsupported: 5.7 Release of 5.8
    5.8 2023-05-16 Unsupported: 5.8 Release of 5.9
    5.9 2023-06-15 Unsupported: 5.9 Release of 5.10
    5.10 2023-07-19 Unsupported: 5.10 Release of 5.11
    5.11 2023-08-15 Unsupported: 5.11 Release of 5.12
    5.12 2023-09-14 Unsupported: 5.12 Release of 5.13
    5.13 2023-10-23 Unsupported: 5.13 Release of 5.14
    5.14 2023-11-24 Unsupported: 5.14 Release of 5.15
    5.15 2023-12-15 Unsupported: 5.15 Release of 5.16
    5.16 2024-01-22 Unsupported: 5.16 Release of 5.17
    5.17 2024-02-23 Unsupported: 5.17 Release of 5.18
    5.18 2024-03-13 Unsupported: 5.18.1 2024-03-18 Release of 5.19
    5.19 2024-04-12 Unsupported: 5.19 Release of 5.20
    5.20 2024-05-23 Unsupported: 5.20 Release of 5.21
    5.21 2024-06-28 Unsupported: 5.21.2 2024-07-09 Release of 5.22
    5.22.0 2024-07-25 Unsupported: 5.22.0 Release of 5.23
    5.23 2024-08-22 Unsupported: 5.23 Release of 5.24
    5.24 2024-09-27 Unsupported: 5.24.2 2024-10-15 Release of 5.25
    5.25.1 2024-10-31 Unsupported: 5.25.1 Release of 5.26
    5.26 (LTS) 2024-12-09 Supported: 5.26.19 2025-12-18 2028-06-06
    2025.01 2025-02-06 Unsupported: 2025.01.0 Release of 2025.02
    2025.02 2025-02-27 Unsupported: 2025.02.0 Release of 2025.03
    2025.03 2025-03-27 Unsupported: 2025.03.0 Release of 2025.04
    2025.04 2025-04-30 Unsupported: 2025.04 Release of 2025.05
    2025.05 2025-06-03 Unsupported: 2025.05 Release of 2025.06
    2025.06 2025-07-02 Unsupported: 2025.06.2 2025-07-14 Release of 2025.07
    2025.07 2025-07-31 Unsupported: 2025.07.1 2025-08-05
    2025.08 2025-08-27 Unsupported: 2025.08.0
    2025.09 2025-09-29 Unsupported: 2025.09.0
    2025.10 2025-10-30 Unsupported: 2025.10.1 2025-10-30
    2025.11 2025-12-19 Latest version: 2025.11.2
    Legend:
    Unsupported
    Supported
    Latest version
    Preview version
    Future version

    Licensing and editions

    [edit | edit source]

    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 (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.[20]

    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.[21]

    Data structure

    [edit | edit source]

    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.[22] Previously, indexes were supported separately from Cypher.[23]

    Criticisms

    [edit | edit source]

    Database researcher Andy Pavlo from Carnegie Mellon University has questioned graph databases' decision to abandon the longstanding relational model in favor of a custom model.[24] Researchers from CWI benchmarked a modified version of DuckDB against Neo4j on graph-related workloads and found that, despite being an extension of a relational database running SQL, their implementation outperforms Neo4j in a few specific tasks.[25]

    Neo4j sued PureThink, for utilizing a power created under the terms of the GNU AGPL, to remove a restrictive Commons clause that Neo4j had added to the AGPL license.[21][26] 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 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.[27]

    See also

    [edit | edit source]

    Lua error in mw.title.lua at line 392: bad argument #2 to 'title.new' (unrecognized namespace name 'Portal').

    References

    [edit | edit source]
    1. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    2. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    3. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    4. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    5. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    6. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    7. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    8. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    9. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    10. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    11. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    12. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    13. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    14. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    15. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    16. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    17. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    18. ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    19. ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    20. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    21. ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    22. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    23. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    24. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    25. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    26. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    27. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    [edit | edit source]
    • Lua error in Module:Official_website at line 94: attempt to index field 'wikibase' (a nil value).