Unita’ sperimentale 1 Database biologici e ricerche per soggetto Indice dei contenuti Parte 1: tipi di database e strategie di ricerca Parte 2: database di sequenze biologiche Parte 3: il motore SRS di EBI e il motore Entrez di NCBI Organizzare dati Sistemi per la gestione di dati Un’agenda, una rubrica, un elenco del telefono, sono altrettanti esempi di database Concetto di efficienza della ricerca: il fatto di aver “salvato” dei dati non vuol dire che sia semplice trovarli. { Per es., in un elenco cartaceo del telefono, la ricerca: { dato il nome dell’abbonato, trovare il numero e’ semplice e prende poco tempo grazie al fatto che l’elenco possiede un ordine alfabetico dei nomi; invece la ricerca: { dato il numero, trovare il nome e’ inefficiente e prende molto tempo, perche’ richiede un esame esaustivo dell’elenco. Sia il numero di telefono che il nome sono dati presenti sull’elenco, ma la loro accessibilita’ e’ ben diversa. Importanza della progettazione del sistema di gestione di dati in funzione delle ricerche che si vorranno effettuare. Database elettronici Sfruttano l’efficienza computazionale dei computer per organizzare grandi quantita’ di dati Nella struttura piu’ comune, un database immagazzina numerosi record (o entry, o elementi) composti da diversi field (campi) La visualizzazione piu’ comune e’ in forma tabellare, dove le righe corrispondono ai singoli record e le colonne sono i field. Esempio: un database per la cantina casalinga (visualizzazione a schede) Elementi (record) del database Campi di un elemento Esempio: un database per la cantina casalinga (visualizzazione tabellare) record campi (il database e’ lo stesso di prima, cambia solo la visualizzazione) Classificazione dei campi Campo ID: campo necessario, serve a dare un identificativo univoco a quel record nel database. Spesso e’ un contatore progressivo. Campi a contenuto controllato { { { { Campi logici (si/no, presente/assente,…) Campi a valori predefiniti (lista di possibili valori che il campo puo’ assumere), univoci o moltivoci (se puo’ assumere un solo valore della lista o piu’ d’uno) Campi a formato controllato (es. Il campo “data”) Campi a linguaggio controllato Campi a contenuto non controllato (riempimento libero) { Esempio classico: il campo “note” Campi indice Un database e’ indicizzato rispetto a un campo quando i dati presentano un ordinamento per quel campo { Es.: l’elenco del telefono e’ indicizzato per il nome dell’abbonato, e l’ordine e’ dato dall’ordine alfabetico. Indicizzare un campo aumenta la velocita’ delle ricerche su quel campo, ma mantenere un indice costa memoria: scegliere cosa indicizzare. Il modello relazionale Informazioni immagazzinate su diversi database possono essere collegate tra loro da opportune relazioni. In questo modo si crea una sorta di database di database che prende il nome di database relazionale. { Esempio. Immaginiamo di avere tre database: uno di scrittori, un altro di libri e il terzo di editori. La relazione “scritto da” mi mette in comunicazione un libro col suo autore. La relazione “pubblicato da” mi mette in relazione un libro con la casa editrice che l’ha pubblicato. Distribuire dati su piattaforme relazionali consente di risparmiare spazio e di rendere piu’ efficienti le ricerche. Modello relazionale: esempio Database di autori Relazione che collega un autore ai libri da lui scritti Database di libri I database di sequenze biologiche I database di sequenze biologiche sono mantenuti da organizzazioni internazionali che ne curano gli aspetti gestionali. Sono generalmente pubblici. I formati dei singoli record cambiano in accordo con le nuove realta’ biologiche. Sono tutti database annotati, ovvero, i dati veri e propri (sequenze di geni, proteine, ecc.) sono accompagnati da meta-dati che servono a qualificare e dettagliare le proprieta’ biologiche del dato stesso. Annotazioni sia in linguaggio naturale che in linguaggio controllato EMBL Database di sequenze geniche e genomiche Gestito da EMBL (European Molecular Biology Laboratory) e EBI (European Bioinformatics Institute) { Raggiungibile a: http://www.ebi.ac.uk/embl/ I suoi elementi sono file di testo semplice (ASCII plain text) il cui formato standard prevede che ogni campo sia contraddistinto da un codice di due lettere presentato a inizio riga EMBL: esempio EMBL: righe importanti Riga ID: identifica l’elemento del database. Il codice che compare subito dopo ID e’ quello che va citato quando ci si intende riferire (in una pubblicazione, per es.) a un elemento di EMBL; per es., in questo caso si dovra’ scrivere “EMBL:X56734“ Riga DE: contiene la descrizione dell’elemento, data in linguaggio naturale. Puo’ occupare piu’ righe. Righe OS e OC. La prima contiene il nome scientifico dell’organismo sorgente, le seconde contengono tutta la tassonomia relativa. EMBL: righe importanti /2 La riga SQ. Dichiara l’inizio della sequenza e contiene alcune informazioni come: la lunghezza in bp e il contenuto in basi. Le righe della sequenza. Ospitano il dato vero e proprio e sono scritte su sei colonne di dieci caratteri ciascuna. Una settima colonna numerica a destra delle precedenti da’ la posizione lungo la sequenza dell’ultimo carattere della riga. La riga //. Segnala la fine del file. Il manuale completo, con la spiegazione del significato di tutte le righe si trova qui: http://www.ebi.ac.uk/embl/Documentation/User_manual/usrman.html GenBank Altro database di sequenze geniche e genomiche (ma i dati vengono continuamente scambiati con EMBL, per cui entrambi i database conservano gli stessi dati) Gestito da NCBI (National Center for Biotechnology Information), raggiungibile a: http://www.ncbi.nlm.nih.gov/Genbank/ Elementi come file di testo, ma formato diverso da EMBL GenBank: esempio GenBank: considerazioni sul formato Il formato di GenBank prevede che le righe inizino con specifiche parole Il manuale del formato e’ reperibile qui: ftp://ftp.ncbi.nih.gov/genbank/gbrel.txt UNIPROT Maggior database mondiale di sequenze di proteine Raggiungibile a: http://www.uniprot.org/ Formato identico a EMBL. Contiene diverse sezioni con contenuto qualitativamente diverso. La sezione SWISSPROT ha le annotazioni curate manualmente! La Feature table Serve per annotare, in linguaggio controllato, tutte le proprieta’ biologiche della sequenza. E’ presente in tutti i database maggiori: su EMBL/UNIPROT viene introdotta da due righe FH, cui seguono piu’ righe FT. In GenBank la introduce la riga “Feature”. Ha una struttura del tipo: Key Location Qualifier dove “Key” indica la caratteristica da descrivere; “Location” la sua localizzazione sulla sequenza e “Qualifier” dei qualificatori per dettagliare le proprieta’ della caratteristica stessa Feature table: esempio Key Location La Location puo’ essere complessa: puo’ indicare incertezza sulla localizzazione o congiunzioni tra diversi tratti: GUARDARE IL MANUALE!! Qualifier Il manuale completo della FT si trova qui: http://www.ebi.ac.uk/embl/WebFeat/ Ricerche su database Ricerche per “parole chiave”: si imposta una chiave di ricerca costituita da una o piu’ parole e si chiede al motore di ricerca di eseguirla sul database voluto. Espressioni logiche: { { { Ricerche “AND”: quando si richiede che due (o piu’) chiavi siano contemporaneamente presenti nel risultato Ricerche “OR”: quando, cercando con piu’ chiavi, si stabilisce che basta la presenza di una di esse nel risultato Ricerche “BUT NOT”: quando la ricerca richiede la presenza di alcune parole chiave e l’assenza di altre Wildcard: caratteri speciali che sostituiscono un numero qualsiasi di altri caratteri. Il piu’ generalmente usato e’ l’asterisco. Una ricerca per “tryp*” considera risultato un documento che contenga: trypsin, trypsinogen, tryptic, … SRS: motore di ricerca di EBI http://srs.ebi.ac.uk Uso di SRS Menu a linguette (tab): il valore di default e’ “Quick search”, e la corrispondente pagina permette di cercare rapidamente un elemento se e’ nota la sua ID. Per effettuare ricerche piu’ articolate, prima occorre scegliere il (i) database dove cercare, col menu “Library Page” e poi impostare la ricerca col menu “Query Form”. Library page Per selezionare un database, cliccare il check-box accanto al nome Lo standard query form Condizioni logiche Inserimento chiavi di ricerca Campi da visualizzare nella pagina dei risultati Ricerche mirate: selezionare i campi Il menu a tendina posto accanto alle caselle di inserimento testo per le chiavi di ricerca permette di selezionare un campo specifico su cui restringere la ricerca. Da notare: gli elementi del menu a tendina cambiano a seconda del database scelto. Scegliendo piu’ database, vengono visualizzati solo I campi comuni a tutti. Nell’esempio sotto, la ricerca e’ ristretta al campo DE (Description) e al campo Taxon. Se la condizione logica impostata e’ “AND”, i risultati debbono contenere entrambe le chiavi nei rispettivi campi. La pagina dei risultati Di default in forma tabellare: sotto la casella che ricapitola la query c’e’ l’indicazione del numero di risultati trovati. A sinistra il menu per il lancio rapido di alcuni applicativi (per es. BLAST) sui risultati selezionati (cliccando sul check-box della prima colonna) Scegliere i campi da visualizzare La tabella dei risultati puo’ essere modificata scegliendo quali campi mostrare esplicitamente. Si selezionano i campi voluti sul menu a finestra della sezione “create a view” del form. I risultati vengono forniti come appare nella slide seguente. Risultati con vista personalizzata Extended query form Extended query form /2 Permette di impostare richieste di ricerca molto piu’ complesse e selettive Indirizza in modo diretto e dettagliato la Feature table In questo form, per creare la vista personalizzata, occorre selezionare il checkbox posto nell’ultima colonna di destra, accanto a ciascun campo che si vuole visualizzare. Formati di output dei singoli risultati Formati nativi dei database: il risultato selezionato viene mostrato del formato nativo del database (EMBL, UNIPROT, ecc.) attraverso una interfaccia grafica che ne migliora la leggibilita’. SeqSimpleView: viene mostrata la semplice sequenza, senza le annotazioni. FASTA: formato molto usato per le elaborazioni. Formato FASTA Formato essenziale privo di annotazioni La prima riga e’ di commento (ed e’ l’unica), inizia con un segno di maggiore (“>”) e termina (ma questo NON e’ strettamente necessario) con un segno di punto e virgola (“;”). La sequenza viene scritta a partire dalla seconda riga: di solito si va a capo al 60esimo carattere, ma anche questo non e’ strettamente necessario: volendo, la sequenza puo’ anche essere scritta su un’unica riga. Non c’e’ un carattere di terminazione esplicito. Formato FASTA: esempio Il motore Entrez di NCBI Indirizzo: http://www.ncbi.nlm.nih.gov/ Pagina molto piu’ semplice: stile “Google”; la ricerca e’ pre-impostata per trovare una parola chiave su tutti i database collegati. Entrez: i risultati Accanto a ogni database, viene indicato il numero dei risultati trovati. Dopo questa esercitazione lo studente e’ supposto saper: Consultare database per recuperarne elementi. Usare i motori di ricerca per database biologici Impostare richieste di ricerca complesse, imperniate sulle proprieta’ biologiche della sequenza cercata. Gestire i formati dei file di output.