FASTAFS toolkit: sistema de arquivos FASTA

Data:

toolkit

Conheça o FASTAFS, um toolkit que pode te ajudar a trabalhar com arquivos FASTA

Autor | César Henrique Yokomizo

 

Os arquivos no formato FASTA são utilizados para armazenar sequências de nucleotídeos ou aminoácidos, e se tornaram o padrão mais utilizado em análises de bioinformática há algumas décadas. 

 

Os metadados destes arquivos ocupam espaços relativamente grandes, demandando o uso de programas que realizam a compressão/descompressão destes dados. 

 

No entanto, os compressores atuais não permitem acesso direto a conteúdos específicos ou aos metadados do arquivo FASTA, sendo incompatíveis com a maioria dos softwares de bioinformática.

 

Uma solução computacional bastante utilizada para poupar espaço em disco é realizar a virtualização dos metadados através do compressor, processo que oferece diversas vantagens em relação ao processo de (des)compressão binário. 

 

Entre as várias vantagens da virtualização, algumas são apresentadas a seguir:

  • Os arquivos virtuais e suas chamadas de sistema são idênticos às chamadas de sistema de arquivos simples, preservando a compatibilidade com versões anteriores de ferramentas de linha de comando (e.g. samtools view -T).
  • Não há necessidade de usar espaço em disco adicional para descompactação temporária e não há necessidade de ler arquivos FASTA inteiros na memória.
  • Para solicitações de acesso aleatório, os recursos computacionais são gastos apenas na descompactação da região de interesse.
  • Implementações de compactação e descompactação em outras linguagens de programação ou em outros aplicativos de software não são necessárias, pois é compatível com versões anteriores de arquivos FASTA simples.
  • O arquivo fornecerá arquivos de dict e fai-index sincronizados com o FASTA de origem. Isso torna desnecessário o gerenciamento adicional desses arquivos de metadados.

No intuito de facilitar a virtualização dos metadados e auxiliar no gerenciamento dos arquivos FASTA, o FASTAFS - FASTA file system - foi criado.

O toolkit realiza a compressão do arquivo FASTA e também a virtualização dos metadados, permitindo uma integração e compatibilidade com programas de bioinformática e com gerenciadores de workflow como Snakemake, que já foi tema de uma postagem no nosso blog, e também o Nextflow.  

 

Ao final do processo de conversão, o arquivo no formato FASTAFS consistirá de quatro blocos:

  • File Header (cabeçalho do arquivo)
  • Per-sequence-data (dados por sequência)
  • Per-sequence-header (cabeçalho por sequência)
  • File Metadata (metadados do arquivo). 

Os quatro blocos irão armazenar as sequências a serem analisadas e os seus metadados. 

 

Durante a conversão, os metadados do arquivo FASTA recebem uma flag que sinaliza o status dos arquivos como incompletos, pois o processo de conversão ainda não foi finalizado. 

 

Cada bloco de dados de sequência é compactado no formato CRAM - compressed columnar file format - e recebe uma hash MD5 compatível com a especificação BAM. 

 

Na finalização da conversão do arquivo, os apontadores - pointers - do arquivo são ajustados e a flag dos metadados indica o status de conversão como concluído e ainda ocorre uma verificação CRC32 que mapeia a integridade do arquivo como um todo, a função CRC32 é utilizada  durante a conversão para detectar alterações entre dados de origem e os dados de destino. 

 

Por fim, o arquivo bruto do FASTAFS é comprimido no formato zstd-seekable, que possibilita o acesso a regiões aleatórias do arquivo bem como a independência na sua compressão e descompressão.

 

 

Adaptada de https://doi.org/10.1186/s12859-021-04455-3

 

O FASTAFS, diferentemente dos demais compressores, possibilita o uso dos arquivos com os softwares de bioinformática mais utilizados, sem a necessidade de adaptações para torná-lo compatível, ou uso de APIs para coletar informações ou a descompressão total do arquivo para o disco do computador. 

 

O toolkit é uma solução moderna para armazenar seus arquivos FASTA, além de ser compatível com outros formatos de arquivos e diferentes linguagens de programação. 

  

Já conhecia essa ferramenta? Você utiliza arquivos FASTA nas suas análises de bioinfo? Comenta com a gente o quê achou do FASTAFS!!

 

Saiba mais: 

 

FASTAFS: file system virtualisation of random access compressed FASTA files  

 

#ciencia #bioinformatica #divulgaçãocientífica #edutaugc #fastafs

 

 

 

Última atualização: Jan. 7, 2022, 3:04 p.m.

Posts Relacionados