BLAST

Fiche logiciel validé
  • Création ou MAJ importante : 11/07/11
  • Correction mineure : 18/04/13
Mots-clés

BLAST : comparaison de séquences nucléiques ou protéiques

Description
Fonctionnalités générales

Le logiciel blast permet de comparer une séquence, nucléique ou protéique, dîte requête, à une banque de séquences, nucléiques ou protéiques. Il existe essentiellement cinq types de comparaison possibles :

  • blastn blast nucléique
    Pour comparer une séquence requête nucléique à une banque de séquences nucléiques
  • blastp blast protéique
    Pour comparer une séquence requête protéique à une banque de séquences protéiques
  • blastx blast nucléique vs protéique
    Pour comparer une séquence requête nucléique à une banque de séquences protéiques
  • tblastn blast protéique vs nucléique
    Pour comparer une séquence requête protéique à une banque de séquences nucléiques
  • tblastx blast nucléique vs nucléique en passant par un alignement protéique
    Pour comparer une séquence requête nucléique à une banque de séquences nucléiques en alignant les séquences protéiques induites par les séquences nucléiques

Blast compare les séquences nucléiques sur les 2 brins, c'est-à-dire la séquence étudiée (brin +) et son complémentaire inversé (brin -).
Pour comparer une séquence nucléique à une séquence protéique, Blast traduit la séquence nucléique en générant toutes les séquences protéiques possibles, c'est-à-dire 6 séquences différentes (3 à partir du brin + et 3 à partir du brin -). Les codons de terminaisons sont inclus et représentés par "*".

Forces

  • L'algorithme de blast ( http://en.wikipedia.org/wiki/BLAST ) permet d'obtenir un logiciel d'alignement très rapide tout en conservant une bonne sensibilité.
  • Le logiciel fournit une mesure, la e-value, permettant de tester la significativité statistique d'un score d'alignement

Faiblesses

  • L'indexation de la séquence requête puis le parcours des séquences de la banque pour chacune des séquences requêtes se traduit par un temps de calcul qui devient trop important lorsque l'on souhaite comparer des génomes complets ou des données haut débit, issues par exemple des nouvelles technologies de séquençage, avec un génome. Des approches alternatives proposent une indexation des séquences de la banque (voir ci-dessous Autres fonctionalités et Autres logiciels).
Autres fonctionnalités

Des fonctionnalités supplémentaires permettent de réaliser des taches dédiées impliquant une phase de comparaison utilisant le moteur d'alignement de blast. On citera simplement deux exemples :

  • megablast
    Permet une comparaison très rapide de séquences similaires.
  • Primer-Blast
    Permet de définir des amorces à partir d'une séquence patron fournie par l'utilisateur.

L'ensemble des fonctionalités supplémentaires est décrit sur le site http://blast.ncbi.nlm.nih.gov/Blast.cgi.

Une nouvelle version de blast (Morgulis et al., Bioinformatics 2008 24(16):1757-1764 ), basée sur un principe d'indexation de la banque, permet d'améliorer les performances du logiciel particulièrement dans le contexte de comparaisons impliquant un très grand nombre de petites séquences.

Interopérabilité

Seule la version standalone blast nous intéresse ici. Les fichiers d'entrée doivent être des fichiers de séquences au format FASTA ( http://en.wikipedia.org/wiki/Fasta_format ). Le format ASN.1 est également accepté pour le fichier de séquences de la banque mais il est probablement assez rarement utilisé en dehors des bioinformaticiens du ncbi ( http://www.ncbi.nlm.nih.gov/Sitemap/Summary/asn1.html ).

Il y a 9 formats de sortie et nous n'en décrirons que 2 :

  • -m 1 (par défaut) Sortie exhaustive comprenant scores et alignements;
  • -m 8 Sortie tabulée (les colonnes sont les mêmes que celles définies par -m 9).

Pour une exploitation automatisée des sorties de blast on peut par exemple utiliser les bibliothèques bioperl - http://www.bioperl.org ou http://www.projet-plume.org/fr/fiche/bioperl , biopython - http://biopython.org ou biojava - http://biojava.org .

Contexte d'utilisation dans mon laboratoire/service

Le site Web du ncbi ( http://blast.ncbi.nlm.nih.gov/Blast.cgi ) permet d'interroger des banques de séquences prédéfinies avec une séquence requête fournie par l'utilisateur.

Une comparaison de séquences avec une banque de séquences à façon, c'est à dire définie par l'utilisateur, requiert l'installation locale du logiciel blast également appelée standalone blast.

Pour illustrer ce dernier contexte nous nous limiterons à une utilisation sur le système linux. L'utilisation la plus simple consiste à identifier dans un ensemble de séquences réunies dans un fichier, que nous nommerons seqences.fa, des séquences similaires à une séquence requête figurant dans le fichier request.fa. Nous faisons l'hypothèse que ce sont des séquences nucléiques.

Formatage de la banque :

formatdb -p F -i sequences.fa

Comparaison de la séquence request.fa à la banque de séquences sequences.fa :

blastall -p blastn -m 9 -e 0.0001 -i request.fa -d sequences.fa

Le paramètre -e 0.0001 permet de spécifier que seuls les alignements dont le score est associé à une e-value inférieure à 0.0001 seront affichés (e-value associé à un score : nombre attendu, du seul fait du hasard, d'alignements présentant un score au moins aussi bon, voir http://www.ncbi.nlm.nih.gov/BLAST/tutorial/Altschu... ).

Il est également possible de lancer une comparaison mutiple à l'aide d'un fichier contenant plus d'une requête.

Limitations, difficultés, fonctionnalités importantes non couvertes

L'indexation de la séquence requête puis le parcours des séquences de la banque pour chacune des séquences requêtes se traduit par un temps de calcul qui devient trop important lorsque l'on souhaite comparer des génomes complets ou des données haut débit, issues par exemple des nouvelles technologies de séquençage, avec un génome. Des approches alternatives proposent une indexation des séquences de la banque (voir ci-dessous Autres fonctionalités et Autres logiciels).

Le logiclel blast n'a pas été conçu pour comparer les lectures courtes que fournissent aujourd'hui les nouvelles technologies de séquençage. Voir ci-dessous, Autres fonctionalités et autres logiciels, pour une liste courte de logiciels dédiés à aux séquences issues des NGS (Next Generation Sequenceing) en attendant qu'une fiche plume décrive plus en détail ces derniers.

Environnement du logiciel
Distributions dans lesquelles ce logiciel est intégré

blast2 est un package debian à partir de la version etch

Autres logiciels aux fonctionnalités équivalentes
Environnement de développement
Type de structure associée au développement

Le logiciel blast ncbi est maintenu par l'équipe de bioinformatique du ncbi.

Eléments de pérennité

L'article princeps du logiciel, publié en 1990, a fait l'objet de plus 25000 citations.

Références d'utilisateurs institutionnels

Tous les instituts de recherche travaillant en biologie moléculaire.

Environnement utilisateur
Documentation utilisateur