Needle Macro by fdecmoite @flickr | CC-BY Google hat bekanntgegeben Needlebase, ein Tool zum Auslesen, Bereinigen, Kombinieren und Bereitstellen von Datensätzen, einzustellen. Bei Nutzern wie Datenjournalismus-Interessierten hat dies zu einiger Verwunderung geführt und es kamen Fragen auf, welche Dienste den Platz von Needlebase einnehmen können. Ich sehe zwei Tools, die das Potential haben den Platz einzunehmen, Scraperwiki und Refine. Für eins der beiden sehe ich jedoch eine deutlich höhere Wahrscheinlichkeit.

Hintergrund

Google führt sein einiger Zeit diverse Dienste zusammen und stellt im Rahmen eines größeren „Frühjahrsputzes“ diverse Tools und Services ein. Zu den prominenteren Projekten gehörte im letzten Jahr unter anderem der Labs Bereich. Mit der jüngsten Sparwelle ist unter anderem das Daten-Management-Tool Needlebase eingestellt worden. Bei Google heißt es dazu:

We are retiring this data management platform, which we acquired from ITA Software, on June 1, 2012. The technology is being evaluated for integration into Google’s other data-related initiatives.

Auch im Needlebase Blog hat man sich inzwischen dazu geäußert und bestätigt, dass die Website zum 1. Juni eingestellt wird. Die Technologie, die bei Needlebase zum Einsatz kommt soll in weitere Google Produkte einfließen, dazu zählen prominentere Vertreter wie Google Fusion Tables oder Google Refine:

We’ve been hard at work planning how to best integrate Needlebase’s technology with Google’s portfolio, which includes structured-data initiatives like Fusion Tables, Google Refine, Public Data Explorer, and Freebase.

Reaktionen

In der Open Data- und Datenjournalismus-Community wurde die Nachricht nicht kommentarlos hingenommen. So stellte u.a. Mirko Lorenz via Twitter die Frage welcher Dienst die entstehende Lücke füllen könnte.

Ich muss zugeben Needlebase selbst kaum genutzt zu haben. Nachdem das Thema aber an einigen Ecken aufkam habe ich mir den Dienst und seine Funktionalitäten nochmal genauer angeschaut und kann mir zwei mögliche Varianten vorstellen wie es weitergeht:

Variante 1: Scraperwiki + WYSIWYG Editor

Scraperwiki ist als Tool für das automatisierte Auslesen (Scrapen) von verschiedenen Datenquellen mittlerweile recht bekannt und die Anwender-Community wächst und wächst. Es ist zur Zeit und trotz aller Entwicklungen und Einführungstutorials allerdings noch sehr Coder-lastig – zumindest meinem Eindruck nach. Es unterstützt Ruby, Python und PHP und wendet sich insbesondere an Personen, die mit den jeweiligen Sprachen umgehen können. Zwar hat jeder der möchte die Möglichkeit Quellen einzureichen, die gescrapet werden sollen, ist dann aber auf weitere Community Mitglieder angewiesen, die die Programmierung übernehmen.

Ein einfacher WYSIWYG-Editor würde die Einstiegshürde drastisch senken und neben Codern auch weniger technikaffine User mit an Bord holen. Im Tutorial-Video von Needlebase sind diverse einfache visuelle Zuweisungen zu sehen, einfach per Klick wird definiert, welches Feld welchem Datensatz entspricht. Das System ist selbstlernend und übernimmt die Zuweisung nach den ersten 2-3 Bestimmungen selbst. Hätte Scraperwiki eine solche Benutzeroberfläche könnte es dramatisch an Reichweite gewinnen. Auch die Bereitstellung als Datenbank und das automatisierte, zeitgesteuerte Neuauslesen der Datenquellen per Cronjob bietet Scraperwiki bereits jetzt.

Den Teil den Scraperwiki bislang nicht oder nur bedingt leisten kann ist „Reconciliation“, also die Bereinigung der Daten. Hier liegen dagegen klar die Stärken von Refine, was Variante 2 ins Spiel bringt.

Variante 2: Google Refine erweitert Scraping Funktionalitäten und UI

Mit Refine besitzt Google bereits ein mächtiges und sehr flexibles Tool zum Datenmanagement, bzw zur Bereinigung großer Datensätze. Refine verfügt dabei nicht nur über ein Reconciliation-UI, das sich relativ schnell und einfach erschließt, sondern bringt auch ein lernfähiges bzw halbautomatisiertes System zur Erkennung von Ähnlichkeiten in Datensätzen mit.

Allerdings steht am Anfang der Nutzung von Refine im Normalfall ein bereits extrahierter Datensatz. Needlebase hatte dagegen als „one stop shop“ das Scrapingsystem bereits integriert und die Reconciliation angeschlossen. Refine verfügt zwar ebenfalls über einen Importer, der allerdings im Vergleich zum tatsächlichen individuellen Scrapen mit der Scriptsprache der eigenen Wahl rudimentär ausfällt. Wo Scraperwiki den Coder in seiner bevorzugten Sprache ans Werk lässt, müssen Refine-Anwender auf Jython und Co zurückgreifen. Seit Version 2.1 hat Refine allerdings die Scraping-Fähigkeiten schrittweise ausgebaut und u.a. einen HTML Parser an Bord. Mit GREL (Google Refine Expression Language) bringt es zudem eine eigenständige Scripting-Sprache mit und unterstützt ebenfalls seit 2.1 nativ Fusion Tables Exporte.

Für die Integration in Refine spricht außerdem, dass Needlebase bereits zur Google Familie zählt und die Beteiligten selbst Refine als Option für die Weiterverwendung der Technologie nennen. Als Weiterentwicklung von Freebase Gridworks ist die Anbindung an Freebase zudem seit Anfang an Bestandteil des Tools.

Was Refine allerdings ebenfalls fehlt ist ein Scraping-Interface, das eine vollständige visuelle Zuordnung von Elementen erlaubt. Gerade diese Technologie könnte Googles Tool durch die Needlebase-UI deutlich weiterentwickeln.

Fazit

Ich denke es ist sehr wahrscheinlich, dass Google Needlebase einstellt, um die Technologie weitestgehend in Refine aufgehen zu lassen. Das Tool ist unter aktiver Weiterentwicklung und viele der Funktionen aus Needlebase sind bereits vorhanden. Sie sind allerdings vielfach sehr technisch und codelastig. Refine und Scraperwiki haben daher mehr oder weniger das gleiche Problem: das Scraping-UI.

Schafft Refine zusätzlich ein UI für weniger technikaffine Nutzer und baut das Zusammenspiel mit diversen anderen Google-Diensten weiter aus, sähe das für mich wie der nächste logische Entwicklungsschritt aus. was Refine die größten Chancen einräumt eine echte Alternative zu Needlebase zu werden.

Scraperwiki hat klare Stärken im reinen Scraping, dass durch eine UI deutlich den Nutzerkreis erweitern könnte. Die Bereitstellung der Daten in der Cloud ist eine weitere Parallele zu Needlebase. Um an die Stelle von Needlebase zu treten fehlt allerdings der nächste Schritt bzw ist noch zu wenig entwickelt: die Breinigung der Daten.

Fotonachweis: Needle Macro by fdecomite CC-BY 2.0