grafos com neo4j: de hidrelétricas a · 2016-08-26 · neo4j slack users neo4j training (gratuito)...
TRANSCRIPT
![Page 1: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/1.jpg)
Grafos com Neo4j:Grafos com Neo4j:de hidrelétricas ade hidrelétricas a
eletrônicoseletrônicos
#qconsp @hannelita
![Page 2: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/2.jpg)
Olá!Olá!EngenhariaProgramaçãoEletrônicaMatemáticaFísicaLegoMeetupsCaféGIFs
#qconsp @hannelita
![Page 3: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/3.jpg)
DisclaimerDisclaimerEste conteúdo representa a opinião eEste conteúdo representa a opinião e
vivência pessoais da palestrante.vivência pessoais da palestrante.
Feedback (para concordar ou não)Feedback (para concordar ou não)aceito em [email protected] em [email protected]
Nem todos os dados numéricos ouNem todos os dados numéricos ounomes são verdadeiros, a fim de nãonomes são verdadeiros, a fim de não
comprometer sigilo empresarialcomprometer sigilo empresarial
Todos os dados de modelagem sãoTodos os dados de modelagem sãoreais. Desculpem o possível linguajarreais. Desculpem o possível linguajar
muito técnico.muito técnico.
![Page 4: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/4.jpg)
Estrutura - CasesEstrutura - Cases
Contextualização do caso de usoTentativa de modelagem relacional (e falhas)Modelagem com grafosEvolução do modeloEpic fails
ConclusãoConclusãoBenefíciosFerramentas de Apoio
#qconsp @hannelita
![Page 5: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/5.jpg)
Title TextTitle Text
![Page 6: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/6.jpg)
Já ficou no escuro?Já ficou no escuro?
![Page 7: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/7.jpg)
Faltou energiaFaltou energiaelétrica?elétrica?
![Page 8: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/8.jpg)
À luz de velas <3À luz de velas <3
![Page 9: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/9.jpg)
O Brasil é um grandeO Brasil é um grandeprodutor de energiaprodutor de energia
elétrica.elétrica.
#qconsp @hannelita
![Page 10: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/10.jpg)
Especialmente aEspecialmente apartir de usinaspartir de usinas
hidrelétricashidrelétricas
#qconsp @hannelita
![Page 11: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/11.jpg)
Caso 1 -Caso 1 -ContextualizaçãoContextualização
#qconsp @hannelita
![Page 12: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/12.jpg)
Como se dá a distribuição de energiaelétrica? E a distribuição de usinas?
#qconsp @hannelita
![Page 13: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/13.jpg)
http://sigel.aneel.gov.br/sigel.html
Acessado em 28/3/2016
![Page 14: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/14.jpg)
http://sigel.aneel.gov.br/sigel.html
Acessado em 28/3/2016
![Page 15: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/15.jpg)
3
Algumas informações Algumas informações contidascontidas nessenessemapamapa
Localização da usina
Linhas de transmissão
Capacidade de fornecimento
Capacidade da usina
Cidades próximas
Distribuição
Fronteiras estaduais
Bacia hidrográfica
Concessões
Elétrica
Política
AmbientalEconômico
#qconsp @hannelita
![Page 16: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/16.jpg)
DesafioDesafioConstruir um sistema queConstruir um sistema que
armazene essasarmazene essasinformações e como elas seinformações e como elas se
relacionamrelacionam
#qconsp @hannelita
![Page 17: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/17.jpg)
Caso 1 - Tentativa deCaso 1 - Tentativa demodelagem commodelagem combanco de dadosbanco de dados
relacionalrelacional#qconsp @hannelita
![Page 18: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/18.jpg)
1 1
1 1
Elétrica Política
Ambiental Econômico
CREATE TABLE usina; CREATE TABLE cidade;
CREATE TABLEregiao_hidrografica;
CREATE TABLEcencessionaria;
![Page 19: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/19.jpg)
1
Pergunta 1:Pergunta 1:Como representar umaComo representar umavizinhança de usinas?vizinhança de usinas?
Auto-relacionamento;Denormalizar (usinas_vizinhas_ids)
#qconsp @hannelita
![Page 20: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/20.jpg)
1
1
Pergunta 2:Pergunta 2:Como identificar facilmente qual usinaComo identificar facilmente qual usinadeve atender a uma região específica?deve atender a uma região específica?
id consumo(mensal, emMwh)
populacao(em milhões)
coordenada
1 40 13
2 11 2
cidade
id Capacidade (Mwh)
linha detransmissão(PK)
coordenada
1 95 22
2 11 1
usina
1. Dado umconjunto decoordenadas,somar apopulação dopolígonoresultante
#qconsp @hannelita
![Page 21: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/21.jpg)
1
1
Pergunta 2:Pergunta 2:Como identificar facilmente qual usinaComo identificar facilmente qual usinadeve atender a uma região específica?deve atender a uma região específica?
id consumo(mensal, emMwh)
populacao(em milhões)
coordenada
1 40 13
2 11 2
cidade
id Capacidade (Mwh)
linha detransmissão(PK)
coordenada
1 95 22
2 11 1
usina
2. Aproximarcoordenadas das
usinas maispróximas baseado-se na capacidade
#qconsp @hannelita
![Page 22: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/22.jpg)
1
1
2
Pergunta 2:Pergunta 2:Como identificar facilmente qual usinaComo identificar facilmente qual usinadeve atender a uma região específica?deve atender a uma região específica?
id consumo(mensal, emMwh)
populacao(em milhões)
coordenada
1 40 13
2 11 2
cidade
id Capacidade (Mwh)
linha detransmissão(PK)
coordenada
1 95 22
2 11 1
usina
3. Verificar ascaracterísticas na
tabela delinhas_de_transmissao
#qconsp @hannelita
![Page 23: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/23.jpg)
Não é tãoNão é tãocomplicado assim...complicado assim...
#qconsp @hannelita
![Page 24: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/24.jpg)
Mas não acabou! Mas não acabou!
#qconsp @hannelita
![Page 25: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/25.jpg)
1
1
2
Pergunta 2:Pergunta 2:Como identificar facilmente qual usinaComo identificar facilmente qual usinadeve atender a uma região específica?deve atender a uma região específica?
id consumo(mensal, emMwh)
populacao(em milhões)
coordenada
1 40 13
2 11 2
cidade
id Capacidade (Mwh)
linha detransmissão(PK)
coordenada
1 95 22
2 11 1
usina
4. Verificar se háindústrias nas
proximidades dascidades
#qconsp @hannelita
![Page 26: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/26.jpg)
1
1
2
Pergunta 2:Pergunta 2:Como identificar facilmente qual usinaComo identificar facilmente qual usinadeve atender a uma região específica?deve atender a uma região específica?
id consumo(mensal, emMwh)
populacao(em milhões)
coordenada
1 40 13
2 11 2
cidade
id Capacidade (Mwh)
linha detransmissão(PK)
coordenada
1 95 22
2 11 1
usina
5. Verificar IDH dacidade.
#qconsp @hannelita
![Page 27: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/27.jpg)
1
1
2
Pergunta 2:Pergunta 2:Como identificar facilmente qual usinaComo identificar facilmente qual usinadeve atender a uma região específica?deve atender a uma região específica?
id consumo(mensal, emMwh)
populacao(em milhões)
coordenada
1 40 13
2 11 2
cidade
id Capacidade (Mwh)
linha detransmissão(PK)
coordenada
1 95 22
2 11 1
usina
6. Verificar interesse daconcessionária
#qconsp @hannelita
![Page 28: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/28.jpg)
1
1
2
Pergunta 2:Pergunta 2:Como identificar facilmente qual usinaComo identificar facilmente qual usinadeve atender a uma região específica?deve atender a uma região específica?
id consumo(mensal, emMwh)
populacao(em milhões)
coordenada
1 40 13
2 11 2
cidade
id Capacidade (Mwh)
linha detransmissão(PK)
coordenada
1 95 22
2 11 1
usina
7. Verificar se regiãopode ser abastecida
por energia de outrasfontes
#qconsp @hannelita
![Page 29: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/29.jpg)
1
1
2
Pergunta 2:Pergunta 2:Como identificar facilmente qual usinaComo identificar facilmente qual usinadeve atender a uma região específica?deve atender a uma região específica?
id consumo(mensal, emMwh)
populacao(em milhões)
coordenada
1 40 13
2 11 2
cidade
id Capacidade (Mwh)
linha detransmissão(PK)
coordenada
1 95 22
2 11 1
usina
7. Verificar se regiãopode ser abastecida
por energia de outrasfontes
#qconsp @hannelita
![Page 30: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/30.jpg)
#qconsp @hannelita
![Page 31: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/31.jpg)
Pergunta 3:Pergunta 3:Sabendo que as usinas operam comoSabendo que as usinas operam como
um "grande cabo-de-guerra deum "grande cabo-de-guerra demúltiplas pontas", como determinar amúltiplas pontas", como determinar aredistribuição de cargas se uma usinaredistribuição de cargas se uma usina
cair?cair?
#qconsp @hannelita
![Page 32: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/32.jpg)
Pergunta 3:Pergunta 3:Sabendo que as usinas operam comoSabendo que as usinas operam como
um "grande cabo-de-guerra deum "grande cabo-de-guerra demúltiplas pontas", como determinar amúltiplas pontas", como determinar aredistribuição de cargas se uma usinaredistribuição de cargas se uma usina
cair?cair?
#qconsp @hannelita
![Page 33: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/33.jpg)
Talvez tabelas não sejam as melhoresestruturas para representar informações
sobre distribuição de eletricidade
#qconsp @hannelita
![Page 34: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/34.jpg)
Neo4j chega paraNeo4j chega pararesolver! resolver!
#qconsp @hannelita
![Page 35: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/35.jpg)
Introdução relâmpago aoIntrodução relâmpago aoNeo4jNeo4j
Banco orientado a grafosACIDEstruturas de Node, Relationship, Index e LabelMantido pela Neo TechnologyOpen SourceComunidade ativa
#qconsp @hannelita
![Page 36: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/36.jpg)
Caso 1 - ModelagemCaso 1 - Modelagemcom grafoscom grafos
#qconsp @hannelita
![Page 37: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/37.jpg)
Passo 1 - Unisas sePasso 1 - Unisas setornam nóstornam nós
#qconsp @hannelita
![Page 38: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/38.jpg)
Powered by Arrows - http://www.apcjones.com/arrows/#
CREATE (n:Usina:Hidreletrica { name : 'Itaipu', capacidade :'14000' })
#qconsp @hannelita
![Page 39: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/39.jpg)
3
Passo 2 - Cidades sePasso 2 - Cidades setornam nóstornam nós
#qconsp @hannelita
![Page 40: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/40.jpg)
3
Passo 3 - Linhas dePasso 3 - Linhas detransmissão setransmissão se
tornamtornamrelacionamentos! relacionamentos!
#qconsp @hannelita
![Page 41: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/41.jpg)
Itaipu - IvaiporãItaipu - Ivaiporã
#qconsp @hannelita
![Page 42: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/42.jpg)
MATCH (a:Hidreletrica),(b:Cidade)WHERE a.name = 'Itaipu' AND b.name = 'Ivaipora'
CREATE (a)-[r:FORNECE { capacidade_cabo : 765, rl : 330 }]->(b)
#qconsp @hannelita
![Page 43: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/43.jpg)
MúltiplosMúltiplosrelacionamentosrelacionamentos
para diversas linhaspara diversas linhas
#qconsp @hannelita
![Page 44: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/44.jpg)
MATCH (a:Hidreletrica),(b:Cidade) WHERE a.name = 'Itaipu' AND b.name = 'Cascavel Oeste' CREATE (a)-[r:FORNECE { capacidade_cabo : 500 }]->(b)
MATCH (a:Cidade),(b:Cidade) WHERE a.name = 'Ivaipora' AND b.name = 'Cascavel Oeste' CREATE (a)-[r:MALHA { capacidade_cabo : 500 }]->(b)
#qconsp @hannelita
![Page 45: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/45.jpg)
3
Passo 4 -Passo 4 -Concessionárias seConcessionárias se
tornam nós tornam nós
#qconsp @hannelita
![Page 46: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/46.jpg)
CREATE (n:Concessionaria { name : 'Ficticio', porcentagem : 85, margem : 72 })
MATCH (a:Concessionaria),(b:Cidade) WHERE a.name = 'Ficticio' AND b.name = 'Cascavel Oeste' CREATE (a)-[r:ATENDE]->(b)
MATCH (a:Concessionaria),(b:Usina) WHERE a.name = 'Ficticio' AND b.name = 'Ita' CREATE (a)-[r:POSSUI]->(b)
#qconsp @hannelita
![Page 47: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/47.jpg)
3
Passo 5 - QueriesPasso 5 - Queriespoderosas poderosas MATCH (n:Usina {capacidade : 14000}),
(c:Cidade {name : 'Sao Paulo'})p = shortestPath((n)-[]-(c)) RETURN p
Queries para determinar otimização deabastecimento através de caminho
mínimo
#qconsp @hannelita
![Page 48: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/48.jpg)
Caso 1 - Evolução doCaso 1 - Evolução domodelomodelo
#qconsp @hannelita
![Page 49: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/49.jpg)
Muito importante:Muito importante:Index nasIndex nas
propriedades maispropriedades maisutilizadasutilizadas
Capacidade, populacao, coordenadas
#qconsp @hannelita
![Page 50: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/50.jpg)
Muito importante[2]:Muito importante[2]:LabelsLabels
:Cidade, :Metropole, :Industrial,:Hidreletrica, :Eolica, :Privada
Em geral, elementos agrupáveis merecemuma Label.
#qconsp @hannelita
![Page 51: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/51.jpg)
Evolução -Evolução -Transformar outrosTransformar outroselementos elétricoselementos elétricos
em nósem nós
#qconsp @hannelita
![Page 52: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/52.jpg)
CREATE (n:Componente:Transformador { tag : 'F. Iguacu', tipo : 'Terciario', mva : 1650, total : 4 })
MATCH (a:Transformador),(b:Usina) WHERE a.tag = 'F. Iguacu' AND b.name = 'Itaipu' CREATE (a)-[r:INSTALADO]->(b)
#qconsp @hannelita
![Page 53: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/53.jpg)
O Neo4j é bemO Neo4j é bemflexível paraflexível paraevoluirmos oevoluirmos o
modelomodelo
#qconsp @hannelita
![Page 54: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/54.jpg)
Caso 1 - Epic FailsCaso 1 - Epic Fails
#qconsp @hannelita
![Page 55: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/55.jpg)
Muitos nós paraMuitos nós paracidades - não eracidades - não era
necessário ter um nónecessário ter um nópara cada cidadepara cada cidade
ProblemaProblema
#qconsp @hannelita
![Page 56: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/56.jpg)
Muita informaçãoMuita informaçãocarregada nocarregada no
MATCH; queriesMATCH; querieslentaslentas
ImpactoImpacto
#qconsp @hannelita
![Page 57: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/57.jpg)
Deixar as :CidadesDeixar as :Cidadesmais relevantes emais relevantes e
criar :Regiao; excluircriar :Regiao; excluircidadescidades
inexpressivasinexpressivas
SoluçãoSolução
#qconsp @hannelita
![Page 58: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/58.jpg)
Não declarar todasNão declarar todasas operações numas operações num
arquivo paraarquivo parareplicação.replicação.
ProblemaProblema
#qconsp @hannelita
![Page 59: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/59.jpg)
Problemas comProblemas combackup / replicação. backup / replicação.
ImpactoImpacto
#qconsp @hannelita
![Page 60: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/60.jpg)
Não rodar CREATENão rodar CREATEna interface Web! na interface Web!
Adicionar queries em um repositório Git- https://github.com/hannelita/qconsp
SoluçãoSolução
#qconsp @hannelita
![Page 61: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/61.jpg)
Caso 1 - Extra - "OCaso 1 - Extra - "Opulo do gato"pulo do gato"
#qconsp @hannelita
![Page 62: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/62.jpg)
EncontrarEncontrarinformaçõesinformações
que passaram que passaram despercebidas fazdespercebidas faztoda a diferençatoda a diferença
#qconsp @hannelita
![Page 63: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/63.jpg)
Mapear osMapear oscomponentes emcomponentes em
nós, por exemplo, foinós, por exemplo, foisignificativosignificativo
#qconsp @hannelita
![Page 64: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/64.jpg)
MapearMapearComponentes...Componentes...
#qconsp @hannelita
![Page 65: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/65.jpg)
Caso 2 -Caso 2 -ContextualizaçãoContextualização
#qconsp @hannelita
![Page 66: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/66.jpg)
A-HA! Nós podemosA-HA! Nós podemosusar grafos para [...]usar grafos para [...]
(complete)(complete)
#qconsp @hannelita
![Page 67: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/67.jpg)
Roteamento daRoteamento daplaca / traçar asplaca / traçar as
trilhas.trilhas.
#qconsp @hannelita
![Page 68: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/68.jpg)
Sim! Mas podemos irSim! Mas podemos iralém.além.
Vamos analisar eVamos analisar earmazenar o layoutarmazenar o layout
das placas e dosdas placas e doscomponentes.componentes.
#qconsp @hannelita
![Page 69: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/69.jpg)
Caso 2 - Tentativa deCaso 2 - Tentativa demodelagemmodelagem
relacionalrelacional
#qconsp @hannelita
![Page 70: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/70.jpg)
11
1 1
Componente Trilha
Sensor Layer
CREATE TABLEcomponente;
CREATE TABLE trilha;
CREATE TABLE sensor; CREATE TABLE layer;
![Page 71: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/71.jpg)
Pergunta 1Pergunta 1Um sensor capta elevaçãoUm sensor capta elevação
de temperatura. Comode temperatura. Comoinferir se é problema doinferir se é problema do
componente ou da trilha?componente ou da trilha?
#qconsp @hannelita
![Page 72: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/72.jpg)
1
Pergunta 1Pergunta 1É preciso consultar outrosÉ preciso consultar outrossensores, geralmente ossensores, geralmente ossensores vizinhos. Comosensores vizinhos. Comoexpressar isso na tabela?expressar isso na tabela?
Auto-relacionamento;Denormalizar (sensores_vizinhos_ids)
Déjà vu!
#qconsp @hannelita
![Page 73: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/73.jpg)
Pergunta 2Pergunta 2Qual a trilha que afeta maisQual a trilha que afeta mais
componentes?componentes?
#qconsp @hannelita
![Page 74: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/74.jpg)
Pergunta 3Pergunta 3Será que consigo extrairSerá que consigo extrairalguma informação extraalguma informação extra
do circuitodo circuito
representando-o numrepresentando-o numgrafo?grafo?
#qconsp @hannelita
![Page 75: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/75.jpg)
Caso 2 - ModelagemCaso 2 - Modelagemcom Grafoscom Grafos
#qconsp @hannelita
![Page 76: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/76.jpg)
Passo 1:Passo 1:Componentes emComponentes em
nodesnodesCREATE (n:Componente:Primario { name : 'R1', tipo : 'resistor', valor : '10K' })
CREATE (n:Componente:Primario { name : 'C1', tipo : 'capacitor', grupo : 'poliester', valor : '100p' })
CREATE (n:Componente:CI { name : 'CI1', tipo : 'LM741', fabricante : 'Texas' })
#qconsp @hannelita
![Page 77: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/77.jpg)
Passo 2: MapearPasso 2: Mapeartrilhas emtrilhas em
relacionamentosrelacionamentos
MATCH (a:Primario),(c:CI) WHERE a.name = 'R1' AND c.name = 'CI1' CREATE (a)-[r:TRILHA { espessura : 2, dilatacao : 0.5 }]->(c)
#qconsp @hannelita
![Page 78: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/78.jpg)
Passo 3: MapearPasso 3: MapearLayers em LabelsLayers em Labels
CREATE (n:Componente:Primario:LAYER1 { name : 'R1', tipo : 'resistor', valor : '10K' })
CREATE (n:Componente:Primario:LAYER2 { name : 'C1', tipo : 'capacitor', grupo : 'poliester', valor : '100p' })
CREATE (n:Componente:CI:LAYER1 { name : 'CI1', tipo : 'LM741', fabricante : 'Texas' })
Fácil de recuperar todos os componentesde uma Layer e suas trilhas
#qconsp @hannelita
![Page 79: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/79.jpg)
Caso 2 - Evolução doCaso 2 - Evolução domodelomodelo
#qconsp @hannelita
![Page 80: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/80.jpg)
Passo 4: Mapear osPasso 4: Mapear osSensores em NodesSensores em Nodes
CREATE (n:Sensor:LAYER1 { name : 'SS1', tipo : 'luz'})
CREATE (n:Sensor:LAYER2 { name : 'SS2', tipo : 'temperatura' })
MATCH (a:Primario),(s:Sensor) WHERE a.name = 'R1' AND c.name = 'SS1' CREATE (s)-[r:MONITORA { luz : 2 }]->(a)
MATCH (a:Primario),(s:Sensor) WHERE a.name = 'R1' AND c.name = 'SS2' CREATE (s)-[r:MONITORA { temperatura : 37 }]->(a)
#qconsp @hannelita
![Page 81: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/81.jpg)
MATCH (n:Sensor)-[r:MONITORA]-(c:Componente)WHERE n.temperatura > 60RETURN c.name, r.dilatacao
Decidir se é o componente que está comproblemas ou se é a trilha.
Passo 5: Rodar periodicamente a seguintequery
#qconsp @hannelita
![Page 82: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/82.jpg)
Caso 2 - Epic FailsCaso 2 - Epic Fails
#qconsp @hannelita
![Page 83: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/83.jpg)
Muitos updates dosMuitos updates dossensores. O Neo4jsensores. O Neo4j
tem algumastem algumaslimitações paralimitações para
write.write.
ProblemaProblema
#qconsp @hannelita
![Page 84: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/84.jpg)
PerformancePerformancecomprometida e altocomprometida e alto
consumo de RAM.consumo de RAM.
ImpactoImpacto
#qconsp @hannelita
![Page 85: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/85.jpg)
Remover os nós deRemover os nós dealguns sensores ou iralguns sensores ou irmigrar para a versãomigrar para a versão
Enterprise.Enterprise.
SoluçãoSolução
#qconsp @hannelita
![Page 86: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/86.jpg)
1
Chegando ao Chegando ao fimfim!!
Modelos com flexibilidadeIdentificar relações ocultasFácil de iniciar os trabalhosProduto ativo e comunidade fortePode ser útil em muitos cenários, muito além deredes sociais ou sistemas de recomendação
#qconsp @hannelita
![Page 87: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/87.jpg)
1
Ferramentas de ApoioFerramentas de Apoio
(Bancos Relacionais, MongoDB,Cassandra, JSON, CSV)Ferramentas de visualizaçãoREST API no Neo4j
Importação de dados
#qconsp @hannelita
![Page 88: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/88.jpg)
ReferênciasReferências
SigelBIGONS
(Ferramenta para Sketch)
Neo4j Meetup em São PauloNeo4j Slack UsersNeo4j Training (Gratuito)Arrows
#qconsp @hannelita
![Page 89: Grafos com Neo4j: de hidrelétricas a · 2016-08-26 · Neo4j Slack Users Neo4j Training (Gratuito) Arrows #qconsp @hannelita. 2 2 Agradecimentos Neo Technology, @lyonwj, @ryguyrg](https://reader033.vdocuments.pub/reader033/viewer/2022050507/5f989c74d74a7200ef5af82c/html5/thumbnails/89.jpg)
2
2
AgradecimentosAgradecimentosNeo Technology, @lyonwj, @ryguyrg e @mesirii B.C., pelo excelente feedback e review@Codeminer42
#qconsp @hannelita
Prof. Maurílio e Justino, por sempre me incentivarem.