gget - Genomische Datenbanken immer zur Hand
Wir vereinfachen und optimieren das gezielte Abrufen von Informationen aus großen genomischen Datenbanken.
Welche gesellschaftliche Herausforderung adressiert euer Prototyp?
Mit der zunehmenden Nutzung von Sequenzierungsmethoden in der Biologie und Medizin steigt die Nachfrage nach genetischen Referenzinformationen, die in großen, oft schwer zugänglichen Datenbanken gespeichert werden. gget ist ein Programm, das den Abruf der Daten dieser genomischen Datenbanken automatisiert und beschleunigt. gget besteht aus interoperablen Modulen, von denen jedes auf einen Aspekt der genomischen Datenanalyse spezialisiert ist und in einer einzigen Zeile Code alle relevanten Informationen aus verschiedenen Datenbanken abrufen kann. gget gibt es bereits und soll im Rahmen dieser Förderung erweitert werden. Methoden der molekularen Genetik werden zunehmend preiswerter und effizienter. Ihre Nutzung in der akademischen und industriellen Wissenschaft wächst und hat in Gebieten wie der personalisierten Medizin auch im Alltag Einzug gehalten. Ein Beispiel ist single-cell RNA Sequencing, wobei die RNA-Sequenzen tausender Zellen an einem bestimmten Zeitpunkt gelesen werden. Dies erlaubt einen Einblick in den „Gemütszustand“ jeder einzelnen Zelle und was diese in Zukunft vorhat. Bei allem Potenzial bringt die Optimierung neuer Methoden jedoch Herausforderungen mit sich. Damit viele Millionen von RNA Sequenzen interpretiert werden können, muss man diese auf die bekannten Gene zurückführen und herausfinden, welche Rolle sie in der Zelle spielen. Hierfür werden die Ergebnisse der RNA-Analyse mit bekannten DNA-Sequenzen, Genen, Proteinen und allen damit verbundenen Informationen verglichen. Solche Informationen sind zwar öffentlich verfügbar, aber über viele große, oft schwer zu navigierende Online-Datenbanken verteilt. Einige Beispiele sind die Datenbanken Ensembl, NCBI, und UniProt. Manuell auf diese Informationen zuzugreifen, ist mühsam und fehleranfällig. gget ist ein Python- und Terminal-Programm, das den Abruf der Daten aus genomischen Datenbanken automatisiert, optimiert und beschleunigt.
Wie geht ihr das Problem an?
gget kombiniert MySQL, Application Programming Interface (API) und Web Data Extraction Methoden, mit denen schnell und zuverlässig relevante Informationen aus verschiedenen Datenbanken abgerufen werden können. gget integriert außerdem andere Open-Source-Programme, etwa das Programm Muscle zum Vergleich von RNA- und DNA-Sequenzen und AlphaFold, für das Vorhersagen von Proteinstrukturen. Bestehende Programme werden als binäre Dateien automatisch zusammen mit gget installiert. Diese einzigartige Kombination wird es gget erlauben, Aufgaben auszuführen, die von bestehenden Programmen nicht unterstützt werden. Die aktuelle Quellcode-Programmiersprache ist Python. Eine der geplanten Neuerungen ist der Transfer zur Programmiersprache Rust, die HTTP-Anfragen schneller und effizienter ausführen kann. Außerdem soll gget als Open-Source-Projekt nicht nur für jeden erhältlich sein, sondern auch zu einem Gemeinschaftsprojekt wachsen, zu dem jeder durch GitHub pull requests beitragen kann. Um die Qualität von gget weiterhin zu garantieren, müssen die Infrastruktur und Richtlinien für Community-Input ausgebaut werden. gget kann von Benutzer*innen durch Eingabe des Terminal-Kommandos „pip install gget“ installiert werden. Das Programm kann entweder vom Terminal aus oder in einer Python Umgebung, wie Jupyter Lab oder Google Colab, genutzt werden. Letztere werden in der Wissenschaft, der Industrie und der Medizin zur Analyse von genomischen Daten häufig angewendet. Die einfach zu bedienende duale Nutzungsweise wird Anwendern erlauben, die gget Kommandos schnell und einfach in bestehende Datenanalyse-Workflows zu integrieren.
An wen richtet sich euer Tool?
Die Zielgruppe besteht aus (Bio)informatiker*innen, Biolog*innen, Mediziner*innen, und Datenwissenschaftler*innen in allen Bereichen der genomischen Datenanalyse. gget soll durch die einfache Nutzungsweise auch von Anfänger*inen des Programmierens genutzt werden können.