spfy : 大腸菌の全ゲノム配列からサブタイプを予測し、集団全体の比較分析のためのグラフ データを構築するためのプラットフォーム。
発行者: Le,KK、Whiteside,MD、Hopkins,JE、Gannon,VPJ、Laing,CR spfy : 細菌の表現型のリアルタイム予測と下流の比較分析のための統合グラフ データベース。データベース(2018)Vol. 2018: 記事ID Bay086; doi:10.1093/データベース/bay086
ライブ: https://lfz.corefacility.ca/superphy/spfy/
git clone --recursive https://github.com/superphy/spfy.git
cd spfy /
docker-compose up
ECタイプ:
パンプレディック:
Conda の Docker イメージ:
異なる人口グループを比較する:
サブタイプ化モジュールのランタイム:
cd app/
python -m modules/savvy -i tests/ecoli/GCA_001894495.1_ASM189449v1_genomic.fna
ここで、 -i
の後の引数はゲノム (FASTA) ファイルです。 spfyのオントロジーは、https://raw.githubusercontent.com/superphy/backend/master/app/scripts/spfy_ontology.ttl で入手できます。 https://raw.githubusercontent.com/superphy/backend/master を使用して生成されました。 /app/scripts/generate_ontology.py とspfyのバックエンド コードからの共有関数。これを実行したい場合は、次の手順を実行します。 1. cd app/
2. python -m scripts/generate_ontology
これにより、オントロジーがapp/
に配置されます。
http://www.visualdataweb.de/webvowl/ を使用して、.ttl ファイルから美しい図を生成できます。
注記
現在は .fna ファイルのみをセットアップしています
フロントエンド Web サイトをバイパスしても、次の方法でサブタイプ ジョブをキューに入れることができます。
/datastore
にマウントします。たとえば、ファイルを
/home/bob/ecoli-genomes/
に保存する場合は、docker-compose.yml
ファイルを編集して次のように置き換えます。volumes : - /datastoreと:
volumes : - /home/bob/ecoli-genomes:/datastore
docker-compose down docker-compose up -d
docker exec -it backend_webserver_1 sh python -m scripts/sideload exit
残存物がゲノムフォルダーに作成される可能性があることに注意してください。
ドッカーイメージ | ポート | 名前 | 説明 |
---|---|---|---|
バックエンド-rq | 80/tcp、443/tcp | バックエンド_ワーカー_1 | 主要な redis キューワーカー |
バックエンド-rq-bレイズグラフh | 80/tcp、443/tcp | バック エンド_ワーカー ブレイズ グラフィック PH-I DS_ 1 | これは、ブレイズ グラフ データベースのspfy ID 遺伝子比率を処理します。 |
バックエンド | 0.0。 0.0: 8000 ->80 /tcp、443/tcp | バックエンド_ウェブ -ngi nx-u wsgi _1 | 待ち行列中のタスクを処理する flask バックエンド |
スーパーフィ / ブラゼグラ aph: 2.1。 4 インチのフレーム | 0.0。 0.0: 8080 ->80 80/t cp | バック エンド_ブラ ゼグラ aph_1 | ブレイズ グラフ データベース |
レディS:3。 2 | 6379 /tcp | バックエンド_レッド_1 | Redis データベース |
リアックタップ | 0.0。 0.0: 8090 ->50 00/t cp | バックエンド_リアctap_1 | spfyの前に |
superphy/backend-rq:2.0.0
イメージはスケーラブルです。必要なだけ、または処理能力があれば、必要なだけインスタンスを作成できます。このイメージは、 RGI
呼び出しを含むほとんどのタスクを処理するmultiples
キュー (12 ワーカー) をリッスンする役割を果たします。また、 ECTyper
実行するsingles
キュー (1 ワーカー) もリッスンします。これは、 RGI
方程式の中で最も遅い部分であるため行われます。ワーカー管理はsupervisor
で処理されます。
superphy/backend-rq-blazegraph:2.0.0
イメージはスケーラブルではありません。Blazegraph データベースにクエリを実行して重複エントリを確認し、 spfy ID を順番に割り当てます。パフォーマンスを向上させるために、その機能は最小限に抑えられています (並列パイプラインでは ID 生成が 1 つのボトルネックとなるため)。比較は、送信されたファイルの sha1 ハッシュによって行われ、重複しないものは、生成されたspfy ID をファイル ハッシュにリンクすることによって ID が予約されます。ワーカー管理はsupervisor
で処理されます。
Flask エンドポイントを実行するsuperphy/backend:2.0.0
は、 supervisor
を使用して内部プロセス ( nginx
、 uWsgi
を管理します。
/app/config.py
のdatabase['blazegraph_url']
の下でエンドポイントを適宜変更します。 新しいモジュールを追加するために必要な手順は、開発者ガイドに記載されています。