Bonjour à tous. Nous sommes ravis d'être ici aujourd'hui pour vous présenter notre poster. Ce poster portera sur l'intégration de JMP avec les services AWS. Je suis Yacine Belamiri et je travaille comme ingénieur de données chez Soitec.
Je suis Guillaume Bugnon. Je travaille également comme ingénieur de données chez Soitec. Aujourd'hui, nous allons vous présenter l'affiche. JMP permet d'importer des données depuis de nombreuses sources, avec des formats natifs tels que Excel, JSON et même PDF. JMP peut aussi se connecter à de nombreuses bases de données via une connexion ODBC native, mais cela ne suffit pas toujours. Pourquoi ? Parce qu'aujourd'hui, le cloud et les services cloud comme Azure, AWS ou Google sont de plus en plus utilisés dans notre secteur et dans tous les secteurs, et font désormais partie intégrante de l'architecture de données des entreprises. Dans certains cas, les utilisateurs de JMP ont besoin d'accéder aux données actuelles et, dans d'autres, nous devons développer des connecteurs spécifiques à GSL.
Quels sont les objectifs de cette affiche ? Tout d’abord, il est important de vous informer que depuis la version 15, JMP intègre Python afin d’étendre ses fonctionnalités en déployant JMP et Python sur les postes des utilisateurs. Qu’est-ce que cela nous a permis de faire ? Créer des bibliothèques JMP, c’est-à-dire un ensemble de fonctions GSL dédiées aux services AWS et à tout autre cas non géré nativement par JMP. Sachez que nous comptons plus de 600 utilisateurs et que nous devons gérer ces déploiements afin de faciliter l’utilisation de cette connexion pour tous et de garantir que nos développeurs utilisent le même code.
À partir de JMP 18, JMP simplifie la gestion de l'intégration Python et supprime les dépendances précédentes, ce qui rend l'installation de JMP plus rapide et plus facile ; il suffit désormais d'installer JMP avec Python et de l'utiliser nativement.
Nous procédons ainsi car cela améliore l'expérience utilisateur et simplifie l'accès aux données. Nous pouvons préparer les données en amont, les stocker et les valider au niveau de l'entreprise. De plus, chez Soitec, nous avons validé JMP comme une étape majeure de notre processus d'ingénierie des données ; par conséquent, lorsque nous devons exposer des données à des fins statistiques, nous utilisons JMP.
Voici comment nous avons procédé. Ce schéma vous explique brièvement notre démarche. Nous avons d'abord créé des bibliothèques Python communes. Ces bibliothèques permettent, par exemple, de se connecter à AWS, d'intégrer des fonctionnalités statistiques absentes de JMP ou encore des graphiques que nous avons jugés plus attrayants, plus amusants, etc. C'est la première étape.
Ensuite, nous appelons ces bibliothèques Python depuis nos bibliothèques JSL. Ce JSL est destiné à être utilisé par nos développeurs JSL. Il est validé en interne par notre équipe informatique, ce qui nous permet à tous d'utiliser le même code. Enfin, Soitec certifie, je crois, que ces bibliothèques GSL peuvent être appelées, offrant ainsi à l'utilisateur une méthode très simple pour se connecter aux données.
Si l'on entre dans les détails avec des symboles simples, on obtient ce type d'architecture. On retrouve les trois briques différentes dont Yacine a parlé précédemment. Imaginons que je sois développeur et que je souhaite extraire des données stockées sur des compartiments S3 sur un serveur AWS. Je dois d'abord appeler le chemin de la bibliothèque et la bibliothèque Python, à savoir JSL, puis utiliser ma fonction. Comme vous pouvez le constater, c'est très simple : en quatre lignes de code, j'ai accès aux fichiers stockés sur AWS S3. Cependant, cette approche a un coût initial. Il nous reste à développer les deux autres briques, la rouge et la noire.
Tout d'abord, imaginons que cette application utilise une bibliothèque Python. Il suffit de l'importer. Exactement. C'est comme un assemblage de briques : vertes, noires et bleues. Faisons une démonstration. Ouvrons JMP. Il est juste ici. C'est très simple. Ajoutons le journal. Il me suffit d'importer ma bibliothèque Python GSL. Vous voyez, cette bibliothèque Python GSL contient différentes fonctions, deux ici.
Il me suffit donc d'indiquer que je souhaite ouvrir les fichiers de paquets. Parquet est un format de fichier non natif, non reconnu actuellement par JMP, mais grâce à Python, je peux ouvrir ces fichiers, ce qui ne pose aucun problème. Je dois simplement préciser que je souhaite ouvrir le fichier de paquets qui stocke… Prenons l'exemple de la découverte de John avec ses sous-compartiments, le nom du fichier et la région d'adresse. C'est tout bon. Je dois créer la nouvelle vue de données ; c'est plus simple et plus rapide, et je peux récupérer mes données. Ensuite, je peux utiliser JMP pour effectuer mon analyse.
Une autre méthode consiste à utiliser la même bibliothèque pour obtenir un secret. Ce secret peut être un mot de passe ou des identifiants de connexion à une base de données, par exemple. Grâce à la fonction également présente dans la bibliothèque, obtenir cette séquence est très simple. Mon secret est la découverte de gems de développement, et je peux ensuite afficher les secrets pour voir leurs valeurs.
Un autre cas d'utilisation plus concret, que nous avons chez Soitec, est celui-ci : notre application se connecte à une base de données AWS RDS pour obtenir des données agrégées. Elle se connecte également à AWS S3 pour récupérer des données brutes stockées sous forme de paquets.
Grâce au développement des bibliothèques Python et GSL, nous pouvons facilement nous connecter aux bases de données et aux compartiments S3, puis utiliser JMP pour effectuer tous nos calculs statistiques. Il peut s'agir de cartes de contrôle SPC ou d'indicateurs de capabilité pour le CPK, etc. Nous obtenons ensuite les données agrégées et les données brutes. Vous pourrez alors procéder à l'exploration et à l'analyse des données.
Nous avons présenté notre méthode d'accès aux données sur S3. En conclusion, l'intégration de Python à JMP pour l'accès à AWS offre de nombreux avantages. Elle améliore à la fois la fonctionnalité et l'efficacité. Les bibliothèques Python facilitent l'interaction avec n'importe quel service. Dans notre exemple, nous avons utilisé AWS, mais cela peut concerner tout autre service non natif de JMP. Nous l'avons fait avec S3, DynamoDB et Secret Manager, qui sont des services AWS, car c'est ce que nous utilisons chez Soitec.
L'intégration mise en place depuis JMP 18 simplifie les processus et nous fait gagner du temps. Auparavant, nous devions déployer et installer nous-mêmes les bibliothèques Python. Aujourd'hui, Python nous permet de tout faire, garantissant ainsi l'accès à toutes les données et permettant à nos utilisateurs de se concentrer sur l'analyse plutôt que sur la collecte. L'association de Python et JMP crée une synergie puissante pour une prise de décision efficace basée sur les données.
Les prochaines versions de JMP intègrent la bibliothèque Python jmputils. Celle-ci offrira une toute nouvelle façon d'interagir entre JMP et Python, et nous sommes impatients de découvrir comment l'utiliser et comment elle nous permettra d'exécuter des programmes Python et de les préparer ensuite pour JMP, le tout dans une expérience considérablement améliorée. Nous attendons cette version avec impatience.
Merci. C'est tout pour nous. Vous pouvez visionner une brève présentation de notre entreprise, de nos activités et de notre cœur de métier.
Merci.
Merci.