{"id":27299,"date":"2021-04-27T14:52:54","date_gmt":"2021-04-27T14:52:54","guid":{"rendered":"https:\/\/www.conectasoftware.com\/?p=27299"},"modified":"2024-01-29T15:56:25","modified_gmt":"2024-01-29T15:56:25","slug":"neo4j","status":"publish","type":"post","link":"https:\/\/www.conectasoftware.com\/magazine\/neo4j\/","title":{"rendered":"Neo4j"},"content":{"rendered":"<p><span style=\"font-weight: 400;\">Neo4j es una <a href=\"https:\/\/www.conectasoftware.com\/magazine\/business-intelligence\/base-de-datos-orientada-a-grafos\/\">base de datos orientada a grafos<\/a>, pero antes de comenzar explicando qu\u00e9 es Neo4j, para qu\u00e9 sirve y cu\u00e1les son sus ventajas, debemos explicar qu\u00e9 es un <a href=\"https:\/\/www.grapheverywhere.com\/que-son-los-grafos\/\" target=\"_blank\" rel=\"noopener\">grafo<\/a>.<\/span><\/p>\n<h2><span style=\"font-weight: 400;\">Qu\u00e9 es un grafo<\/span><\/h2>\n<p><span style=\"font-weight: 400;\">Un grafo est\u00e1 compuesto por dos elementos: los nodos (v\u00e9rtices) y las relaciones (aristas). Un nodo hace referencia a una entidad, en el que almacenaremos diferentes datos o atributos de tipo clave-valor, mientras que las relaciones representan c\u00f3mo se conectan y se relacionan dos nodos.\u00a0<\/span><br \/>\n<img loading=\"lazy\" loading=\"lazy\" decoding=\"async\" class=\"wp-image-27300 aligncenter\" src=\"https:\/\/www.conectasoftware.com\/magazine\/wp-content\/uploads\/2021\/04\/nodos.png\" alt=\"\" width=\"512\" height=\"208\" \/><\/p>\n<h2><span style=\"font-weight: 400;\">Neo4j<\/span><\/h2>\n<p><span style=\"font-weight: 400;\">Tal y como se comentaba anteriormente, Neo4j es una <a href=\"https:\/\/www.conectasoftware.com\/magazine\/business-intelligence\/base-de-datos-orientada-a-grafos\/\">base de datos orientada a grafos<\/a>. Este tipo de bases de datos est\u00e1n dise\u00f1adas b\u00e1sicamente para tratar las relaciones entre los datos y estos se almacenan mostrando c\u00f3mo cada entidad individual se conecta o se relaciona con otras.<\/span><br \/>\n<span style=\"font-weight: 400;\">La realidad es que vivimos en un mundo conectado, no hay informaci\u00f3n aislada. Por eso son tan importantes estos tipos de base de datos hoy en d\u00eda, porque son capaces de almacenar, procesar y consultar conexiones de manera eficiente. Mientras que otras bases de datos calculan estas relaciones en el momento de la consulta a trav\u00e9s de costosos joins y las bases de datos orientadas a grafos almacena las conexiones junto con los datos en el modelo.<\/span><br \/>\n<span style=\"font-weight: 400;\">Neo4j es una aplicaci\u00f3n open source que est\u00e1 implementada en Java y Scala y fue lanzada en el a\u00f1o 2007. Actualmente cuenta con dos soluciones:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Community Edition.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Enterprise Edition.<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">Enterprise Edition incluye todo lo que Community Edition proporciona, adem\u00e1s de otros requisitos empresariales interesantes como pueden ser:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Copias de seguridad.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Agrupaci\u00f3n en <a href=\"https:\/\/www.conectasoftware.com\/magazine\/analytics\/clustering-y-analisis-de-datos\/\">clusters<\/a>.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Capacidad de conmutaci\u00f3n por error.<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">A continuaci\u00f3n vamos a ver algunas de las caracter\u00edsticas m\u00e1s importantes y particulares por las que Neo4j es tan popular:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Cuenta con un lenguaje de consulta propio llamado Cypher parecido a <a href=\"https:\/\/www.conectasoftware.com\/apps\/sql-server\/\">SQL<\/a>, pero optimizado para grafos.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Recorrido en grandes grafos, tanto en profundidad como en amplitud debido a la representaci\u00f3n eficiente de nodos y relaciones.\u00a0<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Los nodos disponen de etiquetas.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Las relaciones tienen un nombre.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Los nodos y relaciones tienen propiedades.<\/span><\/li>\n<\/ul>\n<h3><span style=\"font-weight: 400;\">Casos de uso<\/span><\/h3>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Recomendaciones en tiempo real y redes sociales: Neo4j permite conectar personas con intereses de una manera muy sencilla. De esta forma podemos ajustar productos y servicios a un p\u00fablico objetivo y personalizar las recomendaciones en funci\u00f3n del perfil.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Detecci\u00f3n de fraude: Con Neo4j es mucho m\u00e1s sencillo descubrir ciertos patrones de fraude que con otras bases de datos ser\u00eda muy dif\u00edcil o imposible de detectar. Actualmente se est\u00e1 utilizando en sectores bancarios, seguros, etc.<\/span><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Neo4j es una base de datos orientada a grafos, las cuales facilitan en gran medida visualizar la relaci\u00f3n entre los datos.<\/p>\n","protected":false},"author":1,"featured_media":27337,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"content-type":"","footnotes":""},"categories":[35],"tags":[],"class_list":{"0":"post-27299","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-herramientas"},"_links":{"self":[{"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/posts\/27299","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/comments?post=27299"}],"version-history":[{"count":1,"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/posts\/27299\/revisions"}],"predecessor-version":[{"id":39647,"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/posts\/27299\/revisions\/39647"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/media\/27337"}],"wp:attachment":[{"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/media?parent=27299"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/categories?post=27299"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.conectasoftware.com\/magazine\/wp-json\/wp\/v2\/tags?post=27299"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}