{"id":5801,"date":"2021-11-16T16:04:04","date_gmt":"2021-11-16T19:04:04","guid":{"rendered":"https:\/\/fcnuvem.com.br\/home\/?p=1288"},"modified":"2022-12-05T11:58:02","modified_gmt":"2022-12-05T14:58:02","slug":"blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1","status":"publish","type":"post","link":"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/","title":{"rendered":"Parte 1 &#8211; Dando Superpoderes aos Seus Dados com Neo4J e Grafos"},"content":{"rendered":"\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"730\" height=\"205\" src=\"https:\/\/fcamara.com\/blog\/wp-content\/uploads\/2021\/11\/Blog-730x205-FCnuvem-Neo4J.png\" alt=\"\" class=\"wp-image-1321\" srcset=\"https:\/\/fcamara.com\/blog\/wp-content\/uploads\/2021\/11\/Blog-730x205-FCnuvem-Neo4J.png 730w, https:\/\/fcamara.com\/blog\/wp-content\/uploads\/2021\/11\/Blog-730x205-FCnuvem-Neo4J-300x84.png 300w\" sizes=\"auto, (max-width: 730px) 100vw, 730px\" \/><\/figure>\n\n\n\n<p><sub><strong>Autor:<\/strong>&nbsp;Lucas&nbsp;Humberto&nbsp;Cabrera&nbsp;Santos<\/sub><\/p>\n\n\n\n<p>Estamos extremamente acostumados a utilizar bancos de dados&nbsp;relacionais e n\u00e3o relacionais, mas&nbsp;voc\u00ea j\u00e1 parou para se perguntar por que esses tipos de bancos s\u00e3o t\u00e3o utilizados? Voc\u00ea j\u00e1 parou para&nbsp;pensar que talvez&nbsp;o modelo que voc\u00ea esteja utilizando para armazenar seus dados pode n\u00e3o ser o ideal?&nbsp;<\/p>\n\n\n\n<p>Nossa quantidade de dados cresce&nbsp;exponencialmente a cada dia, isso \u00e9 um problema que temos que lidar&nbsp;diariamente, por\u00e9m ser\u00e1 que esse \u00e9 o \u00fanico problema?&nbsp;<\/p>\n\n\n\n<p><strong>Bancos Relacionais<\/strong>&nbsp;<\/p>\n\n\n\n<p>Os bancos relacionais foram criados em meados de 1970, desde ent\u00e3o eles t\u00eam sido o principal modelo de armazenamento de dados que tivemos, por\u00e9m eles n\u00e3o s\u00e3o os mais simples e nem os mais r\u00e1pidos bancos de dados&nbsp;que existem, por que&nbsp;ent\u00e3o ainda utilizamos eles?&nbsp;&nbsp;<\/p>\n\n\n\n<p>Simplesmente pelo fato de que,&nbsp;por ser um padr\u00e3o muito antigo&nbsp;a comunidade adotou boas pr\u00e1ticas e construiu todo um ecossistema sobre esse paradigma, ent\u00e3o&nbsp;como uma biblioteca muito famosa, a&nbsp;comunidade cresceu ao redor desse tipo de banco de dados e se estabeleceu&nbsp;como o padr\u00e3o prim\u00e1rio para essa&nbsp;fun\u00e7\u00e3o.&nbsp;<\/p>\n\n\n\n<p><strong>O Problema dos Relacionamentos<\/strong>&nbsp;<\/p>\n\n\n\n<p>Bancos de dados relacionais tem esse nome justamente porque gerenciam os relacionamentos entre dois ou mais dados. Por exemplo, vamos imaginar uma ACL (<em>Access&nbsp;Control&nbsp;List<\/em>)&nbsp;com uma matriz de permiss\u00f5es, um usu\u00e1rio pode estar atrelado a um ou&nbsp;mais&nbsp;<em>Roles<\/em>&nbsp;em uma aplica\u00e7\u00e3o, ele pode ser um operador e&nbsp;ao mesmo tempo, um visualizador de dados. Cada&nbsp;<em>Role<\/em>&nbsp;possui uma s\u00e9rie de escopos permissivos como: Inserir novo cliente, alterar cliente, remover cliente, extrair relat\u00f3rio e etc.&nbsp;\u00c9 um&nbsp;Modelo&nbsp;Relacional&nbsp;aproximadamente&nbsp;como&nbsp;o&nbsp;representado&nbsp;abaixo:&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"560\" height=\"233\" src=\"https:\/\/fcamara.com\/blog\/wp-content\/uploads\/2021\/11\/image-18.png\" alt=\"\" class=\"wp-image-1323\" srcset=\"https:\/\/fcamara.com\/blog\/wp-content\/uploads\/2021\/11\/image-18.png 560w, https:\/\/fcamara.com\/blog\/wp-content\/uploads\/2021\/11\/image-18-300x125.png 300w\" sizes=\"auto, (max-width: 560px) 100vw, 560px\" \/><\/figure>\n\n\n\n<p>Veja que temos duas tabelas de relacionamento para podermos relacionar um usu\u00e1rio com mais de um<em>&nbsp;Role<\/em>&nbsp;ao mesmo tempo e tamb\u00e9m para relacionar um&nbsp;<em>Role&nbsp;<\/em>a mais EM&nbsp;um escopo. Se quisermos saber quais s\u00e3o as permiss\u00f5es de um&nbsp;usu\u00e1rio, teremos que fazer uma&nbsp;<em>Query<\/em>&nbsp;com os seguintes passos:&nbsp;<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>Encontrar o role do usu\u00e1rio buscando&nbsp;SELECT&nbsp;roleId&nbsp;FROM TBL_USUARIO_ROLE WHERE&nbsp;userId&nbsp;= &lt;id&gt;&nbsp;<\/li><\/ol>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\"><li>Encontrar qual \u00e9 o ID do escopo do role que estamos buscando com&nbsp;SELECT&nbsp;scopeId&nbsp;FROM TBL_ROLE_SCOPE WHERE&nbsp;roleId&nbsp;= &lt;id&gt;&nbsp;<\/li><\/ol>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\"><li>A query anterior vai nos retornar uma lista de escopos, ent\u00e3o temos que pegar todos os escopos que est\u00e3o pertinentes a ele com uma query&nbsp;SELECT&nbsp;scopeName&nbsp;FROM TBL_SCOPE WHERE&nbsp;scopeId&nbsp;IN (&lt;lista&gt;)&nbsp;<\/li><\/ol>\n\n\n\n<p>Obviamente podemos transformar isso tudo em uma \u00fanica&nbsp;<em>Query&nbsp;<\/em>utilizando&nbsp;JOINS&nbsp;e&nbsp;coletando&nbsp;todos os dados em um \u00fanico comando, por\u00e9m o mais alarmante aqui \u00e9 o n\u00famero de relacionamento que fizemos.&nbsp;Perceba que, para cada usu\u00e1rio temos pelo menos dois&nbsp;novos&nbsp;relacionamentos, o usu\u00e1rio com o&nbsp;<em>Role<\/em>&nbsp;e o&nbsp;<em>Role<\/em>&nbsp;com o usu\u00e1rio.&nbsp;<\/p>\n\n\n\n<p>Esse \u00e9 o grande problema que enfrentamos atualmente, pois como expliquei anteriormente, os nossos dados est\u00e3o crescendo exponencialmente de forma di\u00e1ria, esse \u00e9 um problema que os bancos de dados atuais j\u00e1 resolvem de forma satisfat\u00f3ria, o n\u00famero de dados e a busca por eles j\u00e1 foi resolvida de v\u00e1rias maneiras diferentes ao&nbsp;longo dos anos, mas, al\u00e9m dos dados, h\u00e1 outro fator que&nbsp;cresce duas vezes mais r\u00e1pido: Os&nbsp;<strong>relacionamentos<\/strong>.&nbsp;<\/p>\n\n\n\n<p>Como no nosso exemplo anterior, para cada novo dado na tabela de usu\u00e1rio, criamos dois novos relacionamentos, isto \u00e9 uma taxa de crescimento de dois para um, ou seja, sempre teremos o dobro de relacionamentos do que os nossos dados.&nbsp;<\/p>\n\n\n\n<p><strong>Bancos n\u00e3o relacionais<\/strong>&nbsp;<\/p>\n\n\n\n<p>Para resolver o problema do crescimento dos relacionamentos, tivemos uma ideia interessante: Removemos&nbsp;os relacionamentos dos bancos. E&nbsp;foi assim que os modelos n\u00e3o relacionais foram criados, isso aumentou muito a velocidade com o que&nbsp;coletamos&nbsp;dados e informa\u00e7\u00f5es do banco,&nbsp;mas&nbsp;veio ao custo de n\u00e3o termos as&nbsp;verifica\u00e7\u00f5es de integridade e&nbsp;<em>Constraints&nbsp;<\/em>que os bancos relacionais nos davam por padr\u00e3o, mas como&nbsp;todas as coisas, sempre que resolvemos um problema, criamos outro problema igualmente complexo.&nbsp;&nbsp;<\/p>\n\n\n\n<p>Vamos ao nosso mesmo exemplo de ACL anterior. Imagine que agora estamos usando&nbsp;MongoDB&nbsp;para armazenar todos os nossos dados. Temos uma cole\u00e7\u00e3o de usu\u00e1rios, mas ent\u00e3o ca\u00edmos no dilema dos&nbsp;<em>Embedded&nbsp;Documents<\/em>: Devemos incluir os&nbsp;<em>Roles<\/em>&nbsp;dentro do usu\u00e1rio? Ou devemos referenciar os usu\u00e1rios&nbsp;nos&nbsp;<em>Roles<\/em>?&nbsp;<\/p>\n\n\n\n<p>Fora esse questionamento temos mais v\u00e1rios que podemos seguir:&nbsp;<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Devemos incluir os&nbsp;<\/strong><strong><em>Roles<\/em><\/strong><strong>&nbsp;dentro do usu\u00e1rio ou n\u00e3o?<\/strong>&nbsp;<\/li><\/ul>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Pr\u00f3s<\/strong>: Teremos sempre uma&nbsp;<em>Query<\/em>&nbsp;\u00fanica que trar\u00e1 o usu\u00e1rio e seus&nbsp;<em>Roles<\/em>&nbsp;<\/li><li><strong>Contra<\/strong>: Se o role mudar por algum motivo, temos que atualizar todos os usu\u00e1rios&nbsp;<\/li><\/ul>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Seguindo a ideia acima, devemos incluir os&nbsp;<\/strong><strong><em>Scopes<\/em><\/strong><strong>&nbsp;dentro dos roles ou referenci\u00e1-los apenas?<\/strong>&nbsp;<\/li><\/ul>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Pr\u00f3s<\/strong>:&nbsp;Somente uma&nbsp;<em>Query&nbsp;<\/em>para&nbsp;coletar&nbsp;tudo&nbsp;sobre o usu\u00e1rio (desde que&nbsp;os&nbsp;<em>Roles<\/em>&nbsp;estejam dentro do mesmo)&nbsp;<\/li><\/ul>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Contras:<\/strong>&nbsp;<em>Scopes<\/em>&nbsp;podem ser adicionados ou removidos, vamos ter que alterar todo mundo se um role ganhar ou perder um escopo&nbsp;<\/li><\/ul>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Se separarmos usu\u00e1rios&nbsp;e&nbsp;<\/strong><strong><em>Roles<\/em><\/strong><strong>, mas mantivermos os<\/strong><strong><em>&nbsp;Scopes<\/em><\/strong><strong>&nbsp;dentro dos&nbsp;<\/strong><strong><em>Roles<\/em><\/strong><strong>?<\/strong>&nbsp;<\/li><\/ul>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Pr\u00f3s:<\/strong>&nbsp;N\u00e3o precisamos atualizar os usu\u00e1rios se os roles mudarem&nbsp;<\/li><li><strong>Contras:<\/strong>&nbsp;Temos que lidar com integridade referencial no nosso c\u00f3digo&nbsp;<\/li><\/ul>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Se separarmos tudo, usu\u00e1rios,&nbsp;<\/strong><strong><em>Roles&nbsp;<\/em><\/strong><strong>e escopos, em&nbsp;<\/strong><strong><em>Collections<\/em><\/strong><strong>&nbsp;diferentes<\/strong>&nbsp;<\/li><\/ul>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Pr\u00f3s:<\/strong>&nbsp;Temos controle fino de cada entidade sem precisar atualizar o banco todo&nbsp;<\/li><li><strong>Contras:<\/strong>&nbsp;Muitas&nbsp;<em>Queries<\/em>&nbsp;para trazer informa\u00e7\u00e3o, a integridade referencial fica mais complexa&nbsp;<\/li><\/ul>\n\n\n\n<p>Veja que agora temos que nos preocupar com a localiza\u00e7\u00e3o e a modelagem dos documentos, que pode ser boa em determinados casos ou ruim para outros casos, al\u00e9m disso, utilizar relacionamentos em um banco n\u00e3o relacional soa um pouco estranho, j\u00e1 que poder\u00edamos facilitar muito a nossa vida simplesmente usando um banco relacional.&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Autor:&nbsp;Lucas&nbsp;Humberto&nbsp;Cabrera&nbsp;Santos Estamos extremamente acostumados a utilizar bancos de dados&nbsp;relacionais e n\u00e3o relacionais, mas&nbsp;voc\u00ea j\u00e1 parou para se perguntar por que esses tipos de bancos s\u00e3o t\u00e3o utilizados? Voc\u00ea j\u00e1 parou para&nbsp;pensar que talvez&nbsp;o modelo que voc\u00ea esteja utilizando para armazenar seus dados pode n\u00e3o ser o ideal?&nbsp; Nossa quantidade de dados cresce&nbsp;exponencialmente a cada dia,&hellip;<\/p>\n","protected":false},"author":8,"featured_media":1331,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[94],"tags":[367,368],"post_series":[],"class_list":["post-5801","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tutoriais","tag-grafos","tag-neo4j","entry","has-media"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Parte 1 - Dando Superpoderes aos Seus Dados com Neo4J e Grafos - Blog da FCamara<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Parte 1 - Dando Superpoderes aos Seus Dados com Neo4J e Grafos - Blog da FCamara\" \/>\n<meta property=\"og:description\" content=\"Autor:&nbsp;Lucas&nbsp;Humberto&nbsp;Cabrera&nbsp;Santos Estamos extremamente acostumados a utilizar bancos de dados&nbsp;relacionais e n\u00e3o relacionais, mas&nbsp;voc\u00ea j\u00e1 parou para se perguntar por que esses tipos de bancos s\u00e3o t\u00e3o utilizados? Voc\u00ea j\u00e1 parou para&nbsp;pensar que talvez&nbsp;o modelo que voc\u00ea esteja utilizando para armazenar seus dados pode n\u00e3o ser o ideal?&nbsp; Nossa quantidade de dados cresce&nbsp;exponencialmente a cada dia,&hellip;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog da FCamara\" \/>\n<meta property=\"article:published_time\" content=\"2021-11-16T19:04:04+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-12-05T14:58:02+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/fcamara.com\/blog\/wp-content\/uploads\/2021\/11\/Thumb-Blog-FCnuvem-Neo4J.png\" \/>\n\t<meta property=\"og:image:width\" content=\"260\" \/>\n\t<meta property=\"og:image:height\" content=\"205\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"fcnuvem\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"fcnuvem\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. tempo de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/\"},\"author\":{\"name\":\"fcnuvem\",\"@id\":\"https:\/\/fcamara.com\/blog\/#\/schema\/person\/62d48659a26297896002e2434a44e28a\"},\"headline\":\"Parte 1 &#8211; Dando Superpoderes aos Seus Dados com Neo4J e Grafos\",\"datePublished\":\"2021-11-16T19:04:04+00:00\",\"dateModified\":\"2022-12-05T14:58:02+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/\"},\"wordCount\":1145,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fcamara.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/fcamara.com\/blog\/wp-content\/uploads\/2021\/11\/Thumb-Blog-FCnuvem-Neo4J.png\",\"keywords\":[\"grafos\",\"neo4j\"],\"articleSection\":[\"Tutoriais\"],\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/\",\"url\":\"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/\",\"name\":\"Parte 1 - Dando Superpoderes aos Seus Dados com Neo4J e Grafos - Blog da FCamara\",\"isPartOf\":{\"@id\":\"https:\/\/fcamara.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/fcamara.com\/blog\/wp-content\/uploads\/2021\/11\/Thumb-Blog-FCnuvem-Neo4J.png\",\"datePublished\":\"2021-11-16T19:04:04+00:00\",\"dateModified\":\"2022-12-05T14:58:02+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/#primaryimage\",\"url\":\"https:\/\/fcamara.com\/blog\/wp-content\/uploads\/2021\/11\/Thumb-Blog-FCnuvem-Neo4J.png\",\"contentUrl\":\"https:\/\/fcamara.com\/blog\/wp-content\/uploads\/2021\/11\/Thumb-Blog-FCnuvem-Neo4J.png\",\"width\":260,\"height\":205},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"In\u00edcio\",\"item\":\"https:\/\/fcamara.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"aplicativo mobile\",\"item\":\"https:\/\/fcamara.com\/blog\/tags\/aplicativo-mobile\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Parte 1 &#8211; Dando Superpoderes aos Seus Dados com Neo4J e Grafos\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fcamara.com\/blog\/#website\",\"url\":\"https:\/\/fcamara.com\/blog\/\",\"name\":\"Blog da FCamara\",\"description\":\"Esta \u00e9 a \u00e1rea de insights sobre o mercado de tecnologia.\",\"publisher\":{\"@id\":\"https:\/\/fcamara.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fcamara.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-BR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/fcamara.com\/blog\/#organization\",\"name\":\"Blog da FCamara\",\"url\":\"https:\/\/fcamara.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/fcamara.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/fcamara.com\/blog\/wp-content\/uploads\/2024\/07\/FCamara-Blog-laranja.webp\",\"contentUrl\":\"https:\/\/fcamara.com\/blog\/wp-content\/uploads\/2024\/07\/FCamara-Blog-laranja.webp\",\"width\":459,\"height\":68,\"caption\":\"Blog da FCamara\"},\"image\":{\"@id\":\"https:\/\/fcamara.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/fcamara.com\/blog\/#\/schema\/person\/62d48659a26297896002e2434a44e28a\",\"name\":\"fcnuvem\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/?s=96&d=mm&r=g\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/?s=96&d=mm&r=g\",\"caption\":\"fcnuvem\"},\"url\":\"https:\/\/fcamara.com\/blog\/author\/fcnuvem\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Parte 1 - Dando Superpoderes aos Seus Dados com Neo4J e Grafos - Blog da FCamara","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/","og_locale":"pt_BR","og_type":"article","og_title":"Parte 1 - Dando Superpoderes aos Seus Dados com Neo4J e Grafos - Blog da FCamara","og_description":"Autor:&nbsp;Lucas&nbsp;Humberto&nbsp;Cabrera&nbsp;Santos Estamos extremamente acostumados a utilizar bancos de dados&nbsp;relacionais e n\u00e3o relacionais, mas&nbsp;voc\u00ea j\u00e1 parou para se perguntar por que esses tipos de bancos s\u00e3o t\u00e3o utilizados? Voc\u00ea j\u00e1 parou para&nbsp;pensar que talvez&nbsp;o modelo que voc\u00ea esteja utilizando para armazenar seus dados pode n\u00e3o ser o ideal?&nbsp; Nossa quantidade de dados cresce&nbsp;exponencialmente a cada dia,&hellip;","og_url":"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/","og_site_name":"Blog da FCamara","article_published_time":"2021-11-16T19:04:04+00:00","article_modified_time":"2022-12-05T14:58:02+00:00","og_image":[{"width":260,"height":205,"url":"https:\/\/fcamara.com\/blog\/wp-content\/uploads\/2021\/11\/Thumb-Blog-FCnuvem-Neo4J.png","type":"image\/png"}],"author":"fcnuvem","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"fcnuvem","Est. tempo de leitura":"5 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/#article","isPartOf":{"@id":"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/"},"author":{"name":"fcnuvem","@id":"https:\/\/fcamara.com\/blog\/#\/schema\/person\/62d48659a26297896002e2434a44e28a"},"headline":"Parte 1 &#8211; Dando Superpoderes aos Seus Dados com Neo4J e Grafos","datePublished":"2021-11-16T19:04:04+00:00","dateModified":"2022-12-05T14:58:02+00:00","mainEntityOfPage":{"@id":"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/"},"wordCount":1145,"commentCount":0,"publisher":{"@id":"https:\/\/fcamara.com\/blog\/#organization"},"image":{"@id":"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/#primaryimage"},"thumbnailUrl":"https:\/\/fcamara.com\/blog\/wp-content\/uploads\/2021\/11\/Thumb-Blog-FCnuvem-Neo4J.png","keywords":["grafos","neo4j"],"articleSection":["Tutoriais"],"inLanguage":"pt-BR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/","url":"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/","name":"Parte 1 - Dando Superpoderes aos Seus Dados com Neo4J e Grafos - Blog da FCamara","isPartOf":{"@id":"https:\/\/fcamara.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/#primaryimage"},"image":{"@id":"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/#primaryimage"},"thumbnailUrl":"https:\/\/fcamara.com\/blog\/wp-content\/uploads\/2021\/11\/Thumb-Blog-FCnuvem-Neo4J.png","datePublished":"2021-11-16T19:04:04+00:00","dateModified":"2022-12-05T14:58:02+00:00","breadcrumb":{"@id":"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/"]}]},{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/#primaryimage","url":"https:\/\/fcamara.com\/blog\/wp-content\/uploads\/2021\/11\/Thumb-Blog-FCnuvem-Neo4J.png","contentUrl":"https:\/\/fcamara.com\/blog\/wp-content\/uploads\/2021\/11\/Thumb-Blog-FCnuvem-Neo4J.png","width":260,"height":205},{"@type":"BreadcrumbList","@id":"https:\/\/fcamara.com\/blog\/blog-dando-superpoderes-aos-seus-dados-com-neo4j-e-grafos-parte-1\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"In\u00edcio","item":"https:\/\/fcamara.com\/blog\/"},{"@type":"ListItem","position":2,"name":"aplicativo mobile","item":"https:\/\/fcamara.com\/blog\/tags\/aplicativo-mobile\/"},{"@type":"ListItem","position":3,"name":"Parte 1 &#8211; Dando Superpoderes aos Seus Dados com Neo4J e Grafos"}]},{"@type":"WebSite","@id":"https:\/\/fcamara.com\/blog\/#website","url":"https:\/\/fcamara.com\/blog\/","name":"Blog da FCamara","description":"Esta \u00e9 a \u00e1rea de insights sobre o mercado de tecnologia.","publisher":{"@id":"https:\/\/fcamara.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fcamara.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-BR"},{"@type":"Organization","@id":"https:\/\/fcamara.com\/blog\/#organization","name":"Blog da FCamara","url":"https:\/\/fcamara.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/fcamara.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/fcamara.com\/blog\/wp-content\/uploads\/2024\/07\/FCamara-Blog-laranja.webp","contentUrl":"https:\/\/fcamara.com\/blog\/wp-content\/uploads\/2024\/07\/FCamara-Blog-laranja.webp","width":459,"height":68,"caption":"Blog da FCamara"},"image":{"@id":"https:\/\/fcamara.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/fcamara.com\/blog\/#\/schema\/person\/62d48659a26297896002e2434a44e28a","name":"fcnuvem","image":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/secure.gravatar.com\/avatar\/?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/?s=96&d=mm&r=g","caption":"fcnuvem"},"url":"https:\/\/fcamara.com\/blog\/author\/fcnuvem\/"}]}},"lang":"br","translations":{"br":5801},"pll_sync_post":[],"_links":{"self":[{"href":"https:\/\/fcamara.com\/blog\/wp-json\/wp\/v2\/posts\/5801","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fcamara.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fcamara.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fcamara.com\/blog\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/fcamara.com\/blog\/wp-json\/wp\/v2\/comments?post=5801"}],"version-history":[{"count":1,"href":"https:\/\/fcamara.com\/blog\/wp-json\/wp\/v2\/posts\/5801\/revisions"}],"predecessor-version":[{"id":6160,"href":"https:\/\/fcamara.com\/blog\/wp-json\/wp\/v2\/posts\/5801\/revisions\/6160"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/fcamara.com\/blog\/wp-json\/wp\/v2\/media\/1331"}],"wp:attachment":[{"href":"https:\/\/fcamara.com\/blog\/wp-json\/wp\/v2\/media?parent=5801"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fcamara.com\/blog\/wp-json\/wp\/v2\/categories?post=5801"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fcamara.com\/blog\/wp-json\/wp\/v2\/tags?post=5801"},{"taxonomy":"post_series","embeddable":true,"href":"https:\/\/fcamara.com\/blog\/wp-json\/wp\/v2\/post_series?post=5801"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}