BESCHLEUNIGUNG DES WEBSCRAPING PROZESS DURCH EINE MAßGESCHNEIDERTE SYSTEMARCHITEKTUR

ÜBER DAS HESSISCHE STATISTISCHE LANDESAMT

Das Hessische Statistische Landesamt mit Sitz in Wiesbaden ist für die Erstellung von Statistiken zuständig. Dies erfolgt in der Regel auf Anordnung des Statistischen Bundesamts, das ebenfalls seinen Sitz in Wiesbaden hat, oder von Eurostat nach gesetzlichen Vorgaben. Es ist seit mehr als 70 Jahren für zuverlässige statistische Erhebungen verantwortlich. Es werden Daten aus dem gesellschaftlichen, ökonomischen und ökologischen Bereich erhoben. Die erhobenen Zahlen werden als Entscheidungsgrundlage in der Politik, Verwaltung und Wissenschaft genutzt.

AUSGANGSLAGE

Unser Ziel war es, den genutzten Webscraping Prozess deutlich zu beschleunigen sowie inhaltlich zu verbessern. Bei unserer Recherche für die Vorbereitung der Angebotserstellung, konnten wir ermitteln, dass Sie aktuell 8,3 Jahre für das Erfassen von rund 300.000 Firmenwebseiten in Hessen benötigen. Im Weiteren stützen sich hierbei unsere Annahmen auf die Informationen, die wir dem Fachartikel: „Webscraping von Unternehmenswebseiten und maschinelles Lernen zum Gewinnen von neuen digitalen Daten“ entnehmen konnten. Wir haben umfangreiche Erfahrung beim Scraping und bei der Auswertung von Informationen aus dem Internet. Hierbei setzen wir von uns auf Basis von Open Source Bibliotheken entwickelte Frameworks ein. Diese Frameworks bringen wir natürlich kosten- und urheberrechtsfrei in die Leistungserbringung mit ein.
Dadurch sehen wir ein Beschleunigungspotenzial durch Optimierung der Daten-Pipeline, der Ausnutzung der Netzwerkbandbreite, dem Datendurchsatz beim Speichern und Laden der Daten, sowie unter Umständen bei der Prozessierung und Weiterverarbeitung der Webseiten. Ein wesentlicher Perfomancegewinn ist auch durch die Skalierung durch parallellaufende Prozesse zu erreichen. Wir denken, dass wir somit Ihre Architektur so erweitern können, dass das Scrapen parallel und asynchron (optional verteilt) erfolgen kann und sich auch durch Hinzufügen von mehr Ressourcen (vertikal oder horizontal) weiter skalieren lässt. Bei Bedarf kann man Layer mit verschiedenen Verarbeitungsgeschwindigkeiten einführen, um die unterschiedlichen Anforderungen für Lesen und Schreiben sowie für Rohdaten und Analysedaten abzudecken.

ERBRACHTE LEISTUNGEN

Für den Kunden wurde eine maßgeschneiderte Systemarchitektur entworfen und implementiert. Desweiteren wurden verschiedene Deploymentkonzepte recherchiert (Cloud, eigenes Rechenzentrum, eigener hochperformanter Desktoprechner) und das System so gestaltet, dass es in verschiedenen Umgebungen lauffähig ist.
Einer der Hauptansätze bestand darin, den existierenden Prototypen in einzelne Aufgaben zu unterteilen und dann massiv zu parallelisieren. Da im Vorhinein nicht klar war, wie groß die Anforderungen an Parallelisierung und Speicherplatz tatsächlich werden, wurde das System so entworfen, dass es erlaubt verschiedene Backends für das Speichern der Daten und das Verteilen der Aufgaben zu verwenden – entweder traditionell oder aber aus dem Big Data-Bereich. Die Parallelisierung wurde zudem durch dezentrale, eigenständig und unabhängig arbeitende Worker realisiert, die über den Zugriff auf einen Datastorage und eine verteilte Kafka-Queue haben. Und zu guter Letzt wurde das System von Anfang an so konzipiert, dass es verteilt auf mehreren Servern laufen kann, falls die Skalierung das verlangt.
Da im Webscrapingumfeld Fehler unausweichlich sind wurde bei der Systemarchitektur darauf Wert gelegt mit Fehlern umgehen zu können, sodass sich die Datenpipelines ‚eigenständig‘ heilen können.
Sowohl eine inhaltliche Korrektheit als auch eine bestmögliche Performance für die angestrebte Skalierung sollten erreicht werden. Dabei galt es vor allem viele unbekannte Größen (Laufzeiten, Speicherplatzbedarf, Netzwerkdurchsatz) zu bestimmen und das System an die praktischen Gegebenheiten anzupassen. Deshalb wurde das Projekt agile – mit vielen Feedbackrunden und Neuausrichtungen – implementiert, wobei verschiedene technische Aspekte getestet wurden.

ERGEBNIS

Als Ergebnis entstand Ende Juni ein Produkt, dass sich während der Entwicklung mehrmals den nicht klar definierten Kundenwünschen anpasste.
Der Kunde hat on-time und on-budget ein System erhalten, mit dem er seine konkreten Probleme lösen kann und was den Skalierungsansprüchen genüge tut aber auch noch weit darüber hinaus skaliert werden kann.
Die Vorteile für den Kunden sind, dass er sich mit dem Produkt Datenquellen erschließt, die vorher nicht oder nur in einem sehr kleinem Umfang nutzbar gewesen sind. Desweitern handelt es sich bei dem Projekt für den Kunden auch um ein Referenzprojekt um zu lernen, was und wie alternative Datenquellen erschlossen werden können.

AUF EINEN BLICK

Kunde:

Hessisches Statistisches Landesamt

Standort:

Wiesbaden

PROJEKTDETAILS
Volumen:

bis zu 120 PT

Dauer:

Februar 2019 bis August 2019

Technologien:
ANSPRECHPARTNER:


Raphael Wagner
t. +49 (0) 6132 99991 20
m. +49 (0) 151 656 447 59
raphael.wagner@virtual7.de

Leistungen aus unserem Beratungs- und Digitalisierungsportfolio für das Hessische Statistische Landesamt