krunja - stock.adobe.com
Couchbase muscle sa base de données mobile pour l’Edge computing
Lors de sa conférence virtuelle ConnectOnline, Couchbase a présenté les nouveautés liées à sa base de données orientée documents. Notamment la version 2.8 de Couchbase Lite, qui est maintenant dotée de capacités de synchronisation conçues pour l’Edge computing.
Couchbase veut se positionner non pas comme un éditeur qui propose une base de données clé-valeur et orientée documents multimodèles s’exécutant en mémoire, mais comme le fournisseur d’une plateforme facilitant le développement d’applications d’entreprise. Ravi Mayuram, le CTO de Couchbase a défendu la convergence des usages sur le SGBD NoSQL. « Nous voulons apporter les avantages de la convergence à l’informatique d’entreprise », vante-t-il.
La base technique de la plateforme Couchbase permettrait de répondre à de nombreux types de cas d’usage. « Couchbase offre un espace pour coder de manière unifiée des applications de recherche, d’analytique, de traitement transactionnel », ajoute-t-il. Il est déjà possible de développer des applications et des API compatibles avec le SGBD en Java, Scala, C, C++, C#, Go, Python, PHP et Ruby.
En ce sens, Couchbase a lancé en juin 2020 Couchbase Cloud, une DBaaS disponible sur AWS, puis la proposera plus tard cette année sur Microsoft Azure et Google Cloud Platform. En août, l’éditeur a présenté la version 6.6 de Couchbase Server qui doit améliorer les performances (notamment du moteur de requêtes N1QL, à prononcer « nickel ») et la flexibilité de déploiements de ce SBGD NoSQL. Cette version apporte également une fonctionnalité de recherche plein texte.
L’Edge computing dans le viseur
Et dans cette volonté de couvrir tous les usages, l’éditeur a présenté les dernières mises à jour de Couchbase Lite, sa base de données mobile, et Sync Gateway, l’outil de synchronisation des données. Selon Priya Rajagopal - Principal Product Manager, Mobile, Edge & IoT chez Couchbase -, il s’agit de fournir une solution « robuste », adaptée à des applications critiques capables d’accueillir des centaines de milliers d’utilisateurs.
Couchbase Lite est une base de données NoSQL dotée de toutes les opérations CRUD (comme sa grande sœur) embarquée dans une application mobile. Elle doit permettre de stocker et traiter les données localement, sans besoin de connectivité. Sync Gateway est le composant qui doit faire la relation entre la base de données mobile et Couchbase Server.
Il s’agit d’autoriser la réconciliation de données dans les deux sens. Disponible en 1.0 en 2014, cette version mobile est déclinée en version 2.x depuis avril 2018. « Nous avons continué à améliorer Couchbase Lite à partir des retours de nos clients qui déploient des applications mobiles auprès d’un grand nombre d’utilisateurs » vante Priya Rajagopal, lors de la conférence. La prochaine étape, selon la dirigeante : l’Edge computing.
Selon Couchbase, l’Edge computing renvoie à des dispositifs autonomes qui n’ont pas en permanence accès au réseau. Ils peuvent être des capteurs IoT, des smartphones, des ordinateurs, mais aussi des « micro » centres de données (avec des capacités de traitement de données) situés sur des navires, dans des usines, des hôpitaux, etc. « Nous sommes particulièrement habitués à répondre aux besoins de résilience, de rapidité, d’élasticité et de sécurité », affirme Priya Rajagopal.
Sync Gateway et Couchbase Lite sont désormais proposés en 2.8. Cette mise à jour apporte dans Sync Gateway un protocole de réplication entre des centres de données en périphérie (Edge) et le cloud. Cela demande tout de même d’installer Edge Couchbase Server et Sync Gateway sur les data centers. Lite est installé sur les clients connectés à l’intranet associé aux centres de données.
Réplication des données améliorée
Le protocole de réplication doit faciliter la synchronisation des données entre les terminaux et les data centers et entre les data centers et le cloud. Ce protocole dispose d’un mécanisme de répartition de charge pour automatiser les réplications à travers les nœuds, en cas de panne. Un système de résolution automatique de conflits doit gérer les concurrences de mises à jour entre les documents. L’éditeur fournit également un outil pour éditer des règles personnalisées. Le protocole pourrait assurer la réplication et la synchronisation de données sur des centaines de milliers de clusters en périphérie.
Un tel système paraît gourmand en ressources. Couchbase entend utiliser la technologie Delta Sync pour réduire la consommation de bande passante en ne synchronisant que les données modifiées. Se pose aussi la question de jusqu’à combien de temps une application embarquant Lite peut rester hors ligne. En cas de problème réseau, un système de restauration automatique doit assurer la reprise, même après quelques jours, voire quelques mois, selon Priya Rajagopal.
Priya RapagopalPrincipal Product Manager, Couchbase
Couchbase a également amélioré la compatibilité de ses briques OIDC et des options de configuration pour le token JWT (JSON Web Token). Malgré cette évolution, l’API native pour Prometheus présentée en janvier est toujours en préversion. « La plateforme continue d’évoluer, nous la rendons de plus en plus cloud native », assure la responsable.
La synchronisation pair à pair, le nouvel atout de Couchbase Lite
Dans sa version 2.8, Couchbase Lite gagne lui une fonctionnalité de synchronisation bidirectionnelle peer-to-peer entre clients applicatifs, sans nécessité d’un point de centralisation sur le cloud. Cette capacité serait adaptée à des applications pour les opérateurs sur site qui ont besoin de partager des informations. Il est toujours possible de communiquer les données synchronisées vers le cloud en désignant un leader parmi les clients Lite déployés. Ce nœud dialogue alors avec Couchbase Server via le protocole Sync Gateway.
L’éditeur remet en avant les fonctions de sécurité sur étagère dont un chiffrement TLS et un système d’authentification cert basique, les capacités d’autorésolution des concurrences sont disponibles dans Lite, tout comme la restauration automatique après perte de connexion. Couchbase Lite peut être intégré dans des applications iOS, Android, Windows, Java et Xamarin (basé sur .Net).
Couchbase veut prendre de l’avance sur MongoDB
Sur ce terrain de la mobilité et du Edge Computing, Couchbase n’est pas seul. En face, MongoDB a racheté l’année dernière Realm, une base de données mobile associée à une technologie de synchronisation similaire, disponible en bêta. Et comme dans les serveurs et sur le cloud, les deux éditeurs s’affrontent à coup d’arguments techniques.
Couchbase veut, lui, faire bonne impression auprès des grands groupes. Sur son site web, il assure que sa technologie de synchronisation de données est multicloud, hybride et fournit plusieurs topologies de connexion alors que Realm serait dépendant de la DBaaS cloud MongoDB Atlas et du réseau.
L’éditeur de Lite défend les avantages de l’approche multimodèle, sans schéma prédéfini, contrairement à l’approche adoptée par MongoDB. Et si Realm est principalement conçue pour les applications mobiles et Web (Android, iOS, Node.js ou encore React.js), il faut aussi rappeler que certaines de ses fonctionnalités sont encore en bêta (Realm est né en 2014).
Reste à savoir comment ces produits vont évoluer, et s’ils se révéleront critiques dans le cadre de l’avènement de l’Edge computing.