HTML

Az élet kódjai

Csináld maga. Senki nem csinálja meg helyetted.

Friss topikok

Azok a fránya paraméterek

2017.08.20. 23:23 Travis.CG

A paraméter miatt az alignment elveszett,
Az alignment miatt az ismétlés elveszett,
Az ismétlés miatt a kísérlet elveszett,
A kísérlet miatt a cikk elveszett,
A cikk miatt a kutatócsoport elveszett,
Máskor gondosan válaszd meg a paramétered!

Szerencsére a való életben nem ilyen sarkallatos a helyzet, de a paraméter választás sok mindent meghatároz. Ez különösen igaz azokra a paraméterekre, amelyeket a felhasználó be sem állíthat. Például olyan népszerű programokban, mint a MACS2.

A történet egy Chip-seq kísérlettel kezdődött. Mivel a Sangerben a rák genomikai csoportok nem sűrűn szekvenálnak chip-seq-et, a teljes pipeline-tt mellőznöm kellett, amit nem is bántam. Az illesztést minden mintára BWA-mem-el végeztem, ezért elég váratlanul ért, mikor az alignmenten futtatott MACS2 egyetlen egy fájlnál azt jelezte, hogy a BAM fájl érvénytelen.

Azért tudnak furcsa dolgok történni az LFS-ben (ez a közös tárterület, amit minden node elér), főleg ha több szál akarja írni ugyan azt a fájlt, vagy a fejlesztők épp frissítettek a kliensen, amiben maradt egy túlcsordulás hiba vagy időtúllépés keletkezett. Ugyancsak meglepő dolgokat képes produkálni egy több száz nodos szuperszámítógép is. Az egyik gép kiesik, nem tudja olvasni a megosztott fájlrendszert. Mindez rengeteg teret ad Bitmumusnak, hogy kiélje magát.

Az ellenőrzés viszont azt mutatta, hogy a BAM fájl teljesen korrekt, olvasható, a szükséges elemek benne voltak. Gyorsan megnéztem, találkozott-e már más is hasonló problémával, de egyik eset sem illett az én esetemre.

A gyors kacsás keresés viszont kiadta a MACS2 forráskódját, ahol a hiba keletkezett. Elkezdtem böngészni a kódot egyszerűen weben keresztül, amitől olyan érzésem lett, mint a koca dohányosnak, aki nem tüdőzi le a füstöt. Ég a cigi, ég a cigi, de hiányzik az érzés.

A hiba oka viszont megvolt. A kód beolvas 10 readet minden BAM fájlnál és az alapján kiszámolja, mennyi a readek távolsága a fragmenten. Ha az első 10 read értékelhetetlen, mert más kromoszómán vannak, 0 a távolságuk, stb. A program dob egy kivételt, hogy érvénytelen a BAM fájl. A tíz read vizsgálat pedig bele van égetve a rendszerbe.

Gyorsan megnéztem a BAM fájlomat. Valóban, értékelhető read a 30. sortól volt.

Először megnéztem, explicite be tudom-e állítani a fragment méretet. Igen, be lehet a --extsize kapcsolóval, de a BAM ellenérzés továbbra is lefut. Eljátszottam a gondolattal, hogy fordítok egy MACS2-t, ahol átírom a kérdéses sort 100-ra, de ez is csak félmegoldás, arról nem is beszélve, hogy ez további problémák forrása lehet, amire nem is gondoltam.

Ehelyett kitöröltem az első 29 BAM rekordot. A program varázslatos módon lefutott. Az ismétlés mindenképp megmenekült.

Szólj hozzá!

Címkék: bioinformatika

A bejegyzés trackback címe:

https://cybernetic.blog.hu/api/trackback/id/tr5212747800

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Nincsenek hozzászólások.
süti beállítások módosítása