exibira apenas os nos, voce pode pedirpara exibir os nomes usando g.V.Nome, ou g.V.Qualquer_propriedade que voce_tenha criado.Notamos que a profissao do Bruno Salim esta com a grafia errada (foi deproposito, juro). Vamos fazer o update entao. Note que o ID do no dele e 28.Simples assim. Assim como e facil adicionar novas propriedades. PorExemplo, no caso do Gustavo que foi adicionado sem uma profissao.Ou adicionar uma nova propriedade que nem estava na inicializacao (essa ea caracteristica do schemaless) Aqui o map e uma exibicao de todas as propriedades do no em JSON Relacionando os nos Agora vamos estabelecer as relacoes entre os usuarios atraves dorelacionamento CONHECE. Na primeira parte atribuimos os nos a variaveis com nomes mais amigaveis,na segunda adicionamos os relacionamentos(edges) CONHECE entre eles.Com o Grafico criado vamos comecar a responder algumas consultas tipicasdas redes sociais e perceber o poder do graph db. As consultas doGremlin sao feitas em passos divididos pelo ponto. Objeto.passo1.passo2.passoN.propriedade O passo usa o resultado do passo anterior e pode transforma-lo, filtra-loou o chamado sideeffect usado para agregacoes.Entao vamos as consultas!Quem eu conheco? Oobjeto Felipe e o no correspondente a mim, usamos o passo out que retorna todosos nos que recebem edges de saida do no Felipe. Quem sao os amigos de meus amigos? Re-aplicandoo passo out, pegamos todos os nos resultantes do primeiro out e retornamosnovamente os nos que tem relacionamentos de saida. Uma forma de evitar o uso do out repetidas vezese usando o pasos loop, que repete o passo anterior ate que a regra entrecolchetes nao seja mais satisfeita (no caso limitando a duas vezes o numero deiteracoes do loop)Atraves de quem Felipe pode conhecer Gustavo? Essa e uma das mais interessantes propriedades dos graphs, responder esse tipo de pergunta em um modelo relacional e muito dificil e inevitavelmente geraria uma consulta muito pesada e isso seria fatal para uma aplicacao web com muitos usuarios. A vantagem do graph e que independentemente da quantidade de nos e iteracoes a resposta para essa pergunta mantem a mesma velocidade. A condicao para o loop foi que ele nao parasse enquanto nao encontrasse o no referente ao gustavo. Assim ele me apresentou dois caminhos possiveis. Podemos tambem trocar o out por uma combinacao de outE (relacionamentos de saida) e inV (para obter os nos) e termos como esses nos se relacionam Como existem dois caminhos possiveis Vamos remover o link entre Spigariol e Gustavo e tentar novamente Na primeira linha a identificacao do relacionamento, 'g.E' para listartodos os edges, seguido de 'inV' para pegar os nos retornados e 'has' parafiltrar aqueles com nome Gustavo. E por fim, um back(2),para exibir os resultados de dois passos atras. (voltando no E).A remocao e novamente o comandopara listar o caminho entre os dois nos.ConclusaoFizemos um pequeno tour sobre o que e o GraphDB, quais sao as pecas quevoce deve juntar para usa-lo e uma lab "mao na massa" de como criar,apagar e consultar os nos armazenados. Apesar de extenso, esse post esta muitolonge de ser um tutorial completo, para isso recomendo esse otimo video tutorial, onde o analista Andreas Kollegger