spfy : แพลตฟอร์มสำหรับการทำนายชนิดย่อยจากลำดับจีโนมทั้งหมดของ E.coli และสร้างข้อมูลกราฟสำหรับการวิเคราะห์เปรียบเทียบทั่วทั้งประชากร
เผยแพร่ในชื่อ: Le,KK, Whiteside,MD, Hopkins,JE, Gannon,VPJ, Laing,CR spfy : ฐานข้อมูลกราฟแบบรวมสำหรับการทำนายฟีโนไทป์ของแบคทีเรียแบบเรียลไทม์และการวิเคราะห์เปรียบเทียบขั้นปลายน้ำ ฐานข้อมูล (2561) ฉบับที่. 2018: รหัสบทความ bay086; ดอย:10.1093/ฐานข้อมูล/bay086
สด: https://lfz.corefacility.ca/superphy/spfy/
git clone --recursive https://github.com/superphy/spfy.git
cd spfy /
docker-compose up
ECTประเภท:
แพนพรีดิก:
ภาพนักเทียบท่าสำหรับ Conda:
เปรียบเทียบกลุ่มประชากรที่แตกต่างกัน:
รันไทม์ของโมดูลการพิมพ์ย่อย:
cd app/
python -m modules/savvy -i tests/ecoli/GCA_001894495.1_ASM189449v1_genomic.fna
โดยที่อาร์กิวเมนต์หลัง -i
คือไฟล์จีโนมของคุณ (FASTA) Ontology สำหรับ 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
ซึ่งจะใส่ ontology ใน app/
คุณสามารถสร้างไดอะแกรมสวยๆ จากไฟล์ .ttl โดยใช้ http://www.visualdataweb.de/webvowl/
บันทึก
ขณะนี้ตั้งค่าสำหรับไฟล์ .fna เท่านั้น
คุณสามารถข้ามเว็บไซต์ส่วนหน้าและยังคงจัดคิวงานพิมพ์ย่อยได้โดย:
/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
โปรดทราบว่าอาจมีการสร้างการออกซ้ำในโฟลเดอร์จีโนมของคุณ
ท่าเรือหรือ Imag e | พอร์ตส | ชื่อ ส | คำอธิบาย |
---|---|---|---|
แบ็คเอนด์-rq | 80/ตันซีพี, 443/ทีซีพี | แบ็คเอนด์_wor ker_1 | คิวและคนงานหลัก |
แบ็คเอนด์- rq-b laze grap h | 80/ตันซีพี, 443/ทีซีพี | back end_wor ker- blaz egra ph-i ds_ 1 | อัตรายีน spfy ID ในมือนี้สำหรับฐานข้อมูล blaz egra ph |
ด้านหลัง | 0.0. 0.0: 8000 ->80 /tcp , 443/ TCP | ด้านหลัง end_web -ngi nx-u wsgi _1 | flas k back end ซึ่งมือของคุณทำหน้าที่ les enqu euei ng job s |
super rphy /bla zegr aph: 2.1. 4 นิ้ว ncin g | 0.0. 0.0: 8080 ->80 80/ตันซีพี | แบ็คเอนด์_bla zegr aph_1 | ฐานข้อมูล Blaz egra ph |
เรดิเอส:3. 2 | 6379 /ทีซีพี | แบ็คเอนด์_เรดคือ_ 1 | ฐานข้อมูลของ Redi |
รีแอค แทป | 0.0. 0.0: 8090 ->50 00/ตันซีพี | แบ็คเอนด์_rea ctap p_1 | ด้านหน้า t-en d ถึง spfy |
อิมเมจ superphy/backend-rq:2.0.0
สามารถปรับขนาดได้ : คุณสามารถสร้างอินสแตนซ์ได้มากเท่าที่คุณต้องการ/มีพลังในการประมวลผล รูปภาพมีหน้าที่ฟังคิว multiples
(พนักงาน 12 คน) ซึ่งจัดการงานส่วนใหญ่รวมถึงการเรียก RGI
นอกจากนี้ยังฟังคิว singles
(ผู้ปฏิบัติงาน 1 คน) ซึ่งรัน ECTyper
สิ่งนี้เกิดขึ้นเนื่องจาก RGI
เป็นส่วนที่ช้าที่สุดของสมการ การจัดการผู้ปฏิบัติงานได้รับการจัดการโดย supervisor
อิมเมจ superphy/backend-rq-blazegraph:2.0.0
ไม่สามารถปรับขนาดได้ โดยมีหน้าที่ในการสืบค้นฐานข้อมูล Blazegraph สำหรับรายการที่ซ้ำกัน และสำหรับการกำหนด spfy ID ตาม ลำดับ ฟังก์ชั่นต่างๆ จะถูกเก็บไว้ให้น้อยที่สุดเท่าที่จะทำได้เพื่อปรับปรุงประสิทธิภาพ (เนื่องจากการสร้าง ID ถือเป็นปัญหาคอขวดในไปป์ไลน์แบบขนาน) การเปรียบเทียบทำได้โดยแฮช sha1 ของไฟล์ที่ส่งมา ส่วนไฟล์ที่ไม่ซ้ำกันจะมีรหัสสำรองไว้โดยการเชื่อมโยงรหัส spfy ที่สร้างขึ้นเข้ากับแฮชของไฟล์ การจัดการผู้ปฏิบัติงานได้รับการจัดการโดย supervisor
superphy/backend:2.0.0
ซึ่งรันจุดสิ้นสุด Flask ใช้ supervisor
เพื่อจัดการกระบวนการภายใน: nginx
, uWsgi
database['blazegraph_url']
ใน /app/config.py
ขั้นตอนที่จำเป็นในการเพิ่มโมดูลใหม่ได้รับการบันทึกไว้ในคู่มือนักพัฒนา