Proteogenomics 2: Database Search
Overview
question Questionsobjectives Objectives
How to identify variant proteoforms in MS data by searching with the customized Protein database?
requirements Requirements
A proteogenomic data analysis of mass spectrometry data to identify and visualize variant peptides.
- Introduction to Galaxy Analyses
- Proteomics
- Proteogenomics 1: Database Creation: tutorial hands-on
time Time estimation: 15 minutes
level Level: Intermediate level level level
Supporting Materials
last_modification Last modification: Jan 27, 2021
Introduction
In this tutorial, we perform proteogenomic database searching using the Mass Spectrometry data. The inputs for performing the proteogenomic database searching are the peaklist MGF files and the FASTA database file. The FASTA database is obtained by running the first workflow “Uniprot_cRAP_SAV_indel_translatedbed.FASTA”. The second workflow focuses on performing database search of the peak list files (MGFs).
Agenda
In this tutorial, we will deal with:
Pretreatments
hands_on Hands-on: data upload and organization
- Create a new history and name it something meaningful (e.g. Proteogenomics DB search)
- Import the four MGF MS/MS files and the Trimmed_ref_5000_uniprot_cRAP.FASTA sequence file from Zenodo.
![]()
https://zenodo.org/record/1489208/files/Mo_Tai_Trimmed_mgfs__Mo_Tai_iTRAQ_f4.mgf https://zenodo.org/record/1489208/files/Mo_Tai_Trimmed_mgfs__Mo_Tai_iTRAQ_f5.mgf https://zenodo.org/record/1489208/files/Mo_Tai_Trimmed_mgfs__Mo_Tai_iTRAQ_f8.mgf https://zenodo.org/record/1489208/files/Mo_Tai_Trimmed_mgfs__Mo_Tai_iTRAQ_f9.mgf
tip Tip: Importing data via links
- Rename the datasets to something more recognizable (strip the URL prefix)
Build a Dataset list for the three MGF files, name it as “Mo_Tai_MGFs”
tip Tip: Creating a dataset collection
Match peptide sequences
The search database labelled Uniprot_cRAP_SAV_indel_translatedbed.FASTA
is the input database that
will be used to match MS/MS to peptide sequences via a sequence database search.
For this, the sequence database-searching program called SearchGUI will be used.The generated dataset collection of the three MGF files in the history is used as the MS/MS input. We will walk through a number of these settings in order to utilize SearchGUI on these example MGF files.
SearchGUI
hands_on Hands-on: SearchGUI
- SearchGUI tool with the following parameters:
- param-file “Protein Database”:
Uniprot_cRAP_SAV_indel_translatedbed.FASTA
(Or however you named theFASTA
file)param-files “Input Peak lists (mgf)”:
MGF files
dataset collection.tip Tip: Select dataset collections as input
- Section Search Engine Options:
param-check “DB-Search Engines”:
X!Tandem
comment Comment:
The section Search Engine Options contains a selection of sequence database searching programs that are available in SearchGUI. Any combination of these programs can be used for generating PSMs from MS/MS data. For the purpose of this tutorial, X!Tandem we will be used.
- Section Protein Digestion Options:
- param-select “Enzyme”:
Trypsin
- param-text “Maximum Missed Cleavages”:
2
- Section Precursor options:
- param-select “Precursor Ion Tolerance Units”:
Parts per million (ppm)
- param-text “Precursor Ion Tolerance”:
10
- param-text “Fragment Tolerance (Daltons)”:
0.05
(this is high resolution MS/MS data)- param-text “Minimum charge”:
2
- param-text “Maximum charge”:
6
- param-select “Forward Ion”:
b
- param-select “Reverse Ion”:
y
- param-text “Minimum Precursor Isotope” :
0
- param-text “Maximum Precursor Isotope” :
1
- Section Protein Modification Options:
- param-select “Fixed Modifications”:
Carbamidomethylation of C, ITRAQ-4Plex of K, ITRAQ-4Plex of Ntermini
param-select “Variable modifications”:
Oxidation of M, ITRAQ-4Plex of Y
tip Tip: Search for options
- Section Advanced Options:
- param-select “X!Tandem Options”:
Advanced
- param-check “X!Tandem: Quick Acetyl”:
No
- param-check “X!Tandem: Quick Pyrolidone”:
No
- param-check “X!Tandem: Protein stP Bias”:
No
- param-text “X!Tandem: Maximum Valid Expectation Value”:
100
Once the database search is completed, the SearchGUI tool will output a file (called a SearchGUI archive file) that will serve as an input for the next section, PeptideShaker. Rename the output as “Compressed SearchGUI results”
comment Comment:
Note that sequence databases used for proteogenomics are usually much larger than the excerpt used in this tutorial. When using large databases, the peptide identification step can take much more time for computation. In proteogenomics, choosing the optimal database is a crucial step of your workflow.
PeptideShaker
PeptideShaker is a post-processing software tool that processes data from the SearchGUI software tool. It serves to organize the Peptide-Spectral Matches (PSMs) generated from SearchGUI processing and is contained in the SearchGUI archive. It provides an assessment of confidence of the data, inferring proteins identified from the matched peptide sequences and generates outputs that can be visualized by users to interpret results. PeptideShaker has been wrapped in Galaxy to work in combination with SearchGUI outputs.
comment Comment: File Formats
There are a number of choices for different data files that can be generated using PeptideShaker. A compressed file can be made containing all information needed to view them results in the standalone PeptideShaker viewer. A
mzidentML
file can be generated that contains all peptide sequence matching information and can be utilized by compatible downstream software. Other outputs are focused on the inferred proteins identified from the PSMs, as well as phosphorylation reports, relevant if a phosphoproteomics experiment has been undertaken.
hands_on Hands-on: PeptideShaker
- PeptideShaker tool with the following parameters:
- param-file “Compressed SearchGUI results”: The SearchGUI archive file
- param-select “Specify Advanced PeptideShaker Processing Options”:
Default Processing Options
- param-select “Specify Advanced Filtering Options”:
Default Filtering Options
- param-check “Include the protein sequences in mzIdentML”:
No
- param-check “Output options”: Select the
PSM Report
(Peptide-Spectral Match) and theCertificate of Analysis
comment Comment: Certificate of Analysis
The “Certificate of Analysis” provides details on all the parameters used by both SearchGUI and PeptideShaker in the analysis. This can be downloaded from the Galaxy instance to your local computer in a text file if desired.
- Inspect galaxy-eye the resulting files
A number of new items will appear in your history, each corresponding to the outputs selected in the PeptideShaker parameters. Most relevant for this tutorial is the PSM report:
Scrolling at the bottom to the left will show the sequence for the PSM that matched to these peptide entries. Column 3 is the sequence matched for each PSM entry. Every PSM is a new row in the tabular output.
A number of new items will appear in your History, each corresponding to the outputs selected in the PeptideShaker parameters. The Peptide Shaker’s PSM report is used as an input for the BlastP analysis. Before performing BlastP analysis. The Query Tabular tool and few test manipulation tools are used to remove spectra that belongs to the reference proteins. The output tabular file “Peptides_for_Blast-P_analysis” will contain only those spectra that did not belong to any known proteins.
Create database
The mzidentml output from the Peptide shaker is converted into an sqlite database file by using the mz to sqlite tool. This sqlite output is used to open the Multi-omics visualization platform, wherein you can view the spectra of the peptides using Lorikeet parameters. To open the MVP viewer, click on the “Visualize in MVP Application” icon ( this will pop-open the interactive multi-omics viewer in a new window/tab)
hands_on Hands-on: mz to sqlite
This tool extracts mzidentml and its associated proteomics datasets into a sqlite db
- mz to sqlite tool with the following parameters:
- param-file “Proteomics identification files”:
PeptideShaker_mzidentml
- param-file “Proteomics Spectrum files”:
Mo_Tai_MGFs
- param-file “Proteomics Search Database Fasta”:
Uniprot_cRAP_SAV_indel_translatedbed.FASTA
The next step is to remove known peptides from the list of PSM’s that we acquired from the Peptide Shaker results. For that we need to perform Query tabular to extract list of known peptides from the UniProt and cRAP database.
Query Tabular
hands_on Hands-on: Remove Reference proteins
- Query Tabular tool with the following parameters:
- param-repeat Insert Database Table (b):
PSM report
- Section Filter Dataset Input:
- param-repeat Insert Filter Tabular Input Lines
- “Filter by”:
skip leading lines
- “Skip lines”:
1
- Section Table Options:
- “Specify Name for Table”:
psms
- “Use first line as column names” :
No
- “Specify Column Names (comma-separated list)”:
id,Proteins,Sequence
- “Only load the columns you have named into database”:
Yes
- param-repeat Table Index
- “Table Index”:
No
- “Index on Columns”:
id
param-repeat Insert Database Table (c):
PSM report
- Section Filter Dataset Input
- param-repeat Insert Filter Tabular Input Lines
- “Filter by”:
skip leading lines
- “Skip lines”:
1
- param-repeat Insert Filter Tabular Input Lines
- “Filter by”:
select columns
- “Enter column numbers to keep”:
1,2
- param-repeat Insert Filter Tabular Input Lines
- “Filter by”:
normalize list columns,replicate rows for each item in the list
- “Enter column numbers to normalize”:
2
- “List item delimiter in column”:
,
- Section Table Options:
- “Specify Name for Table”:
prots
- “Use first line as column names” :
No
- “Specify Column Names (comma-separated list)”:
id,prot
- “Only load the columns you have named into database”:
Yes
- param-repeat Insert Table Index:
- “Table Index”:
No
- “Index on Columns”:
prot, id
- param-repeat Insert Database Table (a):
Reference_Protein_Acessions
- Section Table Options:
- “Tabular Dataset for Table”:
Uniprot
- “Use first line as column names” :
No
- “Specify Column Names (comma-separated list)”:
prot
- param-repeat Insert Table Index:
- “Table Index”:
No
- “Index on Columns”:
prot
comment Comment:
By default, table columns will be named: c1,c2,c3,…,cn (column names for a table must be unique). You can override the default names by entering a comma separated list of names, e.g.
,name1,,,name2
would rename the second and fifth columns. Check your input file to find the settings which best fits your needs.“Save the sqlite database in your history”:
No
comment Querying an SQLite Database
Query Tabular can also use an existing SQLite database. Activating
Save the sqlite database in your history
will store the generated database in the history, allowing to reuse it directly.- “SQL Query to generate tabular output”:
SELECT psms.* FROM psms WHERE psms.id NOT IN (SELECT distinct prots.id FROM prots JOIN uniprot ON prots.prot = uniprot.prot) ORDER BY psms.id
- “include query result column headers”:
Yes
- Click Execute and inspect the query results file after it turned green.
The output from this step is that the resultant peptides would be those which doesn’t belong in the Uniprot or cRAP database. The query tabular tool is used again to create a tabular output containing peptides ready for Blast P analysis.
hands_on Hands-on: Query Tabular
Query Tabular tool: with the following parameters:
- Section Filter Dataset Input
- param-repeat “Insert Filter Tabular Input Lines”
- “Filter by”:
skip leading lines
- “Skip lines”:
1
- Section Table Options:
- “Specify Name for Table”:
psm
- “Use first line as column names” :
No
- “Specify Column Names (comma-separated list)”:
id,Proteins,Sequence
- “Only load the columns you have named into database”:
Yes
- “SQL Query to generate tabular output”:
SELECT Sequence || ' PSM=' || group_concat(id,',') || ' length=' || length(Sequence) as "ID",Sequence FROM psm WHERE length(Sequence) >6 AND length(Sequence) <= 30 GROUP BY Sequence ORDER BY length(Sequence),Sequence
“include query result column headers”:
Yes
- Click Execute and inspect the query results file after it turned green.
BLASTP (Basic Local Alignment Search Tool- proteins)
BLAST is a web based tool used to compare biological sequences. BlastP, matches protein sequences against a protein database. More specifically, it looks at the amino acid sequence of proteins and can detect and evaluate the amount of differences between say, an experimentally derived sequence and all known amino acid sequences from a database. It can then find the most similar sequences and allow for identification of known proteins or for identification of potential peptides associated with novel proteoforms.
BlastP search is carried out with the PSM report (output from PeptideShaker). Before, BlastP analysis the “Peptides_for_Blast-P_analysis” is first converted from Tabular format to FASTA file format which can be easily read by the BlastP algorithm. This is done with the help of “Tabular to FASTA” conversion tool. The short BlastP uses parameters for short peptide sequences (8-30 aas). Please use the rerun option to look at the parameters used.
hands_on Hands-on: Tabular to FASTA
- Tabular to FASTA tool: with the following parameters:
- “Title column”:
1
- “Sequence Column”:
2
The output FASTA file is going to be subjected to BLAST-P analysis.
hands_on Hands-on: NCBI BLAST+ blastp
- NCBI BLAST+ blastp tool: Run BLASTP with:
- param-file “Protein query sequence(s)”:
Data input 'query' (fasta)
- param-select “Subject database/sequences”:
Locally installed BLAST database
- param-select “Protein Blast database”: Select
nr_mouse_current
- param-check “Type of BLAST”:
blastp-short - BLASTP optimized for queries shorter than 30 residues
- param-text “Set expectation value cutoff”:
200000.0
- param-select “Output format”:
Tabular(extended 25 columns)
- “Advanced Options”:
Show Advanced Options
- param-check “Filter out low complexity regions (with SEG)”:
No
- param-select “Scoring matrix and gap costs”:
PAM30
- param-select “Gap Costs”:
Existence: 9 Extension: 1
- param-text “Maximum hits to show”:
1
- param-text “Maximum number of HSPs (alignments) to keep for any single query-subject pair”:
1
- param-text “Word size for wordfinder algorithm”:
2
- param-text “Multiple hits window size”:
40
- param-text “Minimum score to add a word to the BLAST lookup table”:
11
- param-select “Composition-based statistics”:
0 (No composition)
- param-check “Should the query and subject defline(s) be parsed?”:
No
- param-select “Restrict search of database to a given set of ID’s”:
No restriction
comment Comment:
This feature provides a means to exclude ID’s from a BLAST database search. The expectation values in the BLAST results are based upon the sequences actually searched, and not on the underlying database. Note this cannot be used when comparing against a FASTA file.
- param-text “Minimum query coverage per hsp (percentage, 0 to 100)”:
0
- param-check “Compute locally optimal Smith-Waterman alignments”:
No
Once BlastP search is performed, it provides with a tabular output containing peptides corresponding to novel proteoforms termed as “Novel peptides”. Now this output is further processed by comparing the novel peptide output with the PSM report for selecting only distinct peptides which pass these criteria. This could be achieved by proceeding to the novel peptide analysis tutorial.
comment Comment: Tool Versions
The tools are subjected to changes while being upgraded. Thus, running the workflow provided with the tutorial, the user might need to make sure they are using the latest version including updating the parameters.
Conclusion
This completes the walkthrough of the proteogenomics database search workflow. This tutorial is a guide to perform database searching with mass spectronetry files and have peptides ready for Blast-P analysis, you can perform follow up analysis using the next GTN “Proteogenomics Novel Peptide Analysis”. Researchers can use this workflow with their data also, please note that the tool parameters, reference genomes and the workflow will be needed to be modified accordingly.
This workflow was developed by the Galaxy-P team at the University of Minnesota. For more information about Galaxy-P or our ongoing work, please visit us at galaxyp.org
keypoints Key points
With SearchGUI and PeptideShaker you can gain access to multiple search engines
Useful literature
Further information, including links to documentation and original publications, regarding the tools, analysis techniques and the interpretation of results described in this tutorial can be found here.
Feedback
Did you use this material as an instructor? Feel free to give us feedback on how it went.
Citing this Tutorial
- Subina Mehta, Timothy J. Griffin, Pratik Jagtap, Ray Sajulga, James Johnson, Praveen Kumar, 2021 Proteogenomics 2: Database Search (Galaxy Training Materials). /archive/2021-02-01/topics/proteomics/tutorials/proteogenomics-dbsearch/tutorial.html Online; accessed Wed Mar 26 2025
- Batut et al., 2018 Community-Driven Data Analysis Training for Biology Cell Systems 10.1016/j.cels.2018.05.012
details BibTeX
congratulations Congratulations on successfully completing this tutorial!
curriculum Do you want to extend your knowledge? Follow one of our recommended follow-up trainings:
- Proteomics
- Proteogenomics 3: Novel peptide analysis: tutorial hands-on