Idee & Schnittstellenanbindung
Die Mars-Rover senden die Bilder natürlich nicht direkt an uns, sondern an die NASA. Damit auch andere Menschen die Bilder ansehen können, hat die NASA eine Schnittstelle zur Verfügung gestellt, mit der man diese Daten abrufen kann. Die Nutzung einer solchen Schnittstelle erfordert etwas Vorwissen und ist sehr unpraktisch, vor allem wenn man noch nie etwas von Schnittstellen gehört hat. Um dieses Problem für die breite Masse zu lösen, haben wir ein Backend-Programm geschrieben, das laufend die Daten der Schnittstelle abruft und für ein einfaches Durchsuchen aufbereitet. Mit dem schlichten User Interface unserer Web-App kann nun jeder einfach auf die Bilder aus dem All zugreifen.
Datenmenge
Der Grund für die Erstellung einer Marsrover-Suchmaschine ist die relativ große Datenmenge. Die Rover bleiben mehrere Jahre lang am Mars und senden täglich Bilder von verschiedenen Kameras an die Erde. Über die Jahre sind mehr als 1.040.403 Datensätze zusammengekommen und werden täglich mehr. Um spezifischer nach den Bildern suchen zu können, haben die Daten in einer Suchmaschine indexiert.
Von Zuhause aus den Mars erleben
Das Hauptfeature der App ist der Zugriff auf 1.040.403 Bilder vom Mars. Mit der Suchfunktion kann man nach Mars Rover und nach den Bildern der verschiedenen Kameras suchen. Um die Suche zu verfeinern bietet die App auch Suchvorschläge an. Mit einem kleinen Filter-Menü kann man die Ergebnisse nach bestimmten Zeiträumen, in denen Bilder gemacht wurden, Filtern. Da sich die Zeit eines Tages am Mars und auf der Erde unterscheidet, kann man auch nach SOL (Tag-Nacht-Zyklus am Mars) und dem Datum auf der Erde filtern.
Infos für Technikinteressierte
Sowohl für das initiale Abrufen der Daten von der NASA-Schnittstelle als auch für die kontinuierliche Datenabfrage wurde mit der Programmiersprache Python gearbeitet. Die abgefragten Daten werden mit der Suchmaschine Solr indexiert. Für die Implementierung der Suchmöglichkeiten wurde ebenfalls Solr verwendet. Die Web-App, mit der man die Daten im Browser abrufen kann, wurde mit dem Frontend Framework React erstellt.
Verwendete Technologien
React
Solr
Python
Netlify