Gabi und Sascha
Tags - Kategorien : Alle | Berlin | Bücher | Fotografie | Java | Linkhalde | Weichware | Verfassung

Die Morgenröte ist in einer ersten Beta-Version fertig. ε·ο·s ist ein einfache Front-End für eine Entity Oriented Search über Medline-Daten. Ich habe die Daten in den letzten Wochen erstellt (siehe hier, hier, hier, hier und hier). Dabei ist mir beim Erstellen des Volltext Index ein Fehler unterlaufen. Anstatt des Lucene WhitespaceAnalyzer habe ich den StandardAnalyzer verwendet. Deswegen muss der Index für die endgültige Version noch einmal neu berechnet werden. Für die Entwicklung der Oberfläche habe ich einen 5% grossen Index erstellt. Wegen dieser beiden Gründe entsprechen die folgenden Screenshots nicht den realen Ergenissen. Leider werde ich die spätere Version auch nicht auf diesem Serverchen hier bereit stellen können - der Ressourcenverbrauch ist einfach zu gross.

Die Oberfläche ist einfach. Der Benutzer kann in einer Eingabezeile Terme oder Phrasen eingeben. Er kann das Jahr auswählen, für welches die Eingabe gelten soll - default: alle Jahre.

[ε·ο·s Phraseneingabe]
Phraseneingabe

Das Ergebniss wird ein einer einfachen Tabelle dargestellt. Die Spalten zeigen die laufende Nummer, den preferred Term des Concepts und das entsprechende Jahr. Kommt ein Concept mehrfach vor (Jahresauswahl in allen Jahren), wird nur das erste Vorkommen genommen.

[ε·ο·s Lookup Ergebniss]
Lookup Ergebniss für 'dopamine' in 2006

Ein Problem ist die Geschwindigkeit des Lookups. Die Suche in Lucene dauert meistens nur wenige 100 Millisekunden. Die Ergebnisse dann zu holen ist allerdings sehr teuer und kann über eine halbe Minuten dauern. Ich denke, dass ich hier einen Fehler mache. Muss mal Daniel fragen, wie ich die Abfrage etwas beschleunigen kann.


Ich habe die Applikation in Grails entwickelt. Grails ist ein auf Groovy basierender Ruby on Rails Clone. Ich habe Grails gewählt, weil ich das Werkzeug einmal ausprobieren wollte. Nach 5 Stunden war bei ε·ο·s der Durchstich geschafft: die Anwendung zeigte Ergebnisse. Das spricht für die Dokumentation, aber, zugegeben, ich kannte die Groovy Syntax schon ein wenig :-) Danach habe ich noch ein wenig Feintuning durchgeführt. Die gesamte Umsetzung des Clients hat ca. 7 Stunden gedauert.

Mein Eindruck vom Duo Groovy/Grails ist zwiespältig. Zum Einen empfand ich es mal wieder spannend einfach drauflos zu scripten. Zum Anderen bin ich durch die Typsicherheit, die mir Java bietet sehr verwöhnt. Die meisten Fehler, die ich gemacht habe, waren vergessene oder falsch geschriebene Property- und Methodennamen. Hier ist die IDE-Unterstützung noch nicht so gut.