MetaGraph는 주석이 달린 게놈 그래프와 시퀀스-그래프 정렬의 확장 가능한 구성을 위한 도구입니다.
MetaGraph의 기본 인덱스 표현은 확장성이 뛰어나며 수조 개의 노드와 수백만 개의 주석 레이블이 있는 그래프 작성을 지원합니다. 동시에, 제공된 워크플로우와 신중한 구현은 핵심 데이터 구조의 낮은 수준 최적화와 결합되어 뛰어난 쿼리 및 정렬 성능을 가능하게 합니다.
온라인 문서는 https://metagraph.ethz.ch/static/docs/index.html에서 확인할 수 있습니다. 오프라인 소스는 여기에 있습니다.
Anaconda를 사용하여 Linux 또는 Mac OS X에 최신 릴리스를 설치하십시오.
conda install -c bioconda -c conda-forge metagraph
시스템에서 docker를 사용할 수 있으면 즉시 시작하세요.
docker pull ghcr.io/ratschlab/metagraph:master
docker run -v ${HOME}:/mnt ghcr.io/ratschlab/metagraph:master
build -v -k 10 -o /mnt/transcripts_1000 /mnt/transcripts_1000.fa
${HOME}
호스트 시스템의 디렉터리로 바꿔 컨테이너의 /mnt
아래에 매핑합니다.
Protein
알파벳용으로 컴파일된 바이너리를 실행하려면 --entrypoint metagraph_Protein
만 추가하면 됩니다.
docker run -v ${HOME}:/mnt --entrypoint metagraph_Protein ghcr.io/ratschlab/metagraph:master
build -v -k 10 -o /mnt/graph /mnt/protein.fa
보시다시피 Docker 컨테이너에서 MetaGraph를 실행하는 것은 매우 쉽습니다. 또한 다음 명령(또는 이와 유사한 명령)은 컨테이너에 마운트된 디렉터리를 확인하거나 다른 종류의 명령 디버깅에 유용할 수 있습니다.
docker run -v ${HOME}:/mnt --entrypoint ls ghcr.io/ratschlab/metagraph:master /mnt
컨테이너 이미지의 다양한 버전이 모두 여기에 나열됩니다.
소스에서 컴파일하려면(예: 사용자 정의 알파벳 또는 기타 구성으로 빌드하는 경우) 온라인 설명서를 참조하세요.
./metagraph build
./metagraph annotate
./metagraph transform_anno
./metagraph query
DATA="../tests/data/transcripts_1000.fa"
./metagraph build -k 12 -o transcripts_1000 $DATA
./metagraph annotate -i transcripts_1000.dbg --anno-filename -o transcripts_1000 $DATA
./metagraph query -i transcripts_1000.dbg -a transcripts_1000.column.annodbg $DATA
./metagraph stats -a transcripts_1000.column.annodbg transcripts_1000.dbg
./metagraph
./metagraph build -v --parallel 30 -k 20 --mem-cap-gb 10
-o < GRAPH_DIR > /graph < DATA_DIR > / * .fasta.gz
2>&1 | tee < LOG_DIR > /log.txt
./metagraph build -v --parallel 30 -k 20 --mem-cap-gb 10 --disk-swap < GRAPH_DIR >
-o < GRAPH_DIR > /graph < DATA_DIR > / * .fasta.gz
2>&1 | tee < LOG_DIR > /log.txt
K=20
./KMC/kmc -ci5 -t4 -k $K -m5 -fm < FILE > .fasta.gz < FILE > .cutoff_5 ./KMC
./metagraph build -v -p 4 -k $K --mem-cap-gb 10 -o graph < FILE > .cutoff_5.kmc_pre
./metagraph annotate -v --anno-type row --fasta-anno
-i primates.dbg
-o primates
~ /fasta_zurich/refs_chimpanzee_primates.fa
./metagraph transform_anno -v --linkage --greedy
-o linkage.txt
--subsample R
-p NCORES
primates.column.annodbg
N*R/8 + 6*N^2
바이트의 RAM이 필요합니다. 여기서 N
은 열 수이고 R
은 서브샘플링된 행 수입니다.
./metagraph transform_anno -v -p NCORES --anno-type brwt
--linkage-file linkage.txt
-o primates
--parallel-nodes V
-p NCORES
primates.column.annodbg
M*V/8 + Size(BRWT)
바이트의 RAM이 필요합니다. 여기서 M
은 주석의 행 수이고 V
동시에 병합된 노드 수입니다.
./metagraph query -v -i < GRAPH_DIR > /graph.dbg
-a < GRAPH_DIR > /annotation.column.annodbg
--min-kmers-fraction-label 0.8 --labels-delimiter " , "
query_seq.fa
./metagraph align -v -i < GRAPH_DIR > /graph.dbg query_seq.fa
./metagraph assemble -v < GRAPH_DIR > /graph.dbg
-o assembled.fa
--unitigs
./metagraph assemble -v < GRAPH_DIR > /graph.dbg
--unitigs
-a < GRAPH_DIR > /annotation.column.annodbg
--diff-assembly-rules diff_assembly_rules.json
-o diff_assembled.fa
샘플 파일은 metagraph/tests/data/example.diff.json
및 metagraph/tests/data/example_simple.diff.json
을 참조하세요.
그래프 통계
./metagraph stats graph.dbg
주석 통계
./metagraph stats -a annotation.column.annodbg
둘 다에 대한 통계
./metagraph stats -a annotation.column.annodbg graph.dbg
최상위 소스 디렉터리에 있는 Makefile
사용하면 보다 편리하게 metagraph
빌드하고 테스트할 수 있습니다. 다음 인수가 지원됩니다.
env
: 컴파일/실행할 환경( ""
: 호스트에서, docker
: 도커 컨테이너에서)alphabet
: 특정 알파벳에 대한 메타그래프를 컴파일합니다(예: DNA
또는 Protein
, 기본 DNA
).additional_cmake_args
: cmake에 전달할 추가 인수입니다.예:
# compiles metagraph in a docker container for the `DNA` alphabet
make build-metagraph env=docker alphabet=DNA
새 버전 릴리스 생성은 세 단계로 수행됩니다.
Metagraph는 GPLv3 라이센스(LICENSE 참조)에 따라 배포됩니다. 자세한 내용은 AUTHORS 및 COPYRIGHTS 파일을 참조하세요.