pessoal pronto para falar de mais um banco de dados agora a gente vai abordar um pouco sobre o netune qual é a grande diferença dele para os demais bancos de dados esse é um banco de dados que ele foi feito para trabalhar com grafo um banco de dados também totalmente gerenciado pela aws parece com a fita um disco riscado neto ficando velho mas parece que um disco riscado que toda hora falo isso é um banco de dados totalmente gerenciado pela AWS porque é, a maior parte dos bancos de dados que a gente está falando aqui são gerenciados pela AWS então ela vai te ajudar com toda a parte de escalabilidade, etc não estou vendendo, só estou te contando como é que funciona e esse banco de dados ele foi feito para trabalhar muito com grafo e qual que é a grande sacada dele? Ele é melhor para você trabalhar ali com coisas do tipo redes sociais, ou seja, que você tem muitas coligações e correlações entre os seus dados. Sistema de recomendação, detecção de fraude, ou seja, você precisa basicamente correlacionar os dados e chegar em estratégias de grafo. Com isso, ele é bem legal aqui. ou seja, você precisa basicamente correlacionar os dados e chegar em estratégias de grafo, com isso ele é bem legal aqui. E ele usa duas coisas que a gente vai falar um pouco mais aqui, dois modelos de grafo, que é o Property Graph, se você já está acostumado, você já conhece, mas eu vou falar um pouquinho aqui de novo, nivelar conhecimento de todo mundo para quando vocês precisarem usar e assim por diante, e o RDF, que também é outro modelo bastante utilizado, nem um modelo novo de mercado, mas é bem popular, bem utilizado e para você que está pensando em usar algum grafo aí, vai te ajudar também. Aí eu vou até dar uma dica, muita gente acaba usando grafo quando não precisa e grafo é extremamente complexo, então também muito cuidado para não trazer complexidade porque não precisa. Vamos lá, primeiro carinha que a gente vai falar, que é o Property Graph, ele tem a seguinte ideia. Ele trabalha com duas coisinhas que a gente tem que ter na cabeça. É o vértice e as arestas. O vértice pode ser chamado de nodes também, vai depender da literatura que você está lendo, do que você está participando, e as arestas podem ser os edges também. Os dois, eles podem ter propriedades associadas e as propriedades, elas têm um paralelidade de valor, ou seja, você consegue buscá-las e elas vão armazenar uma informação adicional sobre o vértice. O que isso significa? Se você tiver uma chave valor onde você consegue adicionar informação, colocar informações adicionais, vai ficar adicionado informações adicionais, fica complicado. Armazenar informações adicionais, você consegue deixar um banco de dados bem rico em questão de informação. Alguns bancos de dados e estratégias de uso de grafo, acabam deixando isso mais restrito. Eu acho legal do Neptune que ele abre bastante pra você, o Neptunes, desculpa, ele abre bastante pra você usar esses tipos de estratégia, tá? Então eu dei aqui um exemplo, tá? Um exemplo de vértice, por exemplo, vamos pensar num Instagram da vida, tá? Então você tem lá uma vértice que é Alice, então o nome vai ser Alice, a idade dela 30. Está vendo aqui, eu já tenho informações adicionais, eu agreguei ao meu vértice. Eu tenho aqui Alice, a idade dela é 30, localização é São Paulo, então eu já tenho três informações da Alice. E eu tenho a Aresta, que é a forma como eu vou chegar no ponto onde eu quero chegar de correlação, que é o Bob. Porque o que eu quero mostrar é que a Alice é amiga do Bob então ela tem uma relação com o Bob a aresta é essa estrada o jeito que eu vou fazer para chegar na outra informação para você que não está acostumado com esse tipo de estratégia o vértice é um ponto eu quero chegar no Bob que é outro ponto é como se fosse indo daqui de São Paulo para Rio de Janeiro. Eu faço bastante abstração com estrada, né? Tenho que aumentar aqui meu repertório de abstrações. Eu tô indo aqui de São Paulo pro Rio de Janeiro e eu tenho as estradas que ligam ao Rio de Janeiro. A aresta vai ser isso. Vai ser como que eu chego lá. Pode ter uma, duas, dez. Eu tenho vários jeitos de chegar. Pode ser que eu consiga sair da Bianca, que depois vai chegar no Bob, pode ser uma estratégia. Como, por exemplo, o LinkedIn faz isso para falar dos seus amigos de primeiro, segundo, terceiro, quarto grau. Entendeu? Vocês conseguem bater isso para fechar o seu grafo. Mas, voltando para o nosso cenário, desculpa, foi muito longe. Voltando para o nosso cenário, a gente tem a Alice. A Alice tem 30 anos e ela mora em São Paulo. A Aresta está falando o seguinte, ela tem uma amizade que começou neste ano e a intensidade da amizade é forte ou seja, é uma chave forte com o Bob, que é uma ligação direta aqui no nosso caso essa de forte poderia ser 1, 2, 3, 10, 12 e assim por diante como por exemplo o caso do LinkedIn que eu falei e o Bob ele tem umidade de 25 localização Rio de Janeiro então você sabe que eles tem uma ligação direta essa é a idéia de quando a gente está usando o próprio gref desse jeito a gente vai ter essa história que diverte aresta que é como as coisas se correlacionam beleza no iphone vai te possibilitar usar esse tipo de estratégia é tem um outro jeito aqui que o rdf que também não é nenhuma novidade já é bem conhecido mas vamos dar uma passada por ele aqui. É uma estrutura que representa informações sobre os recursos web. No RDF, o que ele vai fazer? Os dados vão ser pensados em uma tríade, que vai ser o sujeito, o predicado e o objeto. Então sempre vai ser uma tríade. E essa tríade forma um grafo. E para consultar esse grafo, você pode usar esse SparkL. Essa forma de consulta, para você que é de banco de dados normal, é muito parecido com o Selecting Base, uma consulta normal de SQL, beleza? Lembra, tá? Dá para fazer correlação, ela lembra. Mas voltando, aqui você está falando então que o sujeito é o livro por exemplo, o predicado é um autor e o objeto é o autor 1, beleza? você está falando que o objeto por exemplo, aqui é o autor 1 desse desse case para usar a consulta você pode fazer o seguinte você pode usar o gremlin, você pode fazer o seguinte. Você pode usar o Gremlin. Desculpa que eu estava engolindo a saliva e coçando o dedo e parei para pensar aqui. O Gremlin é uma linguagem que você pode usar tanto para consulta de dados, mas em forma transversal. O que significa? Ele vai ser muito utilizado por primeiro caso que a gente falou lá, o Profit Graphs. Quando a gente fala que ele é transversal, ele vai andar entre as vértices e as arestas para encontrar os padrões, ou seja, para conseguir agrupar o que você precisa, para te trazer essa informação. É um pensamento um pouco diferente de quando a gente está falando de SQL. Ele vai pensar em navegar entre as transversais. Vamos dar um exemplo imagina lá a nossa amiga Alice ou Alice, sei lá a gente quer encontrar todos os amigos dela como é que ficaria? primeiro a gente começa falando aqui esse pedaço aqui é uma consulta a partir de todos os vértices, ou seja, eu quero ver tudo que tem beleza? a segunda parte eu estou falando que eu vou olhar a pessoa, então vai fazer um filtro ali pelo rótulo pessoa, e depois eu venho e falo assim olha, filtra pelos vértices que tem Alice ou seja, todo mundo que tiver algum vértice de Alice ali no meio do caminho, e depois vem na amizade beleza? você vai navegar pra todo mundo que tem amizade com a Alice e depois você vai retornar todos os nomes que você buscou aqui, basicamente. Beleza? Todos os nomes dos amigos da Alice. Ou seja, você pegou, você buscou a Alice e todo mundo que tem relação de amizade com ela. Você fechou uma chave aqui, querendo ou não, e daí com isso você consegue mapear todos os nomes que tem que tem amizade com ela, vai trazer todos os nomes. Beleza? É mais ou menos assim que funciona numa linha geral, lógico que a gente tem muito país para falar sobre o assunto, mas uma primeira passada para vocês entenderem assim que funciona. Quando a gente está falando dessa outra linguagem aqui, que é o RDF Query Language, ele vai ter uma linguagem, como eu falei, parecida com o nosso SQL, porque é query também, então vai ser um pouco parecido. Vocês vão ver que ele é bem mais fácil de entender. Ele vai fazer ali a busca por sujeito, predicado e objeto, normal, e vai ficar mais ou menos assim, gente. Acho que é melhor até vir pro exemplo pra vocês verem como a gente consegue entender mais parecido. Você quer achar todos os livros de um autor específico, por exemplo. Então você vai pegar aqui e vai fazer um select do livro do título e data da publicação onde livro é autor 1 o título é título e a data da publicação está aqui. Daí você pode pôr o título que você quiser, o autor que você quiser e assim por diante. Aqui são as variáveis. Mas, pensa no seguinte, é nada mais do que um select, vamos lá, não mudou muita coisa não, né? Basicamente esse é o jeito de consulta, é bem mais simples para quem está acostumado mais com banco de dados relacionais, assim por diante. Bom, como quase tudo na AWS, a gente pode falar o seguinte, esse banco dados ele vai ter aplicação automático que vai dar pra ele uma alta disponibilidade ou seja ele vai estar em 3 a 3 az ali e que vai dar a disponibilidade e durabilidade para ele também consegue fazer backup recuperação normal ali mesma coisa do que a gente falou dos outros colocando mais três pontos de recuperação e assim por diante está escalabilidade por também ele tem ele consegue fazer o rio é porque até 15 réplicas de leitura então você consegue aumentar muito a capacidade de leitura dele tá bom ea escala habilidade automática de armazenamento porque nesse caso esse banco fica grande tá sendo muito honesto ela tem ali um ela consegue aumentar é a sua capacidade de armazenamento ali até 64 terabytes que é bastante coisa também segurança mesma coisa do demais que eu vou falar de novo você pode fazer a criptografia de dados de repouso usando o KMS e você consegue fazer em trânsito usando SSL ou TLS que vão dar garantia que do seu dado não está sendo furtado nem visto por ninguém. E aqui você tem um controle de acesso que dá para fazer via IAM, normal também, vendo quem vai acessar ou não as suas informações dos seus bancos.