vendredi 3 novembre 2017

Traduction du dernier Article de Art Kagel sur la sortie de Informix 12.10 xC9

NDLA: plutôt que de réécrire globalement la même chose avec peut-être d'autres mots, Art Kagel m'a sympatiquement autorisé  à traduire son dernier post dans son blog Informix - My View.
Voici donc le contenu en français. On retiendra que de gros clients ou clients stratégiques dans le monde n'envisagent pas du tout d'abandonner Informix, bien au contraire. A noter que je partage totalement  l'opinion de Art sur son status de la récente réunion du Board de l'IIUG. Merci Art!

Nouveautés de la version Informix 12.10.xC9


Je suis comblé! HCL a publié la première mise à jour d'Informix Dynamic Server développée sous leurs auspices.
Il y a deux nouvelles fonctionnalités importantes dans la version .xC9, l'une est une amélioration de la façon dont les données basées sur l'horodatage (TimeSeries) et les données basées sur l'espace (GeoSpatial) fonctionnent ensemble: cette fonctionnalité gagne désormais en performance et en utilité.
L'autre fonctionnalité est entièrement nouvelle et était demandée depuis des années. .

Je vais donc détailler ces fonctionnalités dans l'ordre:

1) Géolocalisation et traçage des points dans le temps désormais réunis

La fonction STS_SubtrackCreate ()  est une nouvelle fonction. Elle crée la table "subtrack" (comme une piste auxiliaire d'enregistrement) sur laquelle l'index spatio-temporel est créé. Une fois la table créée, la fonction STS_SubtrackBuild () remplit la table "subtrack" et construit le contenu de l'index initial. Les index spatio-temporels sont relativement statiques, mais vous pouvez configurer les Séries de Temps de sorte à ce qu'ils mettent automatiquement à jour l'index lorsque des éléments de données sont ajoutés à l'enregistrement Timeseries.

La nouveauté la plus importante de la version .xC9 est l'amélioration de la granularité temporelle des données spatio-temporelles, ce qui facilite conséquemment la recherche d'objects à la fois dans le temps et dans l'espace. Elle permet désormais d'effectuer des recherches répondant à la question "Quand un objet se trouvait-il dans une zone spécifiée?" ou bien "Quels objets étaient dans cette zone en ce moment?" ou encore "A quelle heure y avait-il des objets dans cette zone?"


2) Les applications peuvent désormais recevoir des notifications asynchrones de modifications de données

Les applications-client peuvent maintenant créer des triggers intelligents. Elles peuvent donc souscrire, auprès du moteur Informix, à un système de notification de la part de celui-ci lorsqu'il y a des changements dans un ensemble de données. L'API utilise des instructions SELECT et des clauses WHERE pour identifier les données spécifiques qui intéressent chaque application.
Egalement, une application peut s'enregistrer pour recevoir des données en mode "push" à partir de plusieurs tables-source. Une fois l'application "abonnée", le serveur poussera les données créées et modifiées vers les clients intéressés par ces rangées spécifiques.

En affranchissant dorénavant les applications du besoin d'interroger le serveur à la recherche de nouvelles données, les Smart Triggers permettent d'améliorer conséquemment la réactivité et la performance de ces mêmes applications. En même temps, l'architecture parallèle du serveur de base de données peut envoyer les données à tous les clients en lisant de manière asynchrone les modifications du Logical Log. Cette conception permet aux applications-client d'évoluer linéairement sans ajouter de surcharge significative au serveur de base de données.

Parce que les modifications sont collectées de façon asynchrone à partir des Logical Logs (processus géré par  les threads de journalisation de l'Enterprise Replication),  et non pas à partir des threads de session qui modifient réellement les données aucun impact négatif sur la performance des applications OLTP qui exécutent les modifications à la base de données.

Auparavant, il était possible d'émuler ce comportement en utilisant des triggers d'insertion, d'update ou de delete sur les tables concernées, lesquels invoqueraient une procédure stockées C ou JAVA, mais le fait de capturer le trigger et d'envoyer des données de manière synchrone ralentirait de façon notoire les transactions frontales, causant des problèmes d'extensibilité de l'architecture mais aussi de temps de réponse.

Le processus d'abonnement aux Smart Triggers est assez simple et bien documenté dans le Guide de Enterprise Replication.
Fondamentalement, vous appelez une fonction de souscription en passant dans un enregistrement BSON contenant des champs définissant
- la table que vous enregistrez,
- une instruction SELECT avec une clause WHERE appropriée pour filtrer les lignes qui vous intéressent,
- une étiquette que vous voulez utiliser pour distinguer les blocs de données d'un tableau de ceux provenant d'un autre,
- un paramètre de délai d'attente,
- le nombre d'éléments que vous souhaitez recevoir dans chaque message,
- le nombre de messages autorisés à faire la queue,
- et la première heure de transaction à partir de laquelle vous souhaitez recevoir des mises à jour.

Ce dernier point m'intéresse particulièrement, car  je pense qu'il sera la clé du succès d'un nouveau projet sur lequel je travaille pour un client. Peut-être que lorsque tout sera terminé, je pourrai obtenir la permission d'en parler.

Passons à la suite:

Il s'est écoulé pas mal de temps depuis mon dernier post et je vous prie de bien vouloir m'en excuser.

Je n'ai ni ignoré la communauté ni abandonné Informix comme certains l'ont suggéré et on quitté le navire. Bien au contraire, la principale raison de mon silence est que l'année écoulée a été la plus chargée depuis longtemps.
S'il est vrai que l'idée que Informix était en train de mourir m'a traversé l'esprit à un moment, l'année qui s'écoule a définitivement enterré cette idée!

J'ai vu un client mettre à jour ses serveurs vers les dernières versions trois fois. Deux clients ont implémenté Informix Warehouse Accelerator avec succès.
Un autre client est passé de l'étude de faisabilité à la production en quatre mois, et économise ainsi plus d'un million de dollars par rapport à la solution alternative «open source» tout en dépassant les performances prédites par la solution «autre» promise!
Un autre client a mis en place un nouveau produit vertical pour l'industrie qu'il dessert et qui permettra à ses clients d'effectuer des analyses plus détaillées en moins de temps avec moins de ressources.

J'ai passé plusieurs mois à aider un autre client à étendre son utilisation d'Informix au sein de son organisation, ce qui lui a permis d'améliorer la rapidité et la fiabilité des services qu'il fournit à ses clients et donc à ses clients parmi lesquels beaucoup comptent. (y compris moi). Donc, vous êtes les bienvenus.

Un des projets mentionnés ci-dessus se démarque des autres parce qu'il me permet de faire de la conception de base de données, ce qui est en vérité beaucoup plus excitant! Récemment, l'optimisation des performances, les installations, la formation et la mise en œuvre de fonctionnalités m'ont pris beaucoup de temps et je n'ai pas eu l'occasion de travailler sur un projet de conception "from scratch" depuis un moment. Ce changement me fait du bien

Point de situation sur l'IIUG

Je reviens tout juste de la réunion d'automne du conseil d'administration de l'IIUG. Cette année, nous nous sommes rencontrés officiellement pour la première fois avec les managers de HCL et la direction Laboratoire de Recherche et Développement..
Certains d'entre vous ont peut-être été choqués par l'éditorial du récent Insight IIUG. Je me dois de  signaler que les commentaires de HCL en réponse aux préoccupations de Gary étaient globalement encourageants.
Il semble que la plupart des gens d'HCL ne pensaient qu'il ,n'était pas important de tenir l'IIUG au courant de l'avancement de leurs travaux.
Il y a beacucoup de nouveautés dans la file d'attente que nous pourront divulguer dès que certaines contraintes externes auront été résolues.

Il y a des nouvelles très réjouissantes en attente pour les segments de marché qui auparavant ne pouvaient pas tirer parti d'Informix. C'est à peu près tout ce que je peux dire pour l'instant, mais j'espère que les nouvelles seront publiées à temps pour le prochain Insider. Tout ceci bien que Murphy travaille dur pour lui faire manquer l'échéance de Gary d'un jour B ^ (


Restez à l'écoute, beaucoup de choses sont en train de se passer dans le monde Informix.

Et n'oubliez pas de commencer à travailler pour obtenir la permission de votre hierrachie pour assister à la conférence IIUG World 2018 à Washington DC en octobre 2018!

mercredi 1 novembre 2017











Vous êtes développeur JavaScript / Node JS ou bien encore Python?

Il est dans ce cas fort probable que votre quotidien ressemble à s'y méprendre à celui de tant d'autres développeurs, à savoir une utilisation quasi-exclusive des si célèbres SGBD dont je ne prononcerai même pas les noms ici. C'est triste d'être noyé(e) dans la masse des développeurs, juste parce que les dictats de la mode vous obligeraient à suivre le courant tel les moutons de Panurge!

La lutte avec la concurrence est dure, épuisante, coûteuse et, à moins que vous ne soyez parmi les meilleurs au monde (ce que je souhaite pour vous), vous devrez déployer beaucoup d'efforts, souvent sans en tirer un quelconque épanouissement,  et pour quel résultat à la fin?

Lorsque vous construisez une application sur une plateforme Informix, vous ne codez sur n'importe quel SGBD, vous codez sur le SGBD le plus polyvalent et le plus avancé disponible sur le marché aujourd'hui!

  • Informix est HYBRIDE: Informix comprend SQL et NoSQL (99 +% compatible avec MongoDB): il vous permet même d'exécuter des requêtes de style SQL sur des collections NoSql et / ou d'interroger des données SQL en utilisant la syntax MongoDb. Il vous permet même d'exécuter des jointures entre les données NoSql et SQL dans une même requête!
  • Informix a été conçu pour l'IoT depuis près de 20 ans: sans blague, Informix a été totalement visionnaire quand, en 1998, Informix Software a lancé le datablade TimeSeries pour Informix. TimeSeries (c) est la meilleure implémentation de la gestion et du stockage des données basées sur l'horodatage. Le monde est en train de le découvrir maintenant et les grands leaders de l'industrie ne veulent plus entendre parler d'autre chose. Découvrez-le et vous verrez à quel point il est facile de gérer les données basées sur l'horodatage, et ceci  de la manière la plus efficace et la plus facile/
  • Le même Informix qui s'exécute sur de gros systèmes desservant plusieurs milliers d'utilisateurs OLTP, s'exécute de la même manière sur des «gateway devices», construits sur des processeurs ARM tels que Raspberry PI (tm) ou Intel Quark (tm). Même fonctionnalité, même fiabilité!
  • Informix est robuste: exécutez les applications NoSQL les plus exigeantes au sein d'une infrastructure Informix d'une stabilité à toute épreuve, conjointement avec les applications OLTP  (ou dans le cadre d'un un schéma de réplication élaboré) qui, de surcroît, fonctionneront mieux que les SGBD open source. En fin de compte, des économies drastiques en termes de matériel seront réalisées, rendant, contre toute attente, la solution gratuite beaucoup moins compétitive!
  • Informix possède le système de réplication de données le plus polyvalent: cela signifie que vous pouvez implémenter très facilement les schémas de réplication de données les plus complexes que vous puissiez imaginer, d'une manière très cohérente, facile à maintenir et fiable. Ne vous prenez pas la tête à développer une application de réplication de données qui mettra trop de temps à fonctionner correctement:  choisissez la forme de réplication la plus adaptée à vos besoins, configurez-la, démarrez-la et voilà!
  • Informix, qui utilise aussi le protocole REST, peut communiquer directement avec les applications exécutées sur un navigateur ou n'importe quel appareil utilisant REST.
  • Informix dispose également d'un listener MQTT, qui est un atout formidable pour les applications IOT: Informix peut collecter et envoyer des données directement depuis / vers des périphériques à l'aide de MQTT. Il suffit de mettre et démarrer en place le listener et c'est tout!
  • Enfin, vous pouvez utiliser les pilotes Python et JavaScript natifs pour créer vos applications dans votre langage préféré, en profitant de toutes les fonctionnalités offertes par le bijou.


Vous trouverez ces pilotes natifs informix ici:

Les pilotes de base de données Informix ouverts: https://github.com/OpenInformix

Le pilote JavaScript https://github.com/OpenInformix/IfxNode

Le pilote Python: https://github.com/OpenInformix/IfxPy

Le pilote R expérimental: https://github.com/OpenInformix/IfxR


Et vous voudrez installer l'Édition Developer gratuite d'Informix:

https://www.ibm.com/us-en/marketplace/informix-developer-edition

Ou l'image Docker: https://hub.docker.com/r/ibmcom/informix-developer-database/



Sortez du lot, amusez-vous, vivez bien et construisez les meilleures applications:
développez sur Informix!

jeudi 20 juillet 2017

Une vraie alternative moderne à Informix 4GL

Bonjour à tous,


Suite à mon article du mois de Septembre 2016    qui parlait d'une excellente solution de remplacement pour Informix 4GL, je viens de traduire la présentation sur Querix  Lycia en Français, et j'ai le plaisir de vous informer de sa disponibilité pour téléchargement.

Je reste toujours aussi passionné par ce produit qui repositionne définitivement les applications Informix 4GL en position de force. La présentation explique tous les enjeux de la problématique concernant le sort de ces applications, enjeux et questions qu'un certain nombre d'entreprises et d'organismes n'ont pas voulu considérer, et qui se retrouvent maintenant avec de graves, voire désespérés problèmes budgétaires.

Oui, la simplicité, du moment où elle est le fruit d'une mûre réflexion, PAYE!

Avant de jeter vos applications 4GL, lisez absolument cette présentation et comprenez-là: elle est le fruit d'une longue observation et attirera votre attention sur des points que vous avez peut-être sous-estimés


Cliquez ici pour télécharger la présentation

Bonjour à tous,


juste un petit passage pour vous informer que Informix 12.10 xC9 est sortie il y a 2 semaines

Il s'agit du premier fixpack depuis la reprise du R&D par HCL, donc pour l'instant il n'y a pas un nombre important de nouveautés. A noter quand même:
- les smart triggers (le serveur envoie les alertes sur changement de données)
- le déploiement sur le Cloud ( ce n'est qu'un début, d'autres bonnes nouvelles à venir )
- le pistage des objets mouvants (recherche spatio-temporelle, savoir où était un objet à telle heure, ou bien quand était un objet à tel endroit)

Un grand nombre de résolution de problèmes est également inclus dans ce fix pack.
Oui, pas beaucoup de nouvelles fonctionnalités, même si ces deux fonctionnalités répondent à un réel besoin, mais beaucoup de corrections sont présentes. A noter que pendant ce laps de temps, le R&D d'Informix était dans une phase de changement intense

Les détails sont ici


lundi 22 mai 2017

Informix Tech Day le 13 juin à 13:30 à Bruxelles et le 15 juin à 13:00 à Paris : bloquez dès maintenant votre agenda!





Si vous êtes un fan d'Informix et que vous pensez "pourquoi s'obstiner avec un SGBD en voie d'extinction?", vous vous en voudriez de ne pas avoir assisté à cet évènement Informix!

Je vous invite chaleureusement à venir participer à Informix Tech Day 
- soit à l'hôtel  Hilton City à Bruxelles, le mardi 13 juin 2017 à partir de 13:00;
- soit au client center d'IBM à Bois-Colombes, le jeudi 15 juin 2017, à partir de 13:00. 

Le meilleur et le plus complet des SGBD du marché est plus que jamais en grande forme, avec de beaux jours devant lui!

Le matin, pour toute personne considérant l'utilisation de Internet of Things / Internet des Objets, une session spécialisée sur IoT et Informix sera présentée par les gens du laboratoire de développement Informix.

Inscription gratuite à Bruxelles sur http://www.iiug.org/brussels

Inscription gratuite à Paris sur http://www.iiug.org/paris

Inscription gratuite pour "Constructing an IoT Solution" sur http://www.iiug.org/IoT

Rendez-vous sur place!