WebAutomation Extension

Im Cloudzeitalter hat sich JSON (JavaScript Object Notation) als flexibles Datenaustauschformat in den meisten Bereichen durchgesetzt. Es ist ähnlich ausdrucksstark wie XML, aber speicherplatzeffizienter und wegen der Möglichkeit der direkten Verarbeitung in Javascript besser in der Webinfrastruktur einsetzbar. So geben heute die meisten Webservices Daten im JSON Format zurück. Die WebAutomation Extension für RapidMiner ergänzt nun Funktionen, um diesen reichhaltigen Informations- und Funktionsfundus zu erschließen. Mit ihr lassen sich beliebige JSON-Datenstrukturen einlesen und für Analysen nutzbar machen sowie Webservices zur Datenanreicherung oder das Deployment ansprechen.

JSON-Import

Kernfunktionalität ist das extrem effiziente Einlesen von JSON-Daten in eine oder mehrere Tabellen. Dazu legt der Benutzer einen RapidMiner Prozess an, der die JSON-Struktur widerspiegelt und angibt, in welcher Tabelle und in welcher Spalte die Daten gespeichert werden sollen. Damit ist auch ein dynamischer, datengetrieber Aufbau des Formates möglich. Enthält das JSON relationale Strukturen, können mehrere Tabellen extrahiert werden, die über eindeutige IDs miteinander verbunden werden, sodass keine Informationen verloren gehen.

Die definierte JSON-Struktur kann genutzt werden, um JSON aus verschiedenen Quellen zu verarbeiten: Entweder aus einer Tabelle, einer Datei repräsentiert als FileObject in RapidMiner oder direkt von einem Webserviceaufruf. Damit deckt die Erweiterung im Zusammenspiel mit den Kernoperatoren von RapidMiner so gut wie jede mögliche Quelle von JSON-Daten ab. Entsprechend lassen sich die neuen Operatoren in jeden RapidMiner Prozess integrieren, für den Sie JSON-Daten benötigen. Um Ihnen den Einstieg zu erleichtern, besitzt jeder Operator einen umfangreichen Hilfetext mit Beispielprozessen. Zusätzlich finden Sie in unserem Blog mehrere HowTos für die WebAutomation Extension, die die Funktionalitäten genau beleuchten (auf Englisch):

Defining a format to extract a simple table from JSON data

Extracting two or more relational example sets from one JSON

Extracting Arrays of Scalar Values with the WebAutomation Extension

Webservices

Die Erweiterung bringt erweiterte Funktionalität mit, um Webservices in den Prozessablauf zu integrieren. Damit werden zahlreiche Unzulänglichkeiten der existierenden Web Extension beseitigt.

Die Operatoren

Die Extension stellt drei verschiedene Operatoren bereit, um Webservices aufzurufen. Zwei der Operatoren setzen dabei einen einzelnen Call ab, einer für jede Zeile eines gegebenen Datensatzes. Das einzelne Ergebnis kann als FileObject zurückgegeben werden: So eignen sich diese Operatoren zum Beispiel zum Abrufen von binären Daten wie Zip-Dateien oder CSVs. Alternativ lässt sich das Ergebnis direkt als JSON interpretieren, was unnötige Datenkopien vermeidet und damit den Speicherverbrauch reduziert. Im Fall des dritten Operators werden die Ergebnisse des Aufrufs direkt als neue Attribute in den Datensatz eingefügt.

Alle drei Operatoren verwenden Connections, in denen der Benutzer sowohl Authentizifierungsdaten hinterlegen kann, als auch ein Rate Limit festlegen kann. Dieses wird in der gesamten RapidMiner Instanz eingehalten. Laufen also mehrere Prozesse oder Prozessteile parallel, um Daten von einem Server abzurufen, ist die Einhaltung des Rate Limits trotzdem sichergestellt. Dadurch lassen sich leichter ärgerliche Accountsperrungen und IP-Bans vermeiden, die sonst nur mit viel Aufwand sicher auszuschließen sind.

Intern verwendet die Extension eine moderne, leistungsfähige HTTP-Bibliothek, die Verbindungen hält und nach Möglichkeit weiterverwendet und damit die Antwortzeiten deutlich reduziert.

Es ist nun auch endlich möglich, Cookies und Header dynamisch zu kontrollieren, indem beide als Datensätze zurückgegeben und auch für die nächste Anfrage als Datensatz gereicht werden können. Damit ist es nun sehr einfach möglich, beliebige HTTP-Logiken durch RapidMiner Prozesse abzubilden.

 

Liste der Operatoren

JSON Parsing

  • Parse JSON
  • Parse JSON from Data
  • Parse JSON from File
  • Process Object
  • Process Array
  • Extract Properties
  • Extract Scalar
  • Commit Row

 

Webservice Requests

  • Send Request
  • Send Request from Data
  • Send JSON Request

 

Lizenzkosten

Anzahl Nutzer1-Jahresabo2-Jahresabounbefristete LizenzWartung
1 benannter Benutzer129.00€ *227.00€ *295.00€ *59.00€ *
5 benannte Benutzer533.00€ *932.00€ *1,201.00€ *240.00€ *
Firmenlizenz1,227.00€ *2,144.00€ *2,761.00€ *552.00€ *

* zzgl. MwSt.

Haben Sie Fragen, Kritik oder Anmerkungen zu unserer Extension?

Nehmen Sie gern Kontakt mit uns auf.


Mit dem Klicken auf "Senden" bestätigen Sie, dass Sie unsere Datenschutzerklärung gelesen haben und akzeptieren.