Effacer le filtre
Annonce
Irène Mykhailova · Déc 20, 2022
Salut la Communauté!
Profitez de regarder la nouvelle vidéo sur la chaîne Youtube d'InterSystems France :
📺 Entrepôts de Données de Santé
Nous informatisons les hôpitaux depuis des années, mais les données qui y sont produites sont aujourd'hui encore très peu exploitées. Pour Nicolas Eiferman, notre Directeur Général : « l’enjeu est de libérer la donnée de santé pour permettre la réalisation d’avancées médicales et scientifiques majeures. » Pour nous, cela passe par la mise en oeuvre d'un EDS structuré et pérenne au sein des établissements de santé.
De la capture des données à leur exploitation, nos experts Nicolas Eiferman et @Guillaume.Rongier7183, reviennent sur les 4 fonctions clés d'un EDS.
Restez à l'écoute pour plus de vidéos !
Annonce
Irène Mykhailova · Mars 21, 2023
Salut la Communauté !
Le Hacking Health Camp s'approche ! Et nous avons tellement hâte de vous y retrouver encore une fois !
Pour vous rappeler à quel point nous nous sommes amusés la dernière fois, n'hesitez pas a revisualize le webinar de @Guillaume.Rongier7183 sur l'utilisation du FHIR :
Webinar FHIR - InterSystems x HHC
De plus, l'année dernière, nous avons fait un rapport de chaque jour sur tout ce qui se passait, alors veuillez consulter nos articles du jour 1, 2 et 3.
Je suis sûr que cette année sera aussi intéressante que la précédente et que nous aurons encore plus de grands projets visant à rendre nos vies plus saines et plus sûres !
A très bientôt !
Annonce
Robert Bira · Oct 11, 2022
InterSystems France recherche l’expert Systèmes (System Management Specialist) qui sera responsable de l'exécution globale du plan d'architecture du système et de la gestion des ressources et activités associées, afin de garantir que nos progiciels sont livrés et déployés conformément aux exigences du projet.
Principales missions
Conseiller et aider nos clients sur les paramétrages du système d’exploitation (Linux RedHat sur des environnements virtualisés) en adéquation avec les prérequis de nos produits
Via la télémaintenance de nos clients, mettre en place, paramétrer et mettre à jour notre Système de Gestion de Base de Données (InterSystems IRIS) ainsi que les outils connexes (moteur de communication, plate-forme BI, …)
Installer, paramétrer, et mettre à jour nos logiciels métiers (Systèmes d’Information Hospitaliers et Dossier Patient)
Former nos clients à l’administration de nos produits si nécessaire
Réaliser des études pour nos clients sur des projets particuliers tels que la migration de serveurs, l’intégration avec d’autres systèmes, la mise en place d’outils de surveillance, …
Participer avec les homologues internationaux aux travaux sur l’architecture de nos produits et à des ateliers variés.
Assister l’équipe commerciale sur toute question relative à l’architecture, la configuration, le dimensionnement du matériel, y compris lors des démonstrations produit aux prospects.
Produire la documentation technique telle que matériaux de référence, manuels d’installation, guides d’usage, articles sur les bases de données et leurs utilisations
Assister l’équipe support sur des problèmes « système »
Participer à la gestion des systèmes internes
Expérience et qualifications indispensables
Bonne connaissance et expérience de l'administration de système Linux et Shell Scripting (C-Shell, Bash, ..)
Connaissance et expérience du système de gestion d’une base de données
Maitrise des protocoles réseau
Capacité à s’intégrer dans les équipes « projet », composées de développeurs, experts métiers, chef de projet, ….
Qualité de la documentation technique et du reporting des interventions
Respect des normes du groupe, de la confidentialité et de la sécurité des informations manipulées
Anglais requis
Autonomie, curiosité, capacité à aller chercher l’information, à créer un réseau relationnel d’informateurs, à analyser le fonctionnement pour identifier des problèmes.
De façon ponctuelle et planifiée, disponibilité hors heures ouvrables (pour les mises à jour de nos clients)
Expérience et qualifications souhaitables
Connaissance et expérience de l’administration de la base de données d’Intersystems
Connaissance et expérience d’un EAI
Connaissance et expérience de VMware vSphere 6.5 avec configuration et administration de vCenter
>> appliquer ici <<
Annonce
Robert Bira · Oct 5, 2022
InterSystems France recherche son nouveau Spécialiste Applicatif (Support) qui contribuera à l'amélioration continue des produits et à la qualité de l'offre de services InterSystems, à travers ses connaissances fonctionnelles et des services de support.
Le spécialiste applicatif (Support) sera appelé à traiter et hiérarchiser les demandes de support relatives à nos logiciels pour la Gestion Administrative des Patients et la Facturation en milieu hospitalier.
Responsabilités
· Gestion des incidents et demandes d'assistance de nos clients jusqu'à leur résolution.
· Traitement des demandes dans le respect des engagements contractuels
· Maintenance et développement d’une bonne compréhension technique du produit.
· Liaison avec les autres départements afin de résoudre les différentes questions
· Évaluation des besoins des clients en termes de service et travailler de façon proactive avec les équipes concernées afin d’assurer la qualité du service et la satisfaction client.
· Maintenance de la connaissance du contexte client
· Liaison avec l’équipe de développement produit afin d'assurer l'amélioration continue.
· Capacité à apprendre les nouvelles fonctionnalités disponibles dans nos logiciels
Expérience & Qualifications
· Expérience dans le domaine du Support Applicatif ou de l’Assistance Utilisateurs.
· Minimum 3 ans d’expérience dans le domaine de la santé
· Bonne connaissance de l'Informatisation des Services de Soins (fonctionnalités, techniques, organisation, acteurs) et des fonctions Administratives (admission, facturation et comptabilité publique, T2A)
· Expérience de travail dans des équipes pluridisciplinaires
· Bonne connaissance des systèmes d'information
· Connaissance des Logiciels utilisés en milieu hospitalier
· Bac + 4/5 ou équivalent
Langues
· Français
· Anglais (niveau professionnel)
>> appliquer ici <<
Article
Irène Mykhailova · Mars 25, 2023
Salut la Communauté !
Le deuxième jour de Hacking Health Camp a commencé ! Ou pour certains, c'est le premier jour qui continue. Certaines équipes ont bossé toute la nuit et on peut le voir ce matin lors des pitches avec les coaches 😁
MISE À JOUR 12H30
Tous nos modérateurs participent au HHC et deux d'entre eux sont parmi les coachs (@Lorenzo.Scalese et @Irène.Mykhailova) :
Pendant le travail en groupe avec les coaches, @Guillaume.Rongier7183 a animé un workshop pour familiariser les équipes avec les technologies InterSystems et leur enseigner comment intégrer leur projet à un système d’information de santé afin d'être en mesure d'exploiter les données de l’hôpital. Comme d'habitude, il avait une audience reconnaissante :) avec beaucoup de questions clés.
MISE À JOUR 17H00
En travaillant en groupes, nos coaches ont identifié les projets qui pourraient bénéficier de l'utilisation de FHIR et ont pris "rendez-vous" avec les équipes pour les aider à utiliser FHIR dans leurs logiciels.
Comme vous pouvez le constater, la première partie de la journée a été consacrée aux pitchs et aux discussions en général. Après une pause déjeuner, le vrai travail commence ! Les équipes bossent sur le front-end, le back-end, la présentation, les points légaux etc. Et pour leur faciliter la tâche, nos coachs aident les équipes qui utilisent FHIR à surmonter les difficultés qu'elles peuvent rencontrer.
Et bien sûr, nos coaches (@Lorenzo.Scalese, @Irène.Mykhailova et @Guillaume.Rongier7183) ont trouvé le temps pour échanger et parler des projets qui pourraient obtenir la première place du Challenge InterSystems !
C'est tout pour ce soir ! A demain pour decouvrir les prototypes et les gagnants !
Annonce
Irène Mykhailova · Juil 5, 2022
Bonjour à tous !
Le Global Summit 2022 à Seattle s'est terminé il y a un peu plus d'une semaine, mais les keynotes sont déjà disponibles pour ceux qui les ont manquées alors qu'ils étaient sur place ou qui n'ont pas pu assister à cet événement en personne pour une raison ou une autre (ou simplement pour ceux qui souhaitent se rafraîchir la mémoire et les réécouter).
Sans plus tarder, voici le début du Global Summit, c'est-à-dire les salutations de la communauté :
Profitez de regarder tous les keynotes des trois jours du Global Summit 2022 via cette playlist YouTube :
➡️ Global Summit 2022 sur InterSystems Developers YouTube
Et rejoignez-nous la prochaine fois à Hollywood, en Floride ! 🤩 Plus d'infos ici.
Annonce
Irène Mykhailova · Août 23, 2022
Nous sommes ravis d'annoncer le lancement de la série de tables rondes communautaires !
Les tables rondes vous permettent d'apprendre de nouvelles choses et de vous connecter avec d'autres membres de la communauté. Chaque mois, nous sélectionnerons un nouveau sujet, fournirons un aperçu et sélectionnerons une date et une heure spécifiques pour cet événement.
Nous avons rédigé quelques sujets parmi lesquels choisir pour la première table ronde, mais nous voulons surtout entendre ce dont vous aimeriez discuter !
Accédez >> à ce défi << sur Global Masters pour choisir le sujet et suggérer le vôtre..
Pas encore membre Global Masters ? Inscrivez-vous ici - utilisez vos identifiants InterSystems SSO pour vous connecter.
En savoir plus sur le hub de gamification Global Masters pour les développeurs ici.
Annonce
Irène Mykhailova · Nov 21, 2022
Salut la communauté,
Rencontrons-nous virtuellement lors de notre troisième table ronde communautaire ! Il s'agira d'une discussion de 60 minutes sur un sujet donné : Développer avec Python.
Inscrivez-vous via >> ce défi Global Masters <<
Hôte : @Guillaume.Rongier7183 Intervenants : @Eduard.Lebedyuk , @Guillaume.Rongier7183
📅 Date: 23 novembre🕑 Heure : 9h00 ET | 15h00 CESTVeuillez préparer vos questions - et discutons-en !Partagez vos questions dans les commentaires de ce post, ou envoyez-les @Olga.Zavrazhnova2637 en MD.J'espère vous voir à la table ronde !PS. Si vous n'êtes pas encore membre du Global Masters - veuillez rejoindre le programme ici en utilisant vos informations d'identification InterSystems SSO et relever le défi d'intégration "Personnalisez votre programme".
Article
Irène Mykhailova · Juin 22, 2022
Salut chers développeurs !
C'est le deuxième jour du Sommet mondial. Enfin, la plupart des gens ont vaincu le décalage d'horaire et ont pu participer pleinement à toutes les activités. Tous les stands des partenaires regorgeaient d'informations pertinentes et de swag et toutes les salles de conférence techniques étaient prêtes à être remplies de monde.
Comme hier, le jour a commencé par les keynotes. Cette fois, il s'agissait de la plate-forme de données IRIS. Voici un récapitulatif des présentations:
Bienvenue au deuxième jour
Scott Gnau, Head of Data Platforms, InterSystems
Zone to Win : s'organiser pour rivaliser à une époque de perturbations
Geoffrey Moore, Bestselling Author, Consultant, Disruptive Technology Specialist
Smart Data Fabric : Permettre les innovations futures
Scott Gnau, Head of Data Platforms, InterSystems
Casser la banque : comment BBTS a intégré les données pour activer l'Open Banking
Flávio Augusto Corrêa Basilio, Executive Director & President, BBTS/Banco do Brasil
Ne négliger aucun effort : la transformation de SPAR via les données de vente au détail connectées
Gerd Karnitschnig, Head of Software Solutions International, SPAR/ASPIAG
InterSystems IRIS : Quoi de neuf
Panel animé par Jeffrey Fried, Director Product Management, Data Platforms, InterSystems
MIS A JOUR 16:00Après le déjeuner, il y avait cette section vraiment cool prévue. C'est ce qu'on appelle l'Ecosystème des Développeurs : Communauté, Global Masters, Open Exchange.
Bien sûr, tous les modérateurs de la Communauté des développeurs se sont réunis pour cette session: @Irène.Mykhailova (Communauté francophne), @Djeniffer.Greffin7753 (Communauté portugaise), @Dmitry.Maslennikov (Communauté anglophone), @José.Pereira (Communauté portugaise), @Muhammad.Waseem, @Scott.Roth (Communauté anglophone) et @Lorenzo.Scalese (Communauté francophne).
@Dean.Andrews2971 et @Evgeny.Shvarov ont fait la présentation et l'introduction de tous les éléments de l'Ecosystème des Développeurs.
Après ça, il y a eu une session Open Microphone. Donc, fondamentalement, n'importe qui dans le public pouvait monter "sur le scène" et dire quelques mots sur la Communauté, les Global Masters ou Open Exchange.
Par exemple, @John.Murray (Communauté anglophone)
et @Jeffrey.Drumm (Communauté anglophone) ont partagé leurs expériences.
De plus, les nouvelles de notre nouveau jeu policier sur Global Masters ont été mises en ligne sur l'appli oficielle.
Si vous assistez en personne au Global Summit à Seattle, jouez au jeu et venez visiter mon stand à Tech Exchange au 5ème étage pour obtenir vos récompenses !
Pendant que les modérateurs étaient occupés à discuter de choses importantes, @Guillaume.Rongier7183 faisait sa présentation sur l'utilisation d'Embedded Python dans Interopérabilité. C'était un grand succès (comme d'habitude avec Guillaume) ! Beaucoup de gens se sont rendus pour savoir plus sur l'utilisation de ce technologie.
MIS A JOUR 18:00
Après la fin de la plupart des présentations, les gens ont commencé à se promener, à parler entre eux et à faire du reseaux.
@Guillaume.Rongier7183
@Irène.Mykhailova et @Jeffrey.Drumm
@Guillaume.Rongier7183 et @Muhammad.Waseem
@John.Murray
@Dmitry.Maslennikov
MIS A JOUR 22:00Après une journée remplie d'apprentissage, il y avait de la nourriture et des jeux pour tout le monde.
Et pour finir sur une belle note, les photos du musée Chihuly Garden and Glass prises plus tôt dans la journée. Je l'aimais beaucoup.
N'hésitez pas à partager vos réflexions et vos expériences du Global Summit 2022 !Passez une bonne nuit ! À demain!
Annonce
Irène Mykhailova · Mars 31, 2022
Bonjour et bienvenue sur la version de mars 2022 de la Communauté des Développeurs !
Nous avons récemment amélioré votre expérience sur la Communauté d'InterSystems :
Nouvelle recherche sur la Communauté
Statistiques générales de la Communauté
Connexion au profil Facebook
Mises à jour des pages de publication : balises, bloc d'auteur, brouillons
Regardons de plus près ci-dessous.
Recherche sur la Communauté
Nous avons mis en place un tout nouveau moteur de recherche sur le site de la Communauté. Il existe deux options de recherche :
Recherche rapide
Recherche Avancée
En utilisant la recherche rapide de la CD vous pouvez facilement trouver une publication / une balise / un utilisateur et accéder directement à cette page Web.
Vous n'avez rien trouvé de convenable parmi les options proposées?
Essayez d'utiliser la recherche avancée de la CD en cliquant sur le bouton 🔍 :
Ici, vous pouvez facilement ajouter des paramètres avancés pour votre requête de recherche :
rechercher dans les messages d'un utilisateur spécifique
rechercher par balise(s) spécifique(s)
rechercher par type de message spécifique ou juste dans vos messages
Vous pouvez également trier les résultats par période et pertinence :
Statistiques générales de la Communauté
Vous pouvez maintenant voir la Communauté des Développeurs d'InterSystems en chiffres :
Connexion au profil Facebook
Ajoutez un lien Facebook à votre profil CD pour rencontrer de nouveaux amis et vous rapprocher les uns des autres.
Accédez à votre profil --> Modifier --> Informations supplémentaires --> Facebook profile
Mises à jour des pages de publication : balises, bloc d'auteur, brouillons
Vous avez demandé - nous l'avons fait! Maintenant, les balises CD sont dans le corps du post.
De plus, sur la page de publication, vous pouvez désormais voir les coordonnées de l'auteur dans le bloc de droite :
Les brouillons sur le site de la CD sont maintenant surlignés en bleu :
J'espère que vous apprécierez nos mises à jour !
Soumettez vos demandes d'améliorations et rapports de bugs sur DC GitHub. Ou postez vos suggestions dans les commentaires de cette annonce ou de l'originale.
Restez connecté!
Annonce
Robert Bira · Sept 21, 2022
InterSystems est à la recherche du développeur qui intégrera une équipe R&D Française de taille humaine et devra collaborer avec les équipes R&D internationales. Il ou ele sera amené à travailler en équipe avec des membres de plusieurs départements (Support, Implémentation, commercial). La capacité d’innovation et la créativité sont des atouts et des qualités vivement encouragées.
Le développeur participera à la planification, au développement, à la maintenance et aux tests de nos logiciels (systèmes d’information hospitaliers). Il est de sa responsabilité de créer des logiciels robustes et de vérifier que les solutions répondent à toutes les obligations. Son rôle consiste également à produire la documentation technique ainsi que de participer au cycle de vie complet du développement de logiciels.
Le développeur :
concevra des structures objets, des schémas SQL et des workflows applicatifs
utilisera en partie la technologie propriétaire de la société (cf : Data Management & Healthcare Information Systems | InterSystems )
créera l’agencement de l’IHM dans le respect des normes applicables à chaque application
se chargera de planifier, développer et tester les programmes en appliquant ses connaissances des techniques de programmation
prêtera assistance pour investiguer et résoudre les erreurs logicielles non reproductibles (support niveau 2)
participera aux implémentations techniques sur site si nécessaire
se tiendra informé des évolutions des fonctionnalités relatives aux logiciels applicatifs
se tiendra informé des évolutions des outils de programmation, des systèmes d’exploitation et des technologies connexes
se tiendra informé des évolutions des normes d’échanges de données applicables
assistera aux sessions de formation produit pour se familiariser avec les fonctionnalités de base des produits et les workflows
Expérience et qualifications
Au moins cinq ans d'expérience dans des environnements de développement d'applications Web à grande échelle.
Parfaite connaissance du cycle de vie du développement logiciel.
Compétences techniques: SQL - Java - Angular - Linux.
>> appliquer ici << Rejoignez la team !
Article
Kevin Koloska · Nov 9, 2022
Nous sommes une startup technologique - Virtual Lab qui développe des solutions utilisant des technologies avancées VR / AR. Nous disposons d’un vaste portefeuille de produits et de solutions personnalisés. Aujourd’hui, nous aimerions vous présenter le projet VR ICU® – une plate-forme de formation pour le personnel médical de l’uci, créée à l’ère du Covid pour les besoins des hôpitaux.
Comment cela a-t-il commencé?
En 2020, une pandémie a frappé notre pays. Les hôpitaux étaient surpeuplés, il y avait un manque de personnel, en particulier dans les soins intensifs. Le chef du département d’anesthésiologie, de réanimation et de soins intensifs est apparu aux nouvelles du soir et a expliqué que si davantage de médecins étaient mis en quarantaine ou malades, ils n’avaient pas assez de personnel qualifié pour faire fonctionner les ventilateurs pulmonaires. Les autres hôpitaux ont confirmé la même situation. Nous avons eu l’idée de créer une copie numérique du ventilateur pulmonaire conçu spécifiquement pour former et aider les hôpitaux à former des médecins d’autres départements.
Nous avons approché le chef du département d’anesthésiologie de réanimation - ARO, les experts du centre de simulation. Les gens de la clinique ont soutenu l’idée, et certains ont été impliqués dans le développement. Nous avons également été accompagnés par des fabricants d’équipements médicaux qui voient la valeur ajoutée de la formation en réalité virtuelle.
Vous pouvez voir l’application ici
Aujourd’hui, UCI vr est® utilisé par les hôpitaux, les universités et les centres de simulation.
La réalité virtuelle porte l’éducation et la formation à un nouveau niveau. En apprenant par l’expérience, l’efficacité de la formation et la mémorisation sont augmentées.
Chef du département d’anesteziologie et d’examen des soins intensifs
Comment procédons-nous dans le projet et quelle est l’importance de la solution?
1. Nous avons évalué la situation actuelle à l’UCI :
Plus de 50 % des procédures de soins intensifs ne peuvent pas être formées sans de vrais patients et/ou dispositifs médicaux.
Les fabricants de dispositifs médicaux ont du personnel médical problématique au même endroit pour les procédures de formation (seulement 30% des stagiaires restent jusqu’à la fin de la formation)
Le taux de roulement au cours des deux dernières années est d’environ 20% en soins intensifs et en soins intensifs.
2. Solution au problème :
Plateforme de formation automatisée en réalité virtuelle
Simule les procédures de soins intensifs sans patients réels et sans avoir besoin d’utiliser de vrais dispositifs médicaux
Économise la technologie et les médicaments
Également disponible pour la formation à distance, présence dans un espace virtuel de différents lieux / lieux de travail
environnement propice à la pratique de situations à risque
Minimise le risque d’erreur humaine
3. Potentiel :
Utilisation de l’intelligence artificielle (IA) pour simuler et pratiquer des situations critiques et déterminer les bonnes procédures
L’IA permet de simuler les interactions patient-dispositif-patient
Les appareils des fabricants concentrés en un seul endroit facilitent la formation des hôpitaux
Avantages de travailler avec Intersystems
Notre solution VR ICU répond à® des besoins pratiques et est développée en collaboration avec les hôpitaux.
En plus de la solution technique et de l’acquisition des compétences elle-même, il est important - pour une gestion efficace de l’hôpital ou des soins intensifs - d’enregistrer les sessions de formation, leurs progrès et leurs taux de réussite. Une vue d’ensemble des personnes ayant suivi une formation et du moment où elle donne aux médecins en chef une idée claire du nombre de personnes compétentes pour travailler avec les appareils dans l’unité de soins intensifs, leur permet de les former efficacement pour maintenir leurs compétences, planifier les réserves du personnel de manière contrôlée et élargir leurs compétences.
À cet égard, la coopération avec Intersystems est importante pour nous, ce qui nous permet de stocker les données lors de chaque session de formation dans notre application. Nous suivons le nom du participant, la date et la durée de la formation, le type de formation, le type d’appareil, le nombre et le type d’erreurs et, si nécessaire, l’information que la formation a été complétée avec succès. Une fois la formation terminée, les données sont immédiatement envoyées via l’API FHIR au serveur cloud intersystème FHIR natif à l’aide du magasin de données structurées HL7. À partir de là, les données sont actuellement transférées vers notre application ou vers le système RH ou les systèmes de planification dans les hôpitaux.
L’utilisation du serveur cloud FHIR d’InterSystems comme outil de stockage des données de progression de l’entraînement dans UCI VR et de l’API FHIR pour la communication a également eu un impact positif sur notre entrée sur les marchés étrangers, en particulier en Allemagne, où fhir est une solution largement acceptée pour le transfert d’informations RH et® la communication avec des systèmes de planification tiers.
Réalisation de la vision
L’objectif de UCI® vr est de fonctionner comme une plate-forme où l’hôpital sélectionne des appareils 3D à partir d’un catalogue de ceux qu’il utilise réellement et crée un environnement de formation à partir de ceux-ci.
La vision que nous avons présentée aux fabricants de dispositifs médicaux a été initialement soutenue par BBraun, Fresenius et Linet. D’autres entreprises ont ensuite suivi l’exemple de ces pionniers audacieux. Nous élargissons également notre portefeuille d’appareils en fonction des marchés sur lesquels nous pénétrons. Actuellement, nous avons des associés aux États-Unis, en Asie et en Amérique du Sud qui complètent l’information et négocient avec les fabricants.
Présentation de l’UCI vr lors® de conférences mondiales. Grâce à notre collaboration avec InterSystems, nous avons eu l’occasion de participer à l’InterSystems Global Summit 2022 à Seattle et nous nous préparons actuellement pour HLTH 2022 à Las Vegas.
UCI® vr a remporté de nombreux prix, plus récemment à Linz, en Autriche, où nous avons remporté le prix de la meilleure startup grâce à cette solution.
Ces présentations réussies attirent l’attention des investisseurs. Nous accueillons les références à ceux qui voudraient aller plus loin dans notre produit. Nous prévoyons de vendre des licences aux hôpitaux tchèques, slovaques et allemands en 2023. Nous accueillons les partenaires commerciaux ainsi que les partenaires qui accéléreraient l’utilisation pratique de l’UCI VR – le processus® d’entrée sur le marché ou qui souhaitent contribuer au développement de la version AI/VR.
Êtes-vous intéressé par UCI VR, avez-vous des questions ou des recommandations – envoyez un e-mail au chef de projet et propriétaire du Virtual Lab Leoš Kubíček à leos@virtual-lab.cz
Nous serions heureux de vous contacter.
mirka@virtual-lab.cz
Aller à l’article original écrit par @Andrej Braguca
Article
Irène Mykhailova · Avr 18, 2022
Vous avez probablement entendu parler des bases de données NoSQL. Il existe plusieurs définitions, mais pour simplifier, ce terme est couramment utilisé pour désigner les bases de données qui n'utilisent littéralement pas le langage SQL, c'est-à-dire les bases de données autres que les bases de données relationnelles (RDB).
InterSystems IRIS Data Platform vous permet de définir des tableaux et d'accéder aux données en SQL. Par conséquent, InterSystems IRIS Data Platform n'est pas strictement une base de données NoSQL. Cependant, les " Globales " à l'origine des hautes performances d'InterSystems IRIS sont une technologie de base d'InterSystems depuis 40 ans, fournissant ce que nous appellerions aujourd'hui une base de données NoSQL. Cet article montre comment créer des structures graphiques dans les "Globales" InterSystems IRIS et y accéder en Python.
## NoSQL
Il y a des bases de données classées comme NoSQL qui traitent une variété de modèles de données. Des exemples typiques sont énumérés ci-dessous.
* **Key-Value**: Maintient la correspondance entre les clés et les valeurs. Une base de données typique : [Redis](https://redis.io)
* **Document**: JSON ou XML sont utilisés comme modèle de données. Une base de données typique : [MongoDB](https://www.mongodb.com)
* **Graph**: Un modèle de structure de graphe comprenant des sections et des nœuds. Une base de données typique : [Neo4j](https://neo4j.com)
Il existe une multitude d'autres produits et modèles de données.
### Historique de NoSQL
Pourquoi NoSQL est-il apparu et pourquoi est-il devenu si populaire ? Dans cet article, nous souhaiterions citer les raisons suivantes.
* **Les structures de données qui ne peuvent pas être représentées naturellement au moyen de tableaux**: Théoriquement, toute structure de données peut être représentée dans un tableau et accessible par SQL, mais il peut y avoir des problèmes tels que la complexité SQL et des performances médiocres. Dans de tels cas, il est préférable d'utiliser un modèle de données adapté à la structure plutôt qu'un tableau.
* **Optimisation pour les environnements distribués**:L'un des domaines où l'utilisation de NoSQL a pris de l'ampleur est celui de l'infrastructure des services de réseaux sociaux tels que Facebook. Pour prendre en charge de grandes quantités de données, de nombreux utilisateurs et une haute disponibilité, il est essentiel de distribuer la base de données. Les RDB ne fonctionnent pas toujours de manière optimale dans un environnement distribué. L'approche transactionnelle et sous-transactionnelle de la RDB, décrite ci-dessous, est également un facteur qui rend difficile sa mise en œuvre dans un environnement distribué.
* **Demande de traitement d'une transaction**:Le traitement des transactions et l'intégrité des données sont des fonctions dans lesquelles les RDBs possèdent des points forts. Il va sans dire qu'un support strict du traitement des transactions et de l'intégrité des données est essentiel pour les systèmes qui gèrent les comptes bancaires, par exemple. Cependant, le maintien de l'intégrité des données dans le traitement des transactions est très difficile à mettre en œuvre dans un environnement distribué, notamment en ce qui concerne la compatibilité avec les performances. Par conséquent, si vous souhaitez donner la priorité à l'amélioration des performances et de la disponibilité dans un environnement distribué plutôt qu'au maintien d'une cohérence stricte, NoSQL pourrait mieux répondre à vos besoins que RDB.
## Globales
InterSystems IRIS utilise une structure de données appelée Globales au cœur de la base de données. Les Globales sont modélisées comme des variables de tableau, comme le montre la figure suivante.
.png)
Les Globales n'ont pas besoin d'être définies préalablement (sans schéma), ce qui permet une conception très souple des structures de données. En outre, les données sont toujours triées par ordre d'indice (clé), tant sur le disque que dans le cache mémoire, ce qui localise et accélère l'accès aux données et évite la fragmentation.
Bien que les Globales aient la forme de variables de tableau, ils peuvent en fait être utilisés dans IRIS ObjectScript, qui est un langage de script pour IRIS, avec presque la même syntaxe que les variables en mémoire, ce qui améliore les perspectives de développement de programmes. Pour plus d'informations sur les Globales, voir la section [Global Usage Documentation](https://docs.intersystems.com/iris20201/csp/docbookj/Doc.View.cls?KEY=GGBL).
## Accès en utilisant Python
Voici un exemple de manipulation de Globales en utiisant Python à l'aide de [Python Native API](https://docs.intersystems.com/iris20201/csp/docbookj/Doc.View.cls?KEY=BPYNAT).
Nous utiliserons les données "WikiSpeedia" de [SNAP](https://snap.stanford.edu/data/#web) à l'Université de Standford comme point de départ. WikiSpeedia est un jeu dans lequel les joueurs s'affrontent pour voir à quelle vitesse ils peuvent atteindre un mot cible à partir d'un mot donné en suivant uniquement les liens Wikipédia. SNAP compte environ 110 000 liens suivis par des utilisateurs réels, qui sont stockés globalement dans InterSystems IRIS.
### Structure du graphe
Cette section décrit la structure du graphe.
.png)
La figure suivante présente les principes de base de la structure d'un graphe. Un graphe est constitué de nœuds et d'arêtes. Une arête relie deux nœuds.
Par exemple, une relation d'amitié sur Facebook peut être représentée par nœud = utilisateur, arête = relation d'amitié. Une structure de données pouvant être utilisée pour la recherche d'itinéraires est aussi réalisable en définissant le nœud = station, l'arête = station voisine de la précédente station, et la caractéristique de l'arête = distance entre les stations.
Dans l'exemple de ce document, la structure du graphe est utilisée comme suit : nœud = article Wikipédia (mot-clé) et arête = relation entre l'article original et l'article lié vers lequel l'utilisateur de WikiSpeedia a cliqué.
### Structure des Globales
Examinons la structure des Globales.
^Links("Tokyo", "18th_century")=""
^Links("Tokyo", "London")=""
^Links("Osaka", "Aquarium")=""
Par exemple, la ligne supérieure indique que l'utilisateur a cliqué sur un lien à partir de l'article "Tokyo" vers l'article "18th_century".
La troisième ligne indique que l'utilisateur a cliqué à partir de "Osaka" vers "Aquarium".
Les Globales sont optimisées pour un accès de gauche à droite aux souscripteurs (clés). Ainsi, le
^Links("Article original", "Cliquer sur l'article")=""
est optimale. En outre, dans ce cas, la valeur est "", mais si vous voulez que les arêtes aient un certain attribut, vous pouvez le définir sur une valeur globale.
### Code Python
Cette section décrit le code Python. D'abord, c'est import.
import irisnative
import networkx as nx
Pour utiliser l'API native Python, importez le module irisnative. Ce module est un fichier .whl placé dans le répertoire dev/python lors de l'installation d'IRIS et installé dans l'environnement python avec la commande pip. De plus, comme [NetworkX](https://networkx.github.io) est utilisé pour maintenir la structure du graphe, importez-le également.
connection = irisnative.createConnection("localhost", 9091, "user", "horita","horita")
iris_native = irisnative.createIris(connection)
Dans ces deux lignes, createConnection() établit la connexion à IRIS et createIris() crée l'objet d'interface pour les opérations globales.
def addNodes(key, g, d):
g.add_node(key)
if d > 3:
return
iter = iris_native.iterator("Links", key)
nodelist = [k for k,v in iter.items()]
Limité à 3 liens à suivre pour des raisons de démonstration
random.shuffle(nodelist)
nodelist = nodelist[0:3]
edgelist = [(key, n) for n in nodelist]
g.add_nodes_from(nodelist)
g.add_edges_from(edgelist)
for subk in nodelist:
addNodes(subk, g, d + 1)
Définition de la fonction addNodes(). Cette fonction construit une structure de graphe en tant qu'objet NetworkX en suivant les liens des noeuds dans un graphe donné. Des appels récursifs sont utilisés pour traverser le troisième niveau de la hiérarchie. Le point principal ici est
iter = iris_native.iterator("Links", key)
nodelist = [k for k,v in iter.items()]
Dans iris_native.iterator("Links", key), l'API native Python crée un itérateur pour l'indice. Par exemple, key='Tokyo' serait un itérateur qui itère sur la chaîne dans la partie \* de ^Links("Tokyo", \*).
L'itérateur est ensuite répété dans Python pour créer une liste. Comme vous pouvez le constater, l'itérateur de la globale s'intègre parfaitement au modèle itératif de Python, ce qui permet d'obtenir un code simple.
curkey = 'Tokyo'
G = nx.Graph()
addNodes(curkey, G, 1)
Ensuite, addNodes() est appelé en prenant le mot "Tokyo" comme clé. Cela nous donnera l'enchaînement des liens tracés à partir du mot "Tokyo". Il est montré dans la figure suivante.
.png)
Le réseau des mots cliqués à partir du mot "Tokyo" est ainsi représenté.
## Conclusion
Les globales d'InterSystems IRIS sont une force avec laquelle il faut compter dans les cas où une base de données NoSQL est la base de données de choix. En outre, l'API native Python vous permet de manipuler les globales de manière naturelle à partir de vos programmes Python.
Nous vous encourageons à l'essayer. Par ailleurs, nous serions très heureux si vous pouviez écrire vos questions dans les commentaires de cet article.
Annonce
Robert Bira · Mai 7, 2022
InterSystems a le plaisir d'annoncer la sortie de la version 1.1 de System Alerting & Monitoring (SAM).
Qu'est-ce que SAM ?
SAM combine l'API de surveillance et le moniteur de journal basés sur les normes d'IRIS avec des outils standard familiers de l'industrie comme Grafana et Prometheus pour créer une solution de surveillance et d'alerte de base pour les clusters IRIS.
Pour plus d'informations sur SAM, consultez le Guide d'alerte et de surveillance du système.
Quoi de neuf dans SAM 1.1 ?
Vous remarquerez des améliorations de performances pour les graphiques du tableau de bord Grafana, en particulier lorsque vous travaillez avec de grands ensembles de données. Si vous effectuez une mise à niveau à partir de SAM 1.0, vous devez vous assurer que vous disposez de suffisamment d'espace disque disponible, car SAM 1.1 ajoute des indices supplémentaires aux données.
Consultez les notes de version pour plus d'informations sur la mise à niveau vers SAM 1.1.
Écran d'accueil de SAM
Page Détails de l'instance de SAM
Article
Sylvain Guilbaud · Mars 10, 2023
Ce Template s'agit du modèle de base pour utiliser InterSystems IRIS for Health Community Edition en tant que serveur FHIR.
Il configure un SERVEUR FHIR, importe les données de test, fait la démonstration de l'utilisation de l'API REST avec une simple page web.
Conditions préalables
Assurez-vous que vous avez installé git et Docker desktop.
Installation
IPM
Ouvrez l'installation d'IRIS for Health avec le client IPM installé. Appel dans n'importe quel espace de nom :
USER>zpm "install fhir-server"
Ainsi, le serveur FHIR sera installé dans l'espace de noms FHIRSERVER.
Ou encore, pour une installation programmée, on peut appeler ce qui suit :
set sc=$zpm("install fhir-server")
Docker (par exemple à des fins de dév)
Clone/git extrait le référentiel dans n'importe quel répertoire local.
$ git clone https://github.com/intersystems-community/iris-fhir-template.git
Ouvrez le terminal dans ce répertoire et lancez:
$ docker-compose up -d
Données sur le patient
Le modèle est livré avec 5 brevets préchargés dans le dossier /data/fhir qui sont téléchargés pendant la construction de docker (docker build). Vous pouvez générer plus de patients en procédant comme suit. Ouvrez un terminal shel dans le dossier du référentiel et appelez :
#./synthea-loader.sh 10
ainsi, 10 patients supplémentaires seront créés dans le dossier data/fhir. Ensuite, ouvrez le terminal IRIS dans l'espace de noms FHIRSERVER avec la commande suivante :
docker-compose exec iris iris session iris -U FHIRServer
et appeler la méthode de chargement :
FHIRSERVER>d ##class(fhirtemplate.Setup).LoadPatientData("/irisdev/app/output/fhir","FHIRSERVER","/fhir/r4")
en utilisant le projet suivant
Test de l'API FHIR R4
En ouvrant l'URL http://localhost:32783/fhir/r4/metadata vous devriez voir la sortie des ressources fhir sur ce serveur
Test des appels Postman
Appel GET des métadonnées des ressources fhir pour http://localhost:32783/fhir/r4/metadata
Ouvrez Postman et effectuez un appel GET pour le patient préchargé : http://localhost:32783/fhir/r4/Patient/1
Test des appels de l'API FHIR dans une application de l'interface simple
l'application de l'interface très basique avec des appels de recherche et d'obtention aux ressources FHIR Patient et Observation peut être trouvée ici : http://localhost:32783/fhirUI/FHIRAppDemo.html ou à partir du menu VSCode ObjectScript :
En ouvrant la page, les résultats de la recherche de patientes anémiques s'affichent ainsi que les graphiques des valeurs d'hémoglobine d'une patiente sélectionnée :
Ressources de Développement
InterSystems IRIS FHIR Documentation FHIR API Developer Community FHIR section
Comment lancer le développement
Ce référentiel est prêt à être codé dans VSCode avec le plugin ObjectScript. Installez VSCode, Docker et le plugin ObjectScript et ouvrez le dossier dans VSCode. Ouvrez la classe /src/cls/PackageSample/ObjectScript.cls et essayez d'y apporter des modifications - elle sera compilée dans le conteneur docker IRIS en cours d'exécution.
N'hésitez pas à supprimer le dossier PackageSample et à placer vos classes ObjectScript dans un formulaire /src/Package/Classname.cls En savoir plus sur la configuration des dossiers pour InterSystems ObjectScript
Le script dans Installer.cls importera tout ce que vous placez sous /src dans IRIS.
Contenu du référentiel
Dockerfile
Le dockerfile le plus simple qui lance IRIS et importe Installer.cls, et qui exécute ensuite la méthode Installer.setup, laquelle crée l'espace de nom IRISAPP et y importe le code ObjectScript du dossier /src. Utilisez le fichier docker-compose.yml correspondant pour configurer facilement des paramètres supplémentaires tels que le numéro de port et l'emplacement des clés et des dossiers d'hôte. Utilisez le fichier .env/ pour ajuster le dockerfile utilisé dans docker-compose.
.vscode/settings.json
Fichier de configuration pour vous permettre de coder immédiatement en VSCode avec le plugin VSCode ObjectScript.
.vscode/launch.json
Fichier de configuration si vous voulez déboguer avec VSCode ObjectScript
Dépannage
ERROR #5001: Error -28 Creating Directory /usr/irissys/mgr/FHIRSERVER/ Si vous voyez cette erreur pendant la création de dossiers, cela signifie probablement que vous avez manqué d'espace dans docker. vous pouvez le nettoyer avec la commande suivante :
docker system prune -f
Et ensuite commencer à reconstruire l'image sans utiliser le cache :
docker-compose build --no-cache
et lancez le conteneur avec:
docker-compose up -d
Cette commande et d'autres commandes utiles peuvent être trouvées dans dev.md