Peu de tâches sont plus gratifiantes sur le plan personnel que de travailler avec de brillants étudiants diplômés sur des problèmes de recherche qui ont des applications pratiques. C‘est exactement ce que je fais en tant que professeur d‘informatique à l‘université de San Francisco et scientifique en chef chez SnapLogic. Chaque semestre, SnapLogic sponsorise les projets de recherche et de développement des étudiants dans le cadre des cours de CS de l‘USF, et j‘ai la liberté de travailler avec ces étudiants sur de nouvelles technologies et des projets exploratoires dont nous pensons qu‘ils auront un impact sur la plate-forme d‘intégration d‘entreprise SnapLogic Cloud . Iris and the Integration Assistant, qui applique l‘apprentissage automatique à la création de pipelines d‘intégration de données, représente l‘un de ces projets de recherche qui repousse les limites de l‘intégration de données en libre-service.
Au cours des sept dernières années, ces projets de recherche ont fourni à SnapLogic Labs des esprits brillants et, dans le même temps, ont permis aux étudiants de l‘USF de se familiariser avec les problèmes rencontrés dans les logiciels commerciaux du monde réel. J‘ai pu mettre à profit mes 19 années de recherche et d‘enseignement à l‘USF dans le domaine de l‘informatique parallèle et distribuée pour aider à formuler des domaines de recherche qui permettent aux étudiants de faire le lien entre leur expérience universitaire et les problèmes rencontrés dans les logiciels à grande échelle qui fonctionnent sur le site cloud. Parmi les projets réussis, citons Predictive Field Linking, la première implémentation SnapLogic MapReduce appelée SnapReduce, et le Document Model pour l‘intégration des données. Il s‘agit d‘une relation mutuellement bénéfique.
Pendant la phase de recherche des projets Labs, les étudiants ont accès à l‘équipe d‘ingénieurs de SnapLogic, et peuvent poser des questions et obtenir un retour d‘information. Cette collaboration permet aux étudiants de se familiariser rapidement avec notre base de code et à l‘équipe d‘ingénieurs de se familiariser avec les étudiants. Une fois que nous avons créé un prototype et démontré le potentiel d‘un projet de recherche, nous passons le code en production. Mais la relation ne s‘arrête pas là : les étudiants qui ont effectué le travail de recherche sont généralement engagés pour aider à la transition du prototype au code de production.
La philosophie SnapLogic
La technologie Iris est née pour aider un nombre croissant d‘utilisateurs professionnels à concevoir et à mettre en œuvre des tâches d‘intégration de données qui nécessitaient auparavant des compétences approfondies en programmation. La plupart des entreprises doivent gérer un nombre croissant de sources de données et d‘applications cloud ainsi qu‘un volume de données de plus en plus important. Ce sont les plateformes d‘intégration de données qui aident les entreprises à connecter et à transformer toutes ces données disparates. La philosophie de SnapLogic a toujours été de fournir une intégration en libre-service par le biais d‘une programmation visuelle. Iris et l‘Integration Assistant font progresser cette philosophie en tirant les leçons des succès et des échecs de milliers de pipelines et de milliards d‘exécutions sur SnapLogic plateforme.
Le projet
Il y a deux ans, j‘ai dirigé un projet qui a affiné notre architecture de métadonnées et l‘année dernière, j‘ai proposé un projet d‘apprentissage automatique pour les étudiants de l‘USF. À l‘époque, j‘avais donné quelques idées vagues sur ce que nous pourrions réaliser. Le plan était de passer la première partie du projet à faire de la science des données sur les métadonnées SnapLogic pour voir quels modèles nous pourrions trouver et quelles possibilités d‘application de l‘apprentissage automatique.
L‘un des étudiants diplômés de l‘USF travaillant sur le projet, Thanawut "Jump" Anapiriyakul, a découvert que nous pouvions tirer des enseignements des définitions passées du pipeline dans nos métadonnées pour aider à recommander les prochains Snaps probables lors de la création du pipeline. Jump a expérimenté plusieurs algorithmes d‘apprentissage automatique pour trouver ceux qui donnent la meilleure précision de recommandation. Nous avons ensuite combiné la définition du pipeline avec l‘historique de l‘exécution du Snap pour améliorer encore la précision des recommandations. Le résultat final : La création de pipeline est désormais beaucoup plus rapide avec l‘assistant d‘intégration.
Ce qui est passionnant avec la technologie Iris, c‘est que nous avons créé une architecture de métadonnées interne qui prend en charge non seulement l‘assistant d‘intégration, mais aussi la science des données nécessaire pour exploiter davantage l‘activité historique des utilisateurs et les exécutions de pipeline afin d‘alimenter les futures applications d‘apprentissage automatique dans SnapLogic Enterprise Cloud. À mon avis, un véritable libre-service dans l‘intégration des données ne sera possible que par l‘application de l‘apprentissage automatique et de l‘intelligence artificielle, comme nous le faisons chez SnapLogic.
Quant aux étudiants qui travaillent sur des projets SnapLogic, la plupart d‘entre eux se voient généralement proposer des stages et nombre d‘entre eux finissent par devenir ingénieurs logiciels à temps plein chez SnapLogic. Il est très gratifiant de continuer à travailler avec mes étudiants une fois qu‘ils ont obtenu leur diplôme. Après les cérémonies de mai à l‘USF, Jump rejoindra SnapLogic à plein temps cet été, travaillant avec l‘équipe sur l‘extension d‘Iris et de ses capacités.
J‘ai hâte d‘écrire davantage sur Iris et nos récentes avancées technologiques dans les semaines à venir. En attendant, vous pouvez consulter mes précédents articles sur l‘iPaaS centré sur JSON et sur l‘architecture hybride de batch et de streaming pour l‘intégration de données.