macでインフォマティクス

macでインフォマティクス

HTS (NGS) 関連のインフォマティクス情報についてまとめています。

ONT/PacBioのロングリードのメタゲノムアセンブリとbinningパイプライン mmlong2

 

mmlong2はNanoporeまたはPacBio HiFiシーケンスデータから原核生物ゲノムを自動回収・解析するゲノム中心のロングリードメタゲノミクスワークフローである。mmlong2ワークフローはmmlongを継承している。mmlong2はロングリード専用のワークフローであり、Nanopore(リードエラー率約1 %)またはPacBio HiFi(リードエラー率約0.1 %)のデータセットで動作するように設計されている。

 

最近の高性能な複数のbinnerを使ったアンサンブルアプローチが採用されている。

Githubより転載

 

Frequently asked questions about mmlong2

https://github.com/Serka-M/mmlong2/blob/main/msc/mmlong2-faq.md

 

インストール

ハードウェア

  • mmlong2は、ワークフロー実行あたり100スレッド以上、300Gb以上のRAMを割り当てたUbuntu 22.04上で動作するHPCクラスタのノードで使用するように設計されている。

Github

mamba create -n mmlong python=3.12 -y
conda activate mmlong
mamba install -c bioconda mmlong2 -y

> mmlong2 -h

mmlong2: bioinformatics pipeline for microbial genome recovery and analysis using long reads

For issues or feedback please use https://github.com/Serka-M/mmlong2/issues or e-mail to mase@bio.aau.dk 

 

 

 

MAIN INPUTS:

-np    --nanopore_reads    Path to Nanopore reads (default: none)

-pb    --pacbio_reads        Path to PacBio HiFi reads (default: none)

-o    --output_dir        Output directory name (default: mmlong2)

-p    --processes        Number of processes/multi-threading (default: 3)

 

OPTIONAL SETTINGS:

-db     --install_databases    Install missing databases used by the workflow

-dbd     --database_dir        Output directory for database installation (default: /media/kazu/8TB7)

-cov     --coverage        CSV dataframe for differential coverage binning (e.g. NP/PB/IL,/path/to/reads.fastq)

-run    --run_until        Run pipeline until a specified stage completes (e.g.  assembly polishing filtering singletons coverage binning taxonomy annotation extraqc stats)

-tmp    --temporary_dir        Directory for temporary files (default: none)

-dbg    --use_metamdbg        Use metaMDBG for assembly of PacBio reads (default: use metaFlye)

-med    --medaka_model        Medaka polishing model (default: r1041_e82_400bps_sup_v5.0.0)

-mo    --medaka_off        Do not run Medaka polishing with Nanopore assemblies (default: use Medaka)

-vmb    --use_vamb        Use VAMB for binning (default: use GraphMB)

-sem    --semibin_model        Binning model for SemiBin (default: global)

-mlc    --min_len_contig    Minimum assembly contig length (default: 3000)

-mlb    --min_len_bin        Minimum genomic bin size (default: 250000)

-rna    --database_rrna        16S rRNA database to use (default: /projects/microflora_danica/mmlong2/db/MiDAS_v5.3.0_sintax.fasta)

-gunc    --database_gunc        Gunc database to use (default: /projects/microflora_danica/mmlong2/db/gunc_db_progenomes2.1.dmnd)

-bkt    --database_bakta    Bakta database to use (default: /projects/microflora_danica/mmlong2/db/bakta_v5.1)

-kj    --database_kaiju    Kaiju database to use (default: /projects/microflora_danica/mmlong2/db/kaiju_db_nr_2023-05-10)

-gtdb    --database_gtdb        GTDB-tk database to use (default: /databases/gtdb-tk/release220/gtdb-tk)

-h    --help            Print help information

-v    --version        Print workflow version number

 

ADVANCED SETTINGS:

-fmo    --flye_min_ovlp        Minimum overlap between reads used by Flye assembler (default: auto)

-fmc    --flye_min_cov        Minimum initial contig coverage used by Flye assembler (default: 3)

-env    --conda_envs_only    Use conda environments instead of container (default: use container)

-n    --dryrun        Print summary of jobs for the Snakemake workflow

-t    --touch            Touch Snakemake output files

-r1    --rule1            Run specified Snakemake rule for the MAG production part of the workflow

-r2    --rule2            Run specified Snakemake rule for the MAG processing part of the workflow

-x1    --extra_inputs1        Extra inputs for the MAG production part of the Snakemake workflow (default: none)

-x2    --extra_inputs2        Extra inputs for the MAG processing part of the Snakemake workflow (default: none)

-xb    --extra_inputs_bakta    Extra inputs (comma-separated) for MAG annotation using Bakta (default: none)

 

 

データベース

mmlong2 --install_databases

半日ほどかかった。

 

現在のパスにmmlong2_db_v1.1.0/が出来る。

サイズは100Gb以上ある。

 

テストラン

ONTとPacBio HiFIリードを使ったアセンブリ。リード数は1Gb程度の小さなデータだがメモリを最大170 Gb程度使うので注意。

zenodo_get -r 12168493

#ONT
mmlong2 -np mmlong2_np.fastq.gz -o mmlong2_testrun_np -p 60 -run binning
  • -p       Number of processes/multi-threading (default: 3)
  • -np     Path to Nanopore reads (default: none)
  • -pb     Path to PacBio HiFi reads (default: none)
  • -o       Output directory name (default: mmlong2)
  • -run    Run pipeline until a specified stage completes (e.g.  assembly polishing filtering singletons coverage binning taxonomy annotation extraqc stats)

最初にpre-buildのSingularity imageがダウンロードされる。

 

出力例

mmlong2_testrun_np/results/

mmlong2_testrun_np_assembly.fastaが de novoアセンブル結果と思われる。

 

mmlong2_testrun_np/results/bin/

 

コンティグ数

seqkit stats *fa

複数のcomplete MAG(cMAGs)が得られている(MIMAG基準ではHQかFinishedに相当する。ショートリードではHQ以上は困難)。


テストラン2

#PacBio HiFiリード
mmlong2 -pb mmlong2_pb.fastq.gz -o mmlong2_testrun_pb -p 60 -dbg
  • -dbg     Use metaMDBG for assembly of PacBio reads (default: use metaFlye)

出力例

mmlong2_testrun_pb/results/

seqkit stats mmlong2_testrun_pb/results/bins/*fa

 

その他(レポジトリより)

  • Albertsen, Mら(2013年)が提案したDNA抽出効率差を利用したdifferential coverageによるbinningがサポートされている。それには、追加リードのデータ型(NanoporeはNP、PacBioはPB、short readはIL)とリードファイルの場所を示す2列のカンマ区切りデータフレームを用意する。
  • オプションによっては研磨された16S rRNA配列、baktaによるアノテーション結果なども出力される(レポジトリ参照)。
  • mmlong2は一般的に非常に複雑なメタゲノム(土壌、下水汚泥、ヒト腸など)を対象としており、微生物の多様性が非常に低いサンプル(純粋培養、Zymo Mock DNA Standardなど)には最適ではない(FAQより)。
  • ワークフローのメタゲノミックビニング部分は計算集約的であり(MAG収率に最適化)、完了までに数日から数週間かかる可能性がある(小さなテストデータでも数時間かかる)。
  • mmlong2実行前に、リードの品質フィルタリング(Nanoporeの場合はPhred Q10未満、PacBio HiFiの場合はPhred Q20未満のリードや短いリードを除去する)を行うことを強く推奨する。非常に短いリード(NanoporeやPacBioのデータでは200 bp以下など)をフィルタリングするだけでなく、リードアダプターやバーコード配列をトリミングすることで、ゲノムの回収率が向上する可能性がある。
  • ゲノムの取得にのみ興味がある場合、"mmlong2-lite"も用意されている。mmlong2-liteは原核生物ゲノムの回復手順はmmlong2と同じで、大規模なデータベースのインストールは必要としない軽量版となっている。
  • ワークフローがクラッシュした場合、トラブルシューティングのためにStdoutとSnakemakeのログを調べ、通常、同じコマンドを再実行することで再開できる。
  • ワークフロー実行中に一時ファイルが生成され、実行後にSnakemakeによって削除されない場合がある。-temporary_dirオプションでmmlong2の作業ディレクトリを指定することができる。
  • 現在のバージョンでは、ウイルスや真核生物のゲノム回収には対応していない。

 

コメント

自分が知る限り、最もパワフルなメタゲノムassemblyと分離のためのパイプラインです。エラーが発生しにくい設計になっているのも好印象です。機会があれば自分の系でも試してみたいです。

引用

Recovery of highly contiguous genomes from complex terrestrial habitats reveals over 15,000 novel prokaryotic species and expands characterization of soil and sediment microbial communities
 Mantas Sereika, Aaron James Mussig, Chenjing Jiang, Kalinka Sand Knudsen, Thomas Bygh Nymann Jensen, Francesca Petriglieri, Yu Yang, Vibeke Rudkjøbing Jørgensen, Francesco Delogu, Emil Aarre Sørensen, Per Halkjær Nielsen, Caitlin Margaret Singleton, Philip Hugenholtz, Mads Albertsen

bioRxiv, Posted December 21, 2024.

 

関連