SamQL
SamQL provides an SQL-like query language to filter and retrieve alignments from Sequence Alignment/Map (SAM) and Binary Alignment/Map (BAM) files for structured interrogation of sequencing alignment data.
Key Features:
- SQL-Like Syntax: An SQL-like query language tailored to SAM/BAM formats for structured filtering and selection of alignment records.
- Complex Query Support: Supports intricate query expressions to perform advanced selection and Boolean logic on alignment fields and tags.
- Compatibility with Large Datasets: Operates directly on existing SAM and BAM files without requiring data transformation.
- Go Implementation and Multicore Utilization: Implemented in Go and designed to leverage modern multicore computing systems for performance and scalability.
- Structured Alternative to Shell One-Liners: Provides a programmatic querying approach intended to replace ad-hoc Bash one-liners for SAM/BAM interrogation.
Scientific Applications:
- Large-scale sequencing data filtering: Enables targeted retrieval and filtering of alignments from SAM/BAM files in high-throughput sequencing projects.
- Genomic data interrogation: Facilitates structured queries on alignment records and tags for downstream genomic analyses and interpretation.
- Foundational component for genomics databases: Serves as a step toward building structured database engines for genomics by providing a query layer for SAM/BAM data.
Methodology:
Provides a comprehensive SQL-like query language that operates directly on SAM and BAM files and is implemented in Go to leverage multicore computing for query execution.
Topics
Details
- License:
- MIT
- Tool Type:
- command-line tool, workflow
- Programming Languages:
- SQL, Bash
- Added:
- 3/19/2021
- Last Updated:
- 4/3/2021
Operations
Publications
Lee CT, Maragkakis M. SamQL: A Structured Query Language and filtering tool for the SAM/BAM file format. Unknown Journal. 2021. doi:10.1101/2021.02.03.429524.