Se você gosta de redes sociais (facebook, instagram, linkedin) vai se interessar pelo Banco de Dados Grafo.

Um banco de dados grafo foi projetado para mostrar como os dados comerciais e técnicos se conectam e estão relacionados entre si e são diferentes de bancos de dados relacionais onde apresentam formas de persistências de dados NoSQL.

O que é um banco de dados grafo?

Os bancos de dados grafo foram criados especificamente para possibilitar o armazenamento de relacionamentos e a navegação por eles. Os relacionamentos são elementos distintos que agregam a maior parte do valor para os bancos de dados grafo. Os bancos de dados grafo usam nós para armazenar entidades de dados e bordas para armazenar os relacionamentos entre as entidades. Uma borda tem sempre um nó inicial, um nó final, um tipo e um direcionamento, o que possibilita a descrição dos relacionamentos entre pais e filhos, das ações, das propriedades e assim por diante. A quantidade e os tipos de relacionamentos que um nó pode ter são ilimitados.

Um grafo em um banco de dados grafo pode ser cruzado com tipos de borda específicos ou por todo o gráfico. Nos bancos de dados grafo, o cruzamento das associações ou dos relacionamentos ocorre muito rapidamente, uma vez que os relacionamentos entre os nós não são calculados no momento das consultas, mas persistem no banco de dados. Os bancos de dados grafo são vantajosos em casos de uso como redes sociais, mecanismos de recomendação e detecção de fraudes, em que é necessário criar relacionamentos entre os dados e consultar rapidamente esses relacionamentos.

O gráfico a seguir é um exemplo de gráfico de rede social. Considerando as pessoas (nós) e seus relacionamentos (bordas), é possível descobrir quem são os “amigos dos amigos” de uma pessoa específica, por exemplo, os amigos dos amigos de Howard. 

Fonte: AWS Amazon

Para que serve um banco de dados grafo?

Muitas empresas, startups, pesquisadores, governos aplicam gráficos para detecção de fraudes em transações de instituições financeiras, recomendações para produtos/serviços de varejo, redes sociais para rastrear interdependências.

Detecção de fraudes

Os bancos de dados grafo podem fazer uma prevenção sofisticada contra fraudes. Com os bancos de dados grafo, você pode usar relacionamentos para processar transações financeiras e de compras praticamente em tempo real. Com consultas gráficas rápidas, você pode detectar, por exemplo, se um possível comprador está usando o mesmo endereço de e-mail e cartão de crédito que o usado em um caso de fraude conhecido. Os bancos de dados grafo também podem ajudá-lo a detectar facilmente padrões de relacionamento, como várias pessoas associadas a um endereço de e-mail pessoal ou várias pessoas compartilhando o mesmo endereço IP, mas residentes em endereços físicos diferentes.

Mecanismos de recomendação

Os bancos de dados grafo são uma boa opção para aplicativos de recomendação. Com os bancos de dados grafo, você pode armazenar em um gráfico os relacionamentos entre as categorias de informação, como os interesses, os amigos e o histórico de compras dos clientes. Você pode usar um banco de dados grafo altamente disponível para fazer recomendações de produtos a um usuário com base em quais produtos foram comprados por outras pessoas que seguem o mesmo esporte e têm histórico de compras similar. Além disso, é possível identificar pessoas com um amigo em comum, mas que ainda não se conhecem, para fazer uma recomendação de amizade.

Bancos de Dados Grafo Neo4j

O Neo4j oferece aos desenvolvedores e cientistas de dados as ferramentas e implementa a propriedade do modelo de grafo eficiente até o nível de armazenamento.

Sua linguagem é baseada no Cypher que organiza os relacionamentos e permite buscar, criar estruturas baseadas de um grafo de informações e relacionamentos.

Exemplo de comando:

MATCH (fernando:User),(raquel:User)

WHERE fernando.name=”Fernando” AND raquel.name=”Raquel”

CREATE (fernando) – [f:FRIENDS_WITH]->(raquel)

RETUN fernando, f, raquel

No exemplo, foram recuperados os vértices do usuário Fernando e Raquel de acordo com os nomes e, em seguida, foram conectados por meio do relacionamento do tipo FRIENDS_WHITH com o alias f. O resultado desse comando mostra os usuários recuperados e o novo relacionamento criando entre eles.

Resultado gráfico da criação de um relacionamento

Onde aprender

Site da Neo4j: https://neo4j.com/

Guia para desenvolvedores: https://neo4j.com/developer/get-started

Experimente: https://neo4j.com/sandbox-v2/

Baixe o Neo4j: https://neo4j.com/download

Exemplos: https://neo4j.com/use-cases/

https://neo4j.com/customers/

Empresas que utiliza Neo4j: https://neo4j.com/customers/

Udemy: https://www.udemy.com/orientdb-getting-started/

Conclusão

Grafos são representações gráficas de uma rede interativa, com a representação de bilhões ou trilhões de conexões para identificar popularidade, importância, localização e interesses entre os usuários ou nós da rede.

As redes sociais utilizam grafos para representar as relações entre amigos, com graus de separação entre eles. Pode-se identificar quem é amigo de quem e em que grau classificatório do grafo se encontra a sua amizade em relação a qualquer outra pessoa.

Nós em um grafo são representados em uma matriz matemática, podendo ser processados por computadores que implementam algoritmos de análise de dados.

Os principais nós de uma rede social são pessoas e grupos, enquanto os links mostram relacionamentos ou fluxos entre estes nós.

As redes sociais fornecem uma análise matemática e visual das relações humanas. Por esta razão elas se tornaram tão importantes para os negócios, marketing e outras atividades humanas.

Referências

AWS Amazon. Disponível em: https://aws.amazon.com/pt/?nc2=h_lg. Acesso em 20 ago. 2021.

Cypher Style Guide – Developer Guides. Disponível em: https://neo4j.com/developer/cypher/style-guide/. Acesso em 20 ago. 2021.

Getting Started with OrientDB. Disponível em: https://www.udemy.com/orientdb-getting-started/

Graph Academy. Disponível em: https://neo4j.com/graphacademy/. Acesso em 20 ago. 2021.

https://www.youtube.com/watch?v=ZkAYA4Kd8JE

Você pode ler a revista online aqui no site ou realizar o download. Para isto basta acessar o menu superior Edição Atual e Anteriores, escolher o ano, rolar a página para encontrar a edição desejada. Clicar no botão Ler Online ou Download.

Ew Sistemas TI.