Logiciel Gadget : déploiement de la plate-forme de documentation IA sur Oracle Cloud

Gadget Software a déployé sa plate-forme logicielle en tant que service (SaaS) sur Oracle Cloud Infrastructure afin de réduire les coûts et de libérer l'équipe de développement de Gadget Software pour qu'elle se concentre sur ses activités principales.

Gadget Software est une plate-forme de virtualisation de documents orientée IA qui transforme les documents standard en applications conviviales, faciles à suivre et mobiles que les clients peuvent récupérer avec des codes QR et les afficher sur n'importe quel appareil.

La plate-forme software-as-a-service (SaaS) de Gadget utilise des environnements colocatifs, des bases de données, Kubernetes et des applications business-to-business (B2B). Leurs clients sont de nombreuses autres entreprises et utilisateurs qui téléchargent leurs documents vers la plate-forme orientée IA de Gadget Software.

Au début de leur évaluation, Gadget Software s'est rendu compte qu'ils avaient besoin des fonctionnalités suivantes :

  • Fonctionnalités permettant le déploiement de nouveaux services et fonctionnalités
  • Vitesse et agilité pour déployer de nouveaux environnements de développement, de test et d’assurance qualité
  • Réduction des frais généraux d’administration (notamment la base de données)
  • Haute disponibilité et évolutivité dynamique, en particulier pour l'environnement Kubernetes

Oracle Cloud Infrastructure a résolu ces problèmes à l'aide des ressources suivantes :

  • Déploiement rapide de nouvelles ressources et de nouveaux outils
  • Large gamme de fonctionnalités et d’outils, tels que Kubernetes, d’équilibreurs de charge, de sécurité et de gestion des identités
  • Evolutivité et gestion simples d'Oracle Cloud Infrastructure Container Engine for Kubernetes, nombre minimal de processus et haute disponibilité
  • Plusieurs offres de base de données sur machines virtuelles, Bare Metal, Oracle Database Exadata Cloud Service entièrement géré et Oracle MySQL Database Service
  • Outils de gestion et de surveillance des environnements de production
  • De nombreuses régions, domaines de disponibilité et domaines de pannes (dans le domaine de disponibilité) pour la haute disponibilité et la récupération après sinistre

Ces fonctionnalités et outils ont permis à Gadget Software de réduire considérablement ses dépenses d’exploitation et d’investissement et ont permis à son équipe de développement de se concentrer sur son activité principale. Au lieu d'écrire des scripts de gestion pour la base de données relationnelle, l'équipe utilise la suite d'outils fournie par Oracle Cloud Infrastructure. L'environnement de développement de Gadget Software est déployé à deux emplacements dans Oracle Cloud Infrastructure. L’équipe Oracle s’est dotée d’une excellente expérience, qui a accordé une grande attention à toutes les exigences et aux détails de l’implémentation et résolu les problèmes de conception.

Témoignage client

En savoir plus sur le parcours de Gadget Software vers Oracle Cloud :

Architecture

Gadget Software utilise Oracle Cloud Infrastructure pour déployer son algorithme pour l'établissement de cluster (ACE), son composant de gestion de documents et le niveau de données.

Les noeuds ACE utilisent un ensemble d'outils et de composants logiciels pour analyser des documents, collecter des informations sur les documents eux-mêmes, examiner différents composants des documents, et formater et transformer les documents pour présentation sur les appareils à petit écran et pour les utilisateurs industriels. Cette transformation produit une expérience riche au-delà d'un simple document papier.

Les nœuds ACE sont un outil basé sur Python avec une analyse des données importante, une intelligence artificielle (IA) et une logique d’apprentissage automatique (ML). Le noeud de cluster ACE est une machine virtuelle exécutant plusieurs conteneurs. Certaines des fonctions exécutées par ces conteneurs sont les suivantes :

  • Dépôt de document
  • Système électronique de gestion de documents (EDMS)

Gadget Software déploie le cluster ACE dans un environnement de secours principal. Les données de document sont stockées dans une base de données résiliente et redondante sur le back-end. Le moteur principal héberge également un environnement de bureau et, en utilisant Oracle Cloud Infrastructure Container Engine for Kubernetes, il peut facilement augmenter ou diminuer à mesure que de nouveaux clients sont intégrés. Ils peuvent créer des référentiels pour de nouveaux clients, développer des référentiels pour des clients existants et créer de nouveaux environnements de base de données partagés ou entièrement isolés pour leurs clients.

Le diagramme suivant illustre cette architecture de référence.



gadget-ace-production-oracle.zip

Avec leur réussite à l'aide d'Oracle Cloud Infrastructure, Gadget Software prévoit désormais de migrer également son contenu principal et son moteur principal. En outre, Gadget Software prévoit de déployer une nouvelle application de services de base qui va redimensionner et déployer des services Oracle Cloud Infrastructure supplémentaires :

  • équilibreurs de charge
  • Passerelles d'API
  • Stockage du système de fichiers
  • Oracle Cloud Infrastructure Container Engine for Kubernetes (OKE)
  • Oracle MySQL Database Service en mode Haute disponibilité

Le schéma suivant illustre ces plans futurs :



gadget-core-system-oracle.zip

L'architecture comporte les composants suivants :

  • Région

    Une région Oracle Cloud Infrastructure est une zone géographique localisée qui contient des centres de données, appelés domaines de disponibilité. Les régions sont indépendantes d'autres régions et de grandes distances peuvent les séparer (entre les pays voire les continents).

    Toutes les ressources de cette architecture sont déployées dans une seule région.

  • Domaines de disponibilité

    Les domaines de disponibilité sont des centres de données autonomes et indépendants au sein d'une région. Les ressources physiques de chaque domaine de disponibilité sont isolées des ressources des autres domaines de disponibilité, ce qui assure la tolérance de pannes. Les domaines de disponibilité ne partagent pas d'infrastructure telle que l'alimentation ou le refroidissement ou le réseau interne du domaine de disponibilité. Par conséquent, il est improbable qu'un problème affecte les autres domaines de disponibilité de la région.

    Toutes les ressources de cette architecture sont déployées dans un seul domaine de disponibilité.

  • Domaine de pannes

    Un domaine de panne est un regroupement de matériel et d'infrastructures au sein d'un domaine de disponibilité. Chaque domaine de disponibilité comporte trois domaines de pannes dotés d'une alimentation et d'un matériel indépendants. Lorsque vous distribuez des ressources entre plusieurs domaines de pannes, vos applications peuvent tolérer les pannes de serveur physique, la maintenance du système et les pannes d'alimentation au sein d'un domaine de pannes.

  • Réseau cloud virtuel (VCN) et sous-réseaux

    Un VCN est un réseau personnalisable et défini par logiciel que vous configurez dans une région Oracle Cloud Infrastructure. Comme les réseaux cloud virtuels traditionnels, vous bénéficiez d'un contrôle total sur votre environnement réseau. Un VCN peut comporter plusieurs blocs CIDR qui ne se chevauchent pas et que vous pouvez modifier après avoir créé le VCN. Vous pouvez segmenter un VCN en sous-réseaux, qui peuvent être ciblés vers une région ou un domaine de disponibilité. Chaque sous-réseau se compose d'une plage contiguë d'adresses qui ne chevauchent pas les autres sous-réseaux du VCN. Vous pouvez modifier la taille d'un sous-réseau après sa création. Un sous-réseau peut être public ou privé.

  • Liste de sécurité

    Pour chaque sous-réseau, vous pouvez créer des règles de sécurité qui spécifient la source, la destination et le type de trafic qui doivent être autorisés en entrée et en sortie du sous-réseau.

  • Passerelle NAT (Network Address Translation)

    Une passerelle NAT permet aux ressources privées d'un VCN d'accéder aux hôtes sur Internet, sans exposition à ces ressources aux connexions Internet entrantes.

  • Passerelle Internet

    La passerelle Internet autorise le trafic entre les sous-réseaux publics d'un VCN et le réseau Internet public.

  • Passerelle d'API

    Le service Oracle API Gateway vous permet de publier des API avec des adresses privées accessibles à partir de votre réseau, et que vous pouvez afficher sur le réseau Internet public si nécessaire. Les adresses prennent en charge la validation d'API, la transformation des demandes et des réponses, la spécification CORS, l'authentification et l'autorisation, ainsi que la limitation des demandes.

  • Equilibreur de charge

    Le service Oracle Cloud Infrastructure Load Balancing fournit une répartition de trafic automatisée à partir d'un seul point d'entrée vers plusieurs serveurs du back-end.

    Cette architecture inclut un équilibreur de charge public.

  • Object Storage

    Object Storage fournit un accès rapide à de grandes quantités de données structurées et non structurées de tout type de contenu, y compris des sauvegardes de base de données, des données analytiques et du contenu enrichi, comme des images et des vidéos. Vous pouvez stocker des données en toute sécurité, puis les extraire directement à partir d'Internet ou de la plate-forme cloud. Vous pouvez faire évoluer le stockage de manière transparente sans subir de dégradation des performances ou de la fiabilité du service. Utilisez le stockage standard pour le stockage à chaud auquel vous devez accéder rapidement, immédiatement et fréquemment. Utilisez le stockage d'archive pour un stockage "à froid" que vous conservez pendant de longues périodes et rarement ou rarement accès.

  • File Storage

    Le service Oracle Cloud Infrastructure File Storage offre un système de fichiers réseau durable, évolutif, sécurisé et adapté à l'entreprise. Vous pouvez vous connecter à un système de fichiers de service File Storage à partir de n'importe quelle instance Bare Metal, de machine virtuelle ou de conteneur dans un VCN. Vous pouvez également accéder à un système de fichiers en dehors du VCN à l'aide d'Oracle Cloud Infrastructure FastConnect et du VPN IPSec.

  • Volume de blocs

    Avec les volumes de stockage de blocs, vous pouvez créer, attacher, connecter et déplacer des volumes de stockage, et modifier leurs performances pour répondre à vos exigences en matière de stockage, de performances et d'application. Une fois qu'un volume est attaché et connecté à une instance, vous pouvez l'utiliser comme un disque dur classique. Vous pouvez également déconnecter un volume et l'associer à une autre instance sans perdre de données.

  • Container Engine for Kubernetes

    Oracle Cloud Infrastructure Container Engine for Kubernetes est un service entièrement géré, évolutif et hautement disponible que vous pouvez utiliser pour déployer vos applications en conteneur vers le cloud. Indiquez les ressources de calcul dont vos applications ont besoin et Container Engine for Kubernetes les provisionne sur Oracle Cloud Infrastructure dans une location existante. Container Engine for Kubernetes utilise Kubernetes pour automatiser le déploiement, le redimensionnement et la gestion des applications en conteneur sur des clusters d'hôtes.

  • Oracle MySQL Database Service

    Oracle MySQL Database Service est un service de base de données Oracle Cloud Infrastructure (OCI) entièrement géré qui permet aux développeurs de développer et de déployer rapidement des applications cloud natives sécurisées. Optimisé pour et exclusivement disponible dans OCI, Oracle MySQL Database Service est conçu, géré et pris en charge à 100 % par les équipes d'ingénierie OCI et MySQL.

    Oracle MySQL Database Service dispose d'un moteur d'analyse hautes performances intégré (HeatWave) qui permet d'exécuter des analyses en temps réel sophistiquées directement sur une base de données MySQL opérationnelle.