Vai alla pagina precedente
Vai alla pagina successiva


Il database


Il progetto si basa in tutte e tre le sue parti su MySql come DBMS (Data Base Management System).
Per questo è necessario innanzi tutto disporre di una macchina su cui sia installato (il progetto e i test sono stati fatti utilizzando la versione 4.0.20a in locale); in secondo luogo è necessario disporre dei driver JDBC di MySql per far comunicare lo spider con MySql.

Una volta che abbiamo a disposizione Mysql é necessario seguire alcuni passi perché non vi siano problemi:

Da Fare Comando di MySql
Creare il database a cui lo spider dovrà connettersi (di default lo spider cerca di utilizzare il database daniele) create database daniele
Creare la tabella mp3 all'interno del database creato in precedenza (di default lo spider cerca di utilizzare il database daniele) use daniele;
create table mp3(ip varchar(17),nome_host varchar(50),nome_file varchar(100),path varchar(255),link varchar(255),artista varchar(100),titolo varchar(100),album varchar(100),anno varchar(5),commento text,primary key(ip,nome_host,nome_file,path));
Creare gli indici che utilizzeremo per interrogare il database dall'interfaccia utente create fulltext index artista on mp3(nome_file,path,artista);
create fulltext index titolo on mp3(path,titolo,nome_file);
create fulltext index album on mp3(nome_file,path,album);
create fulltext index anno on mp3(nome_file,path,anno);
create fulltext index commento on mp3(commento);
create fulltext index generale on mp3(nome_file,path,artista,titolo,album,anno,commento);

Vediamo ora più in dettaglio la tabella e gli indici ad essa collegati.
Nella tabella sotto presentiamo in dettaglio la struttura della tabella:

Nome colonna Spiegazione
ip varchar(17) Questa variabile indica l'indirizzo ip della macchina su cui e' stato fatto girare il programma java.
nome_host varchar(50) Questa variabile indica il nome dell'host su cui e' stato fatto girare il programma java.
nome_file varchar(100) Questa variabile indica il nome del file mp3 trovato.
path varchar(255) Questa variabile indica il posizionamento del file nel file system della macchina scansionata.
link varchar(255) Questa variabile indica la sottocartella in cui si trova il file rispetto alla directory di condivisione del computer.
artista varchar(100) Questa variabile indica l'artista della musica del file mp3
titolo varchar(100) Questa variabile indica il titolo della musica del file mp3
album varchar(100) Questa variabile indica il titolo dell'album da cui il file mp3 é stato estratto.
anno varchar(5) Questa variabile indica l'anno in cui la canzone é stata pubblicata.
commento text Questa variabile indica l'eventuale commento presente nel file mp3 in formato di tag id3.

E' interessante notare che:
Per quel che riguarda il modello utilizzato, gli indici e la stopword list, è stato sfruttato MySql senza particolari opzioni. Ci serviamo dunque di un modello vettoriale, e la stopword list contiene preposizioni, articoli, avverbi e parole poche significative della lingua inglese. Inoltre Mysql ignora tutte le parole che compaiono in almeno metà dei documenti.
Una caratteristica che sarebbe utile cambiare (nel nostro caso) é invece la lunghezza minima delle parole prese in considerazione durante la creazione degli indici: per default MySql ignora le parole piú corte di 4 caratteri; in ambito musicale può accadere che vi siano informazioni importanti rappresentate da parole più corte (basti pensare ad alcuni tra i gruppi più famosi come gli Who, i REM o gli U2).
In MySql questo può essere fatto solo modificando la variabile di sistema "ft_min_word_len" (e quindi non deve essere fatto in fase di creazione degli indici, ma dall'amministratore di MySql).

Vai alla pagina precedente
Vai alla pagina successiva






  Indice principale     Indice dei Programmi     Indice del Progetto di BDD(se)  

Data creazione: 17 Settembre 2010
Data ultima modifica: 30 Dicembre 2012