Neo4j es un sistema de gestión de bases de datos gráficas (GDBMS) desarrollado por Neo4j Inc.
Los elementos de datos que almacena Neo4j son nodos , aristas que los conectan y atributos de nodos y aristas. Descrita por sus desarrolladores como una base de datos transaccional compatible con ACID con almacenamiento y procesamiento de gráficos nativos, [3] Neo4j está disponible en una "edición comunitaria" que no es de código abierto con licencia con una modificación de la Licencia Pública General de GNU , con extensiones de copia de seguridad en línea y alta disponibilidad con licencia comercial de código cerrado. [4] Neo también licencia Neo4j con estas extensiones bajo términos comerciales de código cerrado. [5]
Neo4j está implementado en Java y es accesible desde software escrito en otros lenguajes usando el lenguaje de consulta Cypher a través de un punto final HTTP transaccional, o a través del protocolo binario " Bolt ". [6] [7] [8] [9] El "4j" en Neo4j es una referencia a que está construido en Java, sin embargo ahora es visto en gran medida como un anacronismo . [10]
Neo4j es desarrollado por Neo4j, Inc., con sede en San Mateo, California , Estados Unidos y Malmö , Suecia.
La versión 1.0 se lanzó en febrero de 2010. [11]
La versión 2.0 de Neo4j se lanzó en diciembre de 2013. [12]
La versión 3.0 de Neo4j se lanzó en abril de 2016. [13]
En noviembre de 2016, Neo4j consiguió con éxito 36 millones de dólares en financiación de serie D liderada por Greenbridge Partners Ltd. [14]
En noviembre de 2018, Neo4j consiguió con éxito 80 millones de dólares en financiación de Serie E liderada por One Peak Partners y Morgan Stanley Expansion Capital, con la participación de otros inversores, incluidos Creandum, Eight Roads y Greenbridge Partners. [15]
En junio de 2021, Neo4j anunció otra ronda de financiación, 325 millones de dólares en la Serie F. [16]
Neo4j viene en cinco ediciones. Dos son ediciones locales, Community (gratuita) y Enterprise, y tres son ediciones solo en la nube: AuraDB Free, AuraDB Professional y AuraDB Enterprise.
Tiene licencia dual: GPL v3 (con partes del código bajo AGPLv3 con cláusula Commons ) y una licencia propietaria. La Community Edition es gratuita, pero está limitada a ejecutarse en un solo nodo debido a la falta de agrupamiento y no tiene copias de seguridad activas. [19]
La edición Enterprise supera estas limitaciones y permite la agrupación en clústeres, las copias de seguridad activas y la supervisión. La edición Enterprise está disponible con una licencia comercial de código cerrado.
La concesión de licencias es controvertida y ha sido objeto de al menos una demanda. [20]
Los elementos de datos son nodos, aristas que conectan nodos entre sí y atributos de nodos y aristas. Los nodos y aristas pueden etiquetarse. Las etiquetas pueden usarse para limitar las búsquedas. A partir de la versión 2.0, se agregó la indexación a Cypher con la introducción de esquemas. [21] Anteriormente, los índices se admitían por separado de Cypher. [22]
El investigador de bases de datos Andy Pavlo de la Universidad Carnegie Mellon ha cuestionado la decisión de las bases de datos gráficas de abandonar el antiguo modelo relacional en favor de un modelo personalizado. [23] Los investigadores de CWI compararon una versión modificada de DuckDB con Neo4j en cargas de trabajo relacionadas con gráficos y descubrieron que, a pesar de ser una extensión de una base de datos relacional que ejecuta SQL , su implementación supera a Neo4j en algunas tareas específicas. [24]
Neo4j demandó a PureThink, una pequeña empresa que había utilizado un poder creado bajo los términos de la GNU AGPL, para eliminar una cláusula restrictiva de Commons que Neo4j había agregado a la licencia AGPL. [20] [25] El Tribunal de Distrito de los Estados Unidos para el Distrito Norte de California tomó una decisión el 22 de julio de 2024 para imponer $ 597,000 en daños reales a PureThink, habiendo decidido previamente que PureThink había violado la DMCA al eliminar la Cláusula Commons de la licencia AGPL de Neo4j, y que había violado la ley de marcas registradas al continuar usando el nombre Neo4j en la venta a agencias gubernamentales. [26]
{{cite web}}
: Falta o está vacío |title=
( ayuda )