#Embedded Python

0 Abonnés · 83 Publications

Embedded Python fait référence à l'intégration du langage de programmation Python dans le noyau InterSystems IRIS, permettant aux développeurs d'opérer avec des données et de développer une logique d'entreprise pour les applications côté serveur en utilisant Python.

Documentation.

Article Guillaume Rongier · Fév 24, 2023 4m read

Je vous présente mon nouveau projet, qui est irissqlcli, REPL (Read-Eval-Print Loop) pour InterSystems IRIS SQL

  • Mise en évidence de la syntaxe
  • Suggestions (tableaux, fonctions)
  • Plus de 20 formats de sortie
  • Support de stdin
  • Sortie vers des fichiers 

L'installez avec pip

pip install irissqlcli

Ou lancez avec docker

docker run -it caretdev/irissqlcli irissqlcli iris://_SYSTEM:SYS@host.docker.internal:1972/USER

Connection à IRIS

$ irissqlcli iris://_SYSTEM@localhost:1972/USER -W
Password for _SYSTEM:
Server:  InterSystems IRIS Version 2022.3.0.606 xDBC Protocol Version 65
Version: 0.1.0
[SQL]_SYSTEM@localhost:USER> select $ZVERSION
+---------------------------------------------------------------------------------------------------------+
| Expression_1                                                                                            |
+---------------------------------------------------------------------------------------------------------+
| IRIS for UNIX (Ubuntu Server LTS for ARM64 Containers) 2022.3 (Build 606U) Mon Jan 30202309:05:12 EST |
+---------------------------------------------------------------------------------------------------------+
1 row in set
Time: 0.063s
[SQL]_SYSTEM@localhost:USER> help
+----------+-------------------+------------------------------------------------------------+
| Commande  | Raccourci          | Description                                                |
+----------+-------------------+------------------------------------------------------------+
| .exit    | \q                | Sortie.                                                      |
| .mode    | \T                | Modifier le format de tableau utilisé pour les résultats.            |
| .once    | \o [-o] filename  | Ajout du résultat suivant à un fichier de sortie (écraser en utilisant -o). |
| .schemas | \ds               | Liste des schémas.                                             |
| .tables  | \dt [schema]      | Liste des tableaux.                                               |
| \e       | \e                | Commande d'édition avec éditeur (utilise $EDITOR).                   |
| help     | \?                | Montre cette utilité.                                            |
| nopager  | \n                | Désactiver le pager, imprimer vers stdout.                            |
| notee    | notee             | Arrête l'écriture des résultats dans un fichier de sortie.                    |
| pager    | \P [command]      | Definition du PAGER. Impression des résultats de la requête via PAGER.              |
| prompt   | \R                | Modification du format de l'invite.                                      |
| quit     | \q                | Quit.                                                      |
| tee      | tee [-o] filename | Ajout de tous les résultats à un fichier de sortie (écraser en utilisant -o). |
+----------+-------------------+------------------------------------------------------------+
Time: 0.012s
[SQL]_SYSTEM@localhost:USER>
0
0 95
Article Lorenzo Scalese · Oct 14, 2022 6m read

Présentation générale

Il y a trois ans, nous avons commencé à utiliser Azure Service Bus (ASB) comme solution de messagerie d'entreprise. Elle est utilisée pour publier et consommer des données entre de nombreuses applications de l'entreprise. Comme le flux de données est complexe et les données d'une application sont généralement nécessaires à plusieurs applications, le modèle "éditeur" ---> "abonnés multiples" était parfaitement adapté. L'utilisation d'ASB dans l'organisation donne des dizaines de millions de messages par jour, tandis que la plate-forme IRIS a environ 2-3 millions de messages par jour.

Le problème d'ASB

Lorsque nous avons commencé l'intégration d'ASB, nous avons constaté que le protocole AMQP n'est pas " prêt à l'emploi " pour le déploiement d'IRIS. Nous avons donc cherché une solution alternative pour pouvoir communiquer avec l'ASB.

0
0 96
Annonce Irène Mykhailova · Oct 10, 2022

Salut la communauté,

Rejoignez-nous pour une rencontre de développeurs InterSystems pendant TechCrunch Disrupt 2022 !

Nous nous réunirons le mercredi 19 octobre au Bartlett Hall, situé au 242 O'Farrell St. (à quelques pâtés de maisons du Moscone Center) de 18 h 00 à 20 h 30 PT, où les conférenciers discuteront de la façon dont les développeurs peuvent apporter le code aux données, et non les données au code avec Embedded Python et Integrated ML sur InterSystems IRIS.

Nourriture et boissons seront servies accompagnées de discussions.

Ordre du jour:

0
0 32
Article Lorenzo Scalese · Sept 23, 2022 4m read

Bonjour la communauté,

Cet article montre comment créer des ressources pour le patient et l'observation du patient en utilisant l'application iris-fhir-client .
image

Je recommande de lire mon premier article sur cette application et de regarder le Video Youtube avant de continuer.

Donc commençons

0
0 84
Article Guillaume Rongier · Août 31, 2022 6m read

Nous continuons à observer les possibilités de Django, et son utilisation avec IRIS. Dans la première partie nous avons regardé comment définir des modèles et se connecter à des tableaux déjà existants dans IRIS, dans la suite nous avons étendu le portail d'administration intégré de Django, avec la possibilité de voir quelles données nous avons dans ces modèles, avec des filtres, l'édition et même la pagination.

Il est temps de passer à l'action, nous allons maintenant créer une API REST, sur Django, basée sur les mêmes données, que nous avons utilisées auparavant à partir du paquet posts-and-tags.

Pour ce faire, nous utiliserons Django REST Framework

Django REST Framework

Le cadre REST de Django est une boîte à outils puissante et flexible permettant de créer des API Web.

Quelques raisons pour lesquelles vous pourriez vouloir utiliser le cadre REST :

  • L'API navigable sur le Web est un avantage considérable pour vos développeurs.
  • Politiques d'authentification comprenant des paquets pour OAuth1a et OAuth2.
  • Sérialisation qui prend en charge les sources de données ORM et non ORM.
  • Personnalisable jusqu'en bas - utilisez simplement des visualisations régulières basées sur des fonctions si vous n'avez pas besoin des fonctionnalités les plus puissantes.
  • Une documentation complète et un support communautaire important.
  • Utilisé par des entreprises de renommée internationale, telles que Mozilla, Red Hat, Heroku et Eventbrite, qui lui font confiance.
0
0 78
Article Guillaume Rongier · Août 17, 2022 3m read

Avec les dernières améliorations concernant le support de Python dans IRIS, et la poursuite du travail sur le support de Python DB-API par InterSystems. J'ai implémenté le support IRIS dans le projet Django où Python DB-API est utilisé pour travailler avec d'autres bases de données.

Essayons une application simple sur Django, qui stocke ses données dans IRIS.

todo App

0
0 72
Article Lorenzo Scalese · Août 10, 2022 11m read

Depuis IRIS 2021.2, il est possible d'écrire des Méthodes de classe en utilisant le langage Python. J'ai utilisé cette nouvelle fonctionnalité pour détecter des personnes et des objets dans des images, en utilisant ImageAI. Le créateur d'ImageAI la définit comme suit : "Une bibliothèque python open-source construite pour permettre aux développeurs de créer des applications et des systèmes avec des capacités autonomes de Deep Learning et de vision par ordinateur en utilisant des lignes de code simples et peu nombreuses." Dans cet article, vous apprendrez comment appliquer la Vision par

0
0 186
Article Irène Mykhailova · Août 3, 2022 5m read

Motivation

Ce projet a vu le jour lorsque j'ai réfléchi à la manière de permettre au code Python de traiter naturellement le mécanisme de stockage évolutif et de récupération efficace fourni par les globales IRIS, par le biais de la technologie Embedded Python.

Mon idée initiale était de créer une sorte d'implémentation de dictionnaire Python en utilisant les globales, mais j'ai vite réalisé que je devais d'abord m'occuper de l'abstraction des objets.

0
0 57
Article Guillaume Rongier · Juil 27, 2022 19m read

Introduction

Cet article a pour but de donner une introduction à ce qu'est gRPC ainsi que de donner un exemple de comment jouer avec le Hello World officiel en utilisant IRIS Embedded Python.

Vous pouvez trouver tout le code exposé ici, dans le référentiel suivant project repo.

gRPC

Le gRPC ( appel de procédure à distance gRPC) est un style architectural d'API basé sur le protocole RPC. Le projet a été créé par Google en 2015 et est sous licence Apache 2.0. Actuellement, le projet est soutenu par la fondation Cloud Native Computing Foundation (CNCF).

0
0 1124
Article Lorenzo Scalese · Juil 25, 2022 2m read

J'aimerais partager avec vous un exemple de la manière dont la nouvelle fonctionnalité d'Embedded Python d'IRIS m'a aidé dans mes tâches quotidiennes.

Dans le cadre de ma participation au projet iris-kaggle-socrata-generator avec Henrique Dias, j'ai dû dézipper des jeux de données de Kaggle afin de les importer.

Une telle tâche a été facilement réalisée en utilisant la librairie de zipfile en Python (ce code a été copié à partir de stackoverflow):

0
0 69
Annonce Irène Mykhailova · Juil 17, 2022

Salut la communauté,

Nous sommes ravis d'annoncer que les rencontres de développeurs InterSystems sont enfin de retour en personne !

Le premier meetup lié au Python aura lieu le 21 juillet à 18h00 à Democracy Brewing, Boston, MA. Il y aura 2-3 courtes présentations liées au Python, des questions-réponses, des sessions de réseautage ainsi que de la bière gratuite avec des collations et des visites de la brasserie.

AGENDA:

0
0 40
Article Robert Cemper · Juil 1, 2022 8m read

Je m'intéresse particulièrement à l'utilisation des Globales avec Embedded Python.
Alors, j'ai commencé à consulter la documentation officielle.

#1 Introduction to Globals
Une tentative de description générique de ce qu'est une Globale. Pointant ensuite vers:

#2 A Closer Look at ObjectScript
Mais où puis-je trouver Embedded Python ?
Plus bas, se trouve:

#3 Embedded Python

3.1 Embedded Python Overview
3.1.1 Work with Globals

Idéal si vous n'avez jamais vu une Globale.
Sinon ce n'est qu'un exemple primitif choquant
3.2 Using Embedded Python
Dernier espoir: >>> Mais, absolument RIEN de visible.

3
0 126
Article Guillaume Rongier · Juil 6, 2022 11m read

1. intersystems-iris-docker-rest-template

Il s'agit d'un modèle d'une application REST API intégrée en python dans InterSystems IRIS. Elle possède également une spécification OPEN API et peut être développée avec Docker et VSCode.

1. intersystems-iris-docker-rest-template

2. Conditions préalables

3. Installation

3.1. Installation pour le développement

3.2. Portail de gestion et et VSCode

3.3. Avoir le répertoire ouvert à l'intérieur du conteneur

4. Comment cela fonctionne

5. Comment l'utiliser

5.1. Requête POST

5.1.1. Test de la requête POST

5.1.2. Comment fonctionne la requête POST

5.2. Requête GET

0
0 48
Annonce Robert Bira · Juin 13, 2022

 Un webinaire a été organisé le mardi 8 juin pour vous faire découvrir l'usage de Python dans InterSystems IRIS ® et InterSystems IRIS for Health™ version 2022.1.

Dans cette présentation technique, nous détaillons l'étendue du support dont bénéficient les développeurs Python™ en utilisant la plateforme de gestion de données InterSystems IRIS®, notamment :

0
0 53
Article Lorenzo Scalese · Mai 18, 2022 14m read

La recherche d'images comme celle de Google est une fonctionnalité intéressante qui m'émerveille - comme presque tout ce qui est lié au traitement des images.

Il y a quelques mois, InterSystems a publié un aperçu de Python Embedded. Comme Python dispose de nombreuses librairies pour le traitement d'images, j'ai décidé de lancer ma propre tentative pour jouer avec une sorte de recherche d'images - une version beaucoup plus modeste en fait :-)


---
0
0 85