• Nenhum resultado encontrado

Análise do Resultado das Consulta com as Bases dos Mé todos M01/02, M03 e M

4 Experimentos e Resultados

4.3 Análise do Resultado das Consulta com as Bases dos Mé todos M01/02, M03 e M

Ap´os a execu¸c˜ao das dezoito consultas para os m´etodos M 01/M 02, M 03 e M 04, os dados foram tabulados, sendo, como j´a foi colocado, descartado o tempo da primeira execu¸c˜ao de cada consulta, considerados como de aquecimento da consulta. A partir do tempo das sete ´ultimas execu¸c˜oes de cada consulta foi calculado o tempo m´edio de cada consulta, seu desvio padr˜ao e o intervalo de confian¸ca da amostra.

No caso da consulta 13 para a Base1M ilhao, o segundo tempo de execu¸c˜ao foi, em todos os m´etodos, bastante discrepante em rela¸c˜ao ao tempo de execu¸c˜ao para as demais execu¸c˜oes. Ent˜ao, para esta consulta, o segundo valor tamb´em foi descartado no c´alculo da m´edia, desvio padr˜ao e intervalor de confian¸ca.

Os resultados foram tabulados nas tabelas 4.6 e 4.7, uma para cada uma das bases, cem mil e um milh˜ao de registros. Cada tabela cont´em as seguintes colunas:

• Consulta - n´umero da consulta;

• M 01 M 03 M 04- para cada umas das modelagens:

– M ED - tempo m´edio em milissegundos (ms) das 7 execu¸c˜oes das consultas nas bases dos m´etodos. Quando a m´edia exibida na c´elula corresponder a menor m´edia entre os m´etodos, o fundo da c´elula estar´a cinza escuro e os algarismos em negrito e it´alico. Caso outras das m´edias estejam dentro do intervalo de

Tabela 4.4: Experimentos - Rela¸c˜ao das Consultas Consulta Entidades Envolvidas Objetivo

01 D Retorna d st4 de todos os D com d st4 entre as letras ‘A’ e ‘J’.Utiliza apenas D em todos os m´etodos. 02 D×DC×C Lista elementos de D com maior ocorrˆC. encia de um mesmo elemento de

Testa desempenho com sele¸c˜ao por uma aresta e agrupamento. 03 D Retorna d st4, d st5, d int1 de todos os D com d st4 entre as letras ‘K’E ‘Z’ e com d en2 = 3 em ordem decrescente de d pk.

d st5, d int1 e d en2 podem estar em v´ertices diferentes.

04 H×C Retorna elementos de H combinados com C em duas datas.Testa desempenho quanto a busca num ´unico v´ertice ou mais de um v´ertices e arestas.

05 A×D

Retorna total de elementos de D para cada A. Grafo t´ıpico - Dois v´ertices e a aresta que os relaciona.

06 F com mais D Retorna o total de elementos de D para um mesmo F.Testa desempenho com sele¸ao e agrupamento variando o caminho per- corrido (v´ertices e arestas).

07 A×DgoA×A

Retorna total de elementos de D com d int4 = 1 para cada A. Dois v´ertices e um filtro na propriedade do v´ertice que os relaciona. 08 D×DB×B Lista D e a lista dos D ligados a ele para d pk < 10000 e b pk = 2.Testa desempenho conforme sele¸ao na aresta ou no v´ertice destino da

aresta. 09 G com mais D

Retorna o total de elementos de D para um par (F,G).

Testa desempenho com sele¸c˜ao e agrupamento variando o caminho per- corrido (v´ertices e arestas) e o local das propriedades usadas como filtro. 10 D×D com b pk 2 Retorna um grafo com os elementos de D e seus amigos.Testa o desempenho na sele¸ao de n´os com maior ou menor caminho de

arestas e v´ertices.

11 Maior A×B em D Pares (A, B) com maior ocorrˆDesempenho da consulta envolvendo diferentes v´encia entre elementos de D.ertices e arestas. 12 D×DC×C×A Lista elementos de D que tenham uma combina¸tos de C. c˜ao espec´ıfica de elemen-

Testa desempenho com sele¸c˜ao por duas arestas.

13 A×D×DE×E×B Pares (A e B) comuns a elementos de D com seu evento de e pk=4ocorrido no ano de 1985 Desempenho da consulta envolvendo diversos v´ertices e arestas e sele¸c˜ao por propriedades de v´ertices ou arestas.

14 A1×D×B×A2

Seleciona todos os elementos de D com determinada ocorrˆencia de A que tenham amigos com uma outra ocorrˆencia espec´ıfica de A.

Testa desempenho e sele¸c˜ao percorrendo duas vezes as mesmas arestas. 15 A×B×C×D×E×F×G (rela¸c˜ao)

Lista elementos de D combinados com DC, B, D novamente e A. Testa desempenho percorrendo todo o grafo, exceto o v´ertice H. Retorna o resultado na forma de rela¸c˜ao.

16 A×B×C×D×E×F×G (v´ertice)

Retorna um grafo com os n´os D, DC, B, D novamente e A. Testa desempenho percorrendo todo o grafo, exceto o v´ertice H. 17 Caminho M´ınimo entre D=1 e D=2. Calcula o caminho m´ınimo entre dois elementos de D.Testa o desempenho e o caminho retornado conforme o n´umero de v´er-

tices e arestas envolvidos. 18 Todos os Caminhos M´ınimos entre D=1 e D=2.

Calcula todos os caminhos m´ınimos entre dois elementos de D. Testa o desempenho e os caminhos retornados conforme o n´umero de v´ertices e arestas envolvidos.

confian¸ca, para mais ou para menos, ent˜ao a c´elula estar´a com fundo cinza claro e os algarismos em negrito e it´alico;

– DP - desvio padr˜ao do tempo das 7 execu¸c˜oes;

– IC - intervalo de confian¸ca da distribui¸c˜ao t de student para as 7 execu¸c˜oes, com 95% de confian¸ca. Na consulta 6 para a Base1M ilhao

A an´alise dos tempos m´edios expostos nas tabelas para os m´etodos M 01, M 03 e M 04 permite afirmar que nenhum dos m´etodos se mostrou melhor ou pior que os demais, sendo cada solu¸c˜ao mais ou menos adequada conforme o tipo de consulta efetuada.

Tabela 4.5: Experimentos - Consultas por Tipo

Caracter´ısitica das Consultas Consultas

Quantidade de elementos do v´ertice 01/02

V´ertice ´unico ou Mais de Um v´ertice 03/04

V´ertice –> Aresta –> V´ertice SEM Filtro 05/06 V´ertice –> Aresta –> V´ertice COM Filtro na Aresta 07

V´ertice –> Aresta –> V´ertice COM Filtro na Aresta OU V´ertice 08/09/10

Quantidade de Arestas Envolvidas 11/12

Quantidade de Arestas Envolvidas COM Filtro na Aresta OU V´ertice 13

Caminho Repetido 14

Percorrer todas as entidades 15/16

Caminho M´ınimo com Mais ou Menos Arestas 17/18

Tabela 4.6: Experimentos - Base100Mil - 7 Execu¸c˜oes da Consulta (M01/02, M03 e M04) - tempo em ms Cons M01/M02 M03 M04 M ´ED DP IC M´ED DP IC M´ED DP IC 01 396 57,6 53,3 413 108,2 100,1 386 60,8 56,3 02 2.500 143,1 132,3 2.695 32,7 30,2 2.179 139,0 128,6 03 176 19,9 18,4 85 28,6 26,5 141 13,9 12,9 04 15 5,1 4,8 8.408 33,8 31,3 9 2,3 2,1 05 2.477 44,6 41,2 2.580 14,6 13,5 2.454 17,7 16,4 06 868 79,1 73,2 1.965 33,6 31,1 352 42,6 39,4 07 1.681 48,8 45,1 1.960 94,9 87,7 1.750 68,5 63,4 08 1.613 17,3 16,0 1.712 57,6 53,2 1.290 67,3 62,2 09 494 39,5 36,5 579 25,1 23,2 564 69,0 63,9 10 56 4,6 4,3 49 5,4 5,0 52 3,9 3,6 11 21 3,0 2,7 20 3,3 3,1 15 6,0 5,5 12 380 29,4 27,2 566 8,9 8,2 254 6,9 6,4 13 1.485 47,1 43,5 1.929 37,6 34,8 1.282 63,3 58,6 14 74 6,9 6,4 67 10,7 9,9 59 2,3 2,1 15 38 3,4 3,1 130 4,0 3,7 1.332 42,8 39,6 16 39 4,4 4,1 129 5,9 5,5 1.352 127,4 117,8 17 15 3,0 2,8 15 1,4 1,3 11 3,0 2,8 18 16 1,9 1,8 17 2,4 2,2 13 2,7 2,5

esquema, consulta a consulta, dos v´ertices e arestas envolvidos, at´e a an´alise dos resultados da consulta, o script em Cypher de todas as consultas e os tempos de cada execu¸c˜ao das consultas, m´etodo por m´etodo e base a base.

Da an´alise do resultado, pode-se verificar que:

• a consulta 01, que envolveu apenas um tipo de v´ertice, D, tendo como variante o n´umero de propriedades do v´ertice, mostrou um melhor desempenho para o m´etodo

Tabela 4.7: Experimentos - Base1Milhao - 7 Execu¸c˜oes da Consulta (M01/02, M03 e M04) - tempo em ms Cons M01/M02 M03 M04 M ´ED DP IC M ´ED DP IC M ´ED DP IC 01 4.434 136,2 126,0 3.670 148,6 137,4 4.236 146,2 135,2 02 263.445 34.504,3 31.911,1 468.496 14.869,6 13.752,1 469.688 31.194,8 28.850,4 03 1.473 36,9 34,1 547 9,4 8,7 1.378 40,4 37,4 04 15 4,0 3,7 6.147 34,9 32,3 10 1,8 1,6 05 26.017 20,4 18,9 27.172 21,2 19,6 25.797 97,6 90,3 06(*) 20.706 190,4 176,0 21.921 107,5 99,4 2.763 93,8 86,8 07 21.475 153,7 142,2 16.628 144,1 133,3 19.727 191,7 177,3 08 1.328 15,3 14,1 1.275 28,5 26,4 1.094 25,1 23,2 09 440 7,5 7,0 796 40,3 37,3 3.203 79,7 73,7 10 76 6,1 5,6 47 5,0 4,7 46 4,3 3,9 11 110 2,0 1,9 126 2,6 2,4 100 6,2 5,7 12 3.117 92,9 85,9 29.460 3.502,9 3.239,6 2.145 34,1 31,6 13 11.650 299,3 314,1 75.012 1.251,3 1.313,1 10.944 291,9 306,3 14 454 26,3 24,3 565 43,3 40,0 491 8,0 7,4 15 340 11,2 10,3 697 37,6 34,8 9.147 74,4 68,8 16 334 15,8 14,6 642 21,2 19,6 9.342 77,7 71,8 17 59 10,6 9,8 60 11,0 10,2 42 3,4 3,2 18 51 6,4 5,9 55 8,8 8,2 48 2,9 2,7

(*) foram descartados o tempo de execu¸c˜ao das duas primeiras consultas de cada m´etodo

M 03, onde D possui apenas 2 propriedades, ao contr´ario das demais onde D tem 5 propriedades;

• a consulta 04 mostrou que sintetizar dados num ´unico v´ertice torna a opera¸c˜ao mais r´apida (M 04) quando o intervalo pesquisado for pequeno, entretanto quando o intervalo for grande, como na consulta 02, o tempo diminui se o v´ertice filtrado for aquele com menor n´umero de atributos;

• as consultas 05 e 07 refor¸cam a constata¸c˜ao que selecionar v´ertices com menor n´umero de propriedades produz um melhor desempenho nas consultas;

• as consultas 06, 11, 13, 17 e 18 demonstraram que diminuir a travessia realmente diminui o tempo da consulta, ent˜ao quanto menos v´ertices e arestas estiverem en- volvidos nas consultas melhor o desempenho.

Disso tudo, pode-se entender que:

• compactar a base unificando entidades num ´unico v´ertice se revelou uma boa estra- t´egia quando a aplica¸c˜ao n˜ao tem muitos filtros com os dados unificados;

• consultas executam melhor quando os v´ertices envolvidos tˆem um menor n´umero de atributos;

• quanto maior o caminho, maior o tempo se n˜ao houver filtragem;

• quando um atributo de um v´ertice for constantemente utilizado como filtro de con- sultas e n˜ao for um atributo que funcione como um identificador do elemento, nesse caso cabe sim criar um v´ertice para ele.

Com base na an´alise dos resultados dessas consultas, foi desenvolvido o m´etodo objeto desta disserta¸c˜ao, conforme exposto no cap´ıtulo 3.

Em seguida, uma nova base foi gerada conforme o novo m´etodo de modelagem e a mesma foi submetida `as mesmas consultas aqui expostas. A an´alise dessas consultas vem colocado na pr´oxima se¸c˜ao.