Es gibt nur wenige Aufgaben, die sich für mich persönlich mehr lohnen, als mit brillanten Doktoranden an Forschungsproblemen zu arbeiten, die praktische Anwendungen haben. Genau das ist es, was ich als Professor für Informatik an der Universität von San Francisco und als leitender Wissenschaftler bei SnapLogic tun kann. Jedes Semester sponsert SnapLogic Forschungs- und Entwicklungsprojekte von Studenten für USF CS Projektklassen, und ich habe die Freiheit, mit diesen Studenten an neuen Technologien und Forschungsprojekten zu arbeiten, von denen wir glauben, dass sie sich letztendlich auf die SnapLogic Enterprise Integration Cloud Platform auswirken werden. Iris und der Integrationsassistent, der maschinelles Lernen auf die Erstellung von Datenintegrationspipelines anwendet, ist eines dieser Forschungsprojekte, das die Grenzen der Self-Service-Datenintegration verschiebt.
In den letzten sieben Jahren haben diese Forschungsprojekte SnapLogic Labs mit klugen Köpfen versorgt und gleichzeitig USF-Studenten mit Problemen vertraut gemacht, die in der realen Welt kommerzieller Software auftreten. Ich konnte meine 19-jährige Forschungs- und Lehrtätigkeit an der USF im Bereich paralleles und verteiltes Rechnen nutzen, um Forschungsbereiche zu formulieren, die es den Studenten ermöglichen, ihre akademischen Erfahrungen mit Problemen zu verknüpfen, die in groß angelegter Software auftreten, die in der Cloud läuft. Zu den Projekterfolgen gehören Predictive Field Linking, die erste SnapLogic MapReduce-Implementierung namens SnapReduce und das Dokumentenmodell für die Datenintegration. Es ist eine Beziehung zum gegenseitigen Nutzen.
Während der Forschungsphase von Labs-Projekten haben die Studenten Zugang zum SnapLogic-Entwicklungsteam, können Fragen stellen und erhalten Feedback. Diese Zusammenarbeit ermöglicht es den Studenten, sich schnell mit unserer Codebasis vertraut zu machen und das Ingenieursteam mit den Studenten vertraut zu machen. Sobald wir einen Prototyp erstellt und das Potenzial für ein Forschungsprojekt nachgewiesen haben, übergeben wir den Code an die Produktion. Doch damit ist die Beziehung noch nicht zu Ende - die Studenten, die die Forschungsarbeit geleistet haben, werden in der Regel eingestellt, um bei der Überführung des Prototyps in den Produktionscode zu helfen.
Die SnapLogic-Philosophie
Die Iris-Technologie wurde entwickelt, um immer mehr Geschäftsanwendern bei der Entwicklung und Implementierung von Datenintegrationsaufgaben zu helfen, die früher umfangreiche Programmierkenntnisse erforderten. Die meisten Unternehmen müssen eine zunehmende Anzahl von Datenquellen und Cloud-Anwendungen sowie eine wachsende Menge an Daten verwalten. Und es sind Datenintegrationsplattformen, die Unternehmen dabei helfen, all diese unterschiedlichen Daten zu verbinden und zu transformieren. Die Philosophie von SnapLogic war es schon immer, eine echte Self-Service-Integration durch visuelle Programmierung anzubieten. Iris und der Integration Assistant treiben diese Philosophie weiter voran, indem sie aus den Erfolgen und Misserfolgen von Tausenden von Pipelines und Milliarden von Ausführungen auf der SnapLogic-Plattform lernen.
Das Projekt
Vor zwei Jahren leitete ich ein Projekt zur Verbesserung unserer Metadatenarchitektur, und letztes Jahr schlug ich ein Projekt zum maschinellen Lernen für USF-Studenten vor. Damals hatte ich einige vage Vorstellungen davon, was wir erreichen könnten. Der Plan war, den ersten Teil des Projekts damit zu verbringen, die SnapLogic-Metadaten datenwissenschaftlich zu untersuchen, um herauszufinden, welche Muster wir finden und welche Möglichkeiten für die Anwendung von maschinellem Lernen bestehen.
Thanawut "Jump" Anapiriyakul, einer der USF-Diplomstudenten, die an dem Projekt arbeiten, entdeckte, dass wir aus früheren Pipeline-Definitionen in unseren Metadaten lernen können, um während der Pipeline-Erstellung die wahrscheinlich nächsten Snaps zu empfehlen. Jump experimentierte mit verschiedenen Algorithmen für maschinelles Lernen, um diejenigen zu finden, die die beste Empfehlungsgenauigkeit bieten. Später kombinierten wir die Pipeline-Definition mit dem Verlauf der Snap-Ausführung, um die Empfehlungsgenauigkeit weiter zu verbessern. Das Endergebnis: Die Erstellung von Pipelines ist mit dem Integrationsassistenten jetzt viel schneller.
Das Spannende an der Iris-Technologie ist, dass wir eine interne Metadaten-Architektur geschaffen haben, die nicht nur den Integrationsassistenten unterstützt, sondern auch die Datenwissenschaft, die erforderlich ist, um historische Benutzeraktivitäten und Pipeline-Ausführungen weiter zu nutzen, um zukünftige Anwendungen des maschinellen Lernens in der SnapLogic Enterprise Cloud zu unterstützen. Meiner Meinung nach wird ein echter Self-Service bei der Datenintegration nur durch die Anwendung von maschinellem Lernen und künstlicher Intelligenz möglich sein, wie wir es bei SnapLogic tun.
Den Studenten, die an SnapLogic-Projekten arbeiten, werden in der Regel Praktikumsplätze angeboten, und viele werden schließlich Vollzeit-Software-Ingenieure bei SnapLogic. Es ist sehr befriedigend, mit meinen Studenten nach ihrem Abschluss weiterzuarbeiten. Nach den Feierlichkeiten im Mai dieses Jahres an der USF wird Jump diesen Sommer Vollzeit bei SnapLogic einsteigen und mit dem Team an der Erweiterung von Iris und seinen Möglichkeiten arbeiten.
Ich freue mich darauf, in den kommenden Wochen mehr über Iris und unsere jüngsten technologischen Fortschritte zu schreiben. In der Zwischenzeit können Sie sich meine früheren Beiträge über JSON-zentrierte iPaaS und hybride Batch- und Streaming-Architekturen für die Datenintegration ansehen.