Frage:
Der Zustand, Einschränkungen und Vergleiche von großen Variantengeschäften
agapow
2017-05-22 21:14:17 UTC
view on stackexchange narkive permalink

Hintergrund: Wir benötigen zunehmend eine Möglichkeit, viele Variantendaten zu speichern, die mit vielen Probanden verknüpft sind: Denken Sie an klinische Studien und Krankenhauspatienten und suchen Sie nach krankheitsverursachenden oder relevanten Genen. Bei tausend Themen würden wir anfangen, es ist die Rede von Millionen am Horizont. Bei verschiedenen genommedizinischen Initiativen ist dies wahrscheinlich ein größerer Bedarf.

Das Problem: Es gibt zwar viele Plattformen, aber es ist ein sich schnell entwickelndes Gebiet. Es ist schwierig, ein Gefühl dafür zu bekommen, wie (und ob) sie funktionieren und wie sie gegeneinander antreten:

  • Was ist skalierbar und kann mit vielen Daten umgehen? Welche Art von Grenzen?
  • Was ist robust und kein schwankender Haufen von zusammengehackten Komponenten?
  • Was hat eine große Community dahinter und wird tatsächlich häufig verwendet?
  • li> Was ermöglicht den einfachen Zugriff und die Suche von einem anderen Dienst aus? (Befehlszeilen-, REST- oder Software-APIs)
  • Welche Arten von Varianten werden behandelt?
  • Welche Art von Parametern kann bei der Suche verwendet werden?
p> Lösungen, die ich bisher gesehen habe:
  • BigQ: Wird mit i2b2 verwendet, aber seine breitere Verwendung ist unklar.
  • OpenCGA: sieht am weitesten entwickelt aus, aber ich habe Beschwerden über die Größe der Daten gehört, die es ausspuckt.
  • Die Verwendung von BigQuery über eine Google Genomics-Datenbank: scheint keine allgemeine Lösung zu sein
  • Zwillinge: empfohlen, aber ist es wirklich skalierbar und über andere Dienste zugänglich?
  • SciDb: eine kommerzielle allgemeine Datenbank
  • Quitte
  • LOVD
  • Auf welcher Plattform auch immer DIVAS & RVD ausgeführt wird: die möglicherweise nicht frei verfügbar ist
  • Mehrere grafische / grafische Genomlösungen: Wir (und die meisten anderen Personen) beschäftigen sich momentan wahrscheinlich nicht mit Graph-Genomdaten, aber ist dies eine mögliche Lösung?
  • Rollen Sie Ihre eigenen: Häufig empfohlen, aber ich bin skeptisch, dass dies eine plausible Lösung für einen großen Datensatz ist.

Jemand mit Erfahrung gibt eine Bewertung oder einen allgemeinen Leitfaden zu diesem Plattformbereich?

Meine zwei Cent: Verwenden Sie MongoDB in einem einfachen REST-Framework. Ermöglicht flexible Modelle und Abfragen und sollte in Milliarden von Datensätzen auf einem einzelnen Knoten skaliert werden. Derzeit wird an einem FLOSS-Projekt gearbeitet, das jedoch noch nicht produktionsbereit ist.
@woemler Wie ist es im Vergleich zu anderen Ansätzen? Jemand, den ich kenne, hat MongoDB vor ~ 5 Jahren an 1000g-Genotypen ausprobiert. Er sagte, MongoDB sei bei parallelen Abfragen über 10x langsamer als bcf2, während es einen viel größeren Festplatten- / Speicherbedarf habe. Das heißt, er war damals neu in MongoDB und macht es möglicherweise nicht optimal.
@user172818: Die neueren Versionen von MongoDB (3.2+) sind deutlich schneller als die Versionen von vor einigen Jahren. Ich habe es mit anderen kostenlosen RDBMS verglichen und es funktioniert in der Regel genauso gut oder besser, insbesondere bei komplexen Datendarstellungen wie Variantenaufrufen.
Ist das Speichern der Daten hier wichtiger oder ist die Verarbeitung von Statistiken (mit Python, R usw.) über die Daten wichtiger?
@macgyver: gute Beobachtung. Die Daten - angeblich wollen die Leute die Daten abbauen und abfragen, anstatt sich zusammenfassende Statistiken und Analysen anzusehen.
Einer antworten:
#1
+13
user172818
2017-05-23 03:13:53 UTC
view on stackexchange narkive permalink

Eine epische Frage. Leider lautet die kurze Antwort: Nein, es gibt keine weit verbreiteten Lösungen.

Für mehrere tausend Stichproben sollte BCF2, die binäre Darstellung von VCF, gut funktionieren. Ich sehe keinen Bedarf an neuen Werkzeugen in dieser Größenordnung. Für eine größere Stichprobe verwenden ExAC-Mitarbeiter Hagel auf Funkenbasis. Zusätzlich zu den Genotypen werden alle Annotationen pro Probe (wie GL, GQ und DP) gespeichert. Hagel wird in der Praxis zumindest häufig verwendet, wenn auch hauptsächlich von einigen wenigen Gruppen.

Ein einfacheres Problem besteht darin, nur Genotypen zu speichern. Dies ist für die Mehrheit der Endbenutzer ausreichend. Es gibt bessere Ansätze zum Speichern und Abfragen von Genotypen. Das vom Gemini-Team entwickelte GQT ermöglicht die schnelle Abfrage von Proben. Sie können damit schnell Proben unter bestimmten Genotypkonfigurationen ziehen. Wie ich mich erinnere, ist GQT um Größenordnungen schneller als die Google Genomics API, um PCA durchzuführen. Ein weiteres Tool ist BGT. Es erzeugt eine viel kleinere Datei und bietet schnelle und bequeme Abfragen über Websites. In seinem Artikel geht es um ~ 32.000 Proben des gesamten Genoms. Ich bin im Lager und glaube, dass spezielle Binärformate wie GQT und BGT schneller sind als Lösungen, die auf generischen Datenbanken basieren. Ich würde Sie ermutigen, einen Blick darauf zu werfen, wenn Sie nur Genotypen abfragen möchten.

Intels GenomicDB geht das Problem aus einem anderen Blickwinkel an. Ein "quadratischer" VCF mit mehreren Stichproben wird intern nicht beibehalten. Stattdessen werden Genotypen / Anmerkungen pro Probe beibehalten und zusammengeführte VCF im laufenden Betrieb generiert (dies ist nach meinem Verständnis falsch). Ich habe keine Erfahrungen aus erster Hand mit GenomicDB, aber ich denke, dass etwas in dieser Linie die ultimative Lösung im Zeitalter von 1M-Proben sein sollte. Ich weiß, dass GATK4 es irgendwann verwendet.

Bei anderen in Ihrer Liste ist Gemini möglicherweise nicht so gut skalierbar, denke ich. Dies ist teilweise der Grund, warum sie an GQT arbeiten. Als ich das letzte Mal nachgesehen habe, hat BigQuery keine einzelnen Genotypen abgefragt. Es werden nur Site-Statistiken abgefragt. Google Genomics-APIs greifen auf einzelne Genotypen zu, aber ich bezweifle, dass sie performant sein können. Adam ist einen Versuch wert. Ich habe es jedoch nicht versucht.

+1 für Hagel, eindeutig die richtige Antwort an dieser Stelle
Sie können einzelne Genotypen mit BigQuery abfragen. Die größte Herausforderung besteht derzeit darin, eigene Abfragen zu schreiben, um Analysen durchzuführen.


Diese Fragen und Antworten wurden automatisch aus der englischen Sprache übersetzt.Der ursprüngliche Inhalt ist auf stackexchange verfügbar. Wir danken ihm für die cc by-sa 3.0-Lizenz, unter der er vertrieben wird.
Loading...