A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Índices secundários, avail list e truques para o TP3 Fábio Dias

Apresentações semelhantes


Apresentação em tema: "Índices secundários, avail list e truques para o TP3 Fábio Dias"— Transcrição da apresentação:

1 Índices secundários, avail list e truques para o TP3 Fábio Dias

2 O que vai acontecer hoje? TP3 Índices secundários Melhorando nosso índice primário Avail list Usuário compra música Dúvidas

3 TP3 Este trabalho prático é uma continuação do TP2. Todas as definições e funcionalidades do TP2 (e TP1) devem ser mantidas neste trabalho. Todas as bases de dados e formatos Todas as funcionalidades (vocês entenderam o espírito né?)

4 TP3 - Objetivos Implementação de consultas por índices secundários Implementar uma política de tratamento de registros excluídos na base de músicas, através do conceito de avail list. Suporte à compra de músicas e sugestão musical.

5 Implementação Capacidade de consulta ao banco de dados de músicas através de: – Palavras inteiras do do nome da música, utilizando busca binária no indice. – Palavras inteiras do nome do autor. – Palavras inteiras do nome do disco. – Palavras inteiras do gênero.

6 Buscas Palavras inteiras. Caso contrário, a busca binária não funcionará. – Idéias juntando ambas serão bem vindas, mas não cobradas. Deverão ser insensíveis a maiusculas / minusculas.

7 Buscas - Exemplo Músicas no banco: – Cara feia – Cara nua Termo de busca: – Cara ou cara ou CARA ou cArA (....) – Todos estes devem retornar as duas músicas – Buscas por ara ou car, não devem retornar estas músicas

8 Implementação Implementação do tratamento dos registros excluídos da base de músicas através do conceito visto em sala de avail list, com os dados armazenados no arquivo do banco de dados. Caso a política implementada no TP2 seja diferente, apresente vantagens e desvantagens entre as duas. Podemos implementar a mesma política nas duas bases de dados (música e usuários) ?

9 Implementação Capacidade de compra de músicas. O programa deverá armazenar quais músicas cada usuário comprou. O método mais adequado para isto é a criação de uma nova base de dados, contendo a chave primária do usuário (que identifica o usuário unicamente, no nosso caso o login) e a chave primária de música (o nome da música). Utilizem o nome comprasXX.dat.

10 Implementação Deverá ser implementado também um sistema de sugestões de compras de músicas realizadas através de consultas aos índices secundários. Por exemplo, quando determinado usuário escolher uma música, indique outras do mesmo disco/autor/gênero ou, a opção mais completa e exata, que sugere outras músicas compradas por quem já comprou aquela música.

11 TP3 Data de entrega: 03/05/2007 (até as 23:59)

12 Datas DomSegTerQuaQuiSexSáb /mai /jun

13 O que vai acontecer hoje? TP3 Índices secundários Melhorando nosso índice primário Avail list Usuário compra música Dúvidas

14 Índices secundários Chave Primária“Ponteiro” para o registro no arquivo Beatriz1596 Cara feia4332 Mandei avisar2964 Só as mães são felizes 2052 (...) Chave Secundária Chave primária Ana CarolinaBeatriz Barão Vermelho Só as mães são felizes Gabriel o Pensador Cara feia Gabriel o Pensador Mandei avisar (...) Qual o motivo para o índice secundário não conter o “ponteiro” para o arquivo?

15 Tornando Eficiente Chave SecundáriaChave primária Ana CarolinaBeatriz Barão VermelhoSó as mães são felizes Gabriel o PensadorCara feia Gabriel o PensadorMandei avisar (...)

16 Tornando Eficiente Chave Secundária Entrada Ana Carolina4 Barão Vermelho 1 Gabriel o Pensador 2 (...) Chave primáriapróximo Só as mães são felizes Mandei avisar3 Cara Feia Beatriz (...)

17 Busca Chave Secundária Entrada Ana Carolina4 Barão Vermelho 1 Gabriel o Pensador 2 (...) Chave primáriapróximo Só as mães são felizes Mandei avisar3 Cara Feia Beatriz (...) Gabriel o Pensador {“Mandei avisar”,”Cara Feia”}

18 Busca {“Mandei avisar”,”Cara Feia”} Chave Primária “Ponteiro” Beatriz1596 Cara feia4332 Mandei avisar2964 Só as mães são felizes 2052 (...) Banco Cara Feia – Gabriel o Pensador – 4:27 – Ao vivo MTV – Rap Mandei avisar – Gabriel o Pensador – 4:29 – Ao vivo MTV – Rap

19 O que vai acontecer hoje? TP3 Índices secundários Melhorando nosso índice primário Avail list Usuário compra música Dúvidas

20 Melhorando nosso indice primário Chave Primária Entrada Cara feia4332 Cara nua2964 (...) Chave primáriapróximo Cara feia2 Cara nua Cara feia Cara nua (...) Chave Secundária Entrada Cara1 Feia3 Nua4 (...) Estamos substituindo o índice primário?

21 Melhorando nosso indice primário Chave Primária arquivo Cara feia4332 Cara nua2964 (...) Chave primáriapróximo Cara feia2 Cara nua Cara feia Cara nua (...) Chave Secundária Entrada Cara1 Feia3 Nua4 (...)

22 O que vai acontecer hoje? TP3 Índices secundários Melhorando nosso índice primário Avail list Usuário compra música Dúvidas

23 Avail list NomeAutorDuraçãoDiscoGênero GargantaAna Carolina4:30Ana CarolinaMPB SheElvis Costello3:57ColetâneaPop HelpBeatles3:43HelpRock Sad but trueMetallica4:23S&MRock Apagamos “Help”. Avail: -1

24 Avail list NomeAutorDuraçãoDiscoGênero GargantaAna Carolina4:30Ana CarolinaMPB SheElvis Costello3:57ColetâneaPop Sad but trueMetallica4:23S&MRock Avail: 3 Apagamos “Garganta”.

25 Avail list NomeAutorDuraçãoDiscoGênero 3 SheElvis Costello3:57ColetâneaPop Sad but trueMetallica4:23S&MRock Avail: 1 Adicionamos outra música

26 Avail list NomeAutorDuraçãoDiscoGênero NuaAna Carolina4:38Ana CarolinaMPB SheElvis Costello3:57ColetâneaPop Sad but trueMetallica4:23S&MRock Avail: 3

27 O que vai acontecer hoje? TP3 Índices secundários Melhorando nosso índice primário Avail list Usuário compra música Dúvidas

28 Usuário compra música Chave Primária arquivo root4332 fabio2964 (...) Chave Primária arquivo Cara feia4332 Cara nua2964 (...) UsuárioMúsica fabioCara nua rootCara nua fabioCara feia (...) Qual a chave primária desse novo banco?

29 Índices secundários UsuárioMúsica fabioCara nua rootCara nua fabioCara feia (...) MúsicaEntrada Cara feia 1 Cara nua 3 (...) PKProximo fabio2 root fabio (...) UsuárioEntrada fabio1 root3 (...) PKProximo Cara feia 2 Cara nua Cara nua (...) Índice secundário pelo nome da música Índice secundário pelo login do usuário Os índices devem ser ordenados. Não estão aqui, mas devem estar!

30 Sugerindo músicas UsuárioMúsica fabioCara nua rootCara nua fabioCara feia (...) MúsicaEntrada Cara nua 1 Cara feia 3 (...) PKProximo fabio2 root fabio (...) UsuárioEntrada fabio1 root3 (...) PKProximo Cara feia 2 Cara nua Cara nua (...) Usuário escolhe uma música: Cara feia Conseguimos todos os usuários que compraram aquela música

31 Sugerindo músicas UsuárioMúsica fabioCara nua rootCara nua fabioCara feia (...) MúsicaEntrada Cara nua 1 Cara feia 3 (...) PKProximo fabio2 root fabio (...) UsuárioEntrada fabio1 root3 (...) PKProximo Cara feia 2 Cara nua Cara nua (...) Usuário escolhe uma música: Cara feia Vamos pegar todas as músicas que estes usuários compraram

32 Sugerindo músicas Assim que o usuário escolher uma música: 1.Usando o índice secundário, consiga todos os usuários que compraram aquela música; 2.Usando o outro índice secundário, consiga todas as músicas que aqueles usuários compraram; 3.Apresente ao usuário as N músicas mais compradas por estes usuários. Vocês também podem fazer isso assim que o usuário logar, usando as músicas que ele já comprou como ponto inicial.

33 ?


Carregar ppt "Índices secundários, avail list e truques para o TP3 Fábio Dias"

Apresentações semelhantes


Anúncios Google