Déployer une plate-forme d'extraction, de transformation et de chargement pour les données Oracle Utilities sur Oracle Cloud et Azure

Après l'exécution des applications Oracle Utilities Customer Cloud Service pour automatiser le service à la clientèle, la facturation et les opérations de paiement, Gas South a déployé une plate-forme d'extraction, de transformation et de chargement de données sur Oracle Cloud Infrastructure (OCI).

Fondée en 2006, Gas South, basée à Atlanta, fournit du gaz naturel à plus de 425 000 clients résidentiels, commerciaux et gouvernementaux dans 14 États, dont la Floride, le New Jersey, l'Ohio, le Texas et le Tennessee. En plus de moderniser ses opérations de service à la clientèle et de facturation dans un déploiement multinuage sur Oracle Cloud et Microsoft Azure, Gas South a récemment revitalisé sa mission d'être un carburant pour le bien en reversant 5 % de ses profits annuels pour aider les enfants dans le besoin, en donnant la priorité aux besoins de base, à l'éducation et à la santé. La société a fait don de plus de 12 millions de dollars à des organismes de bienfaisance depuis 2006, dont 3,2 millions de dollars en 2022, sa plus grande année jamais consacrée aux dons d'entreprises.

Dans son déploiement sur OCI, les données de service à la clientèle et de facturation de Gas South sont saisies à partir des applications SaaS de l'utilitaire, conservées dans un seau Oracle Cloud Infrastructure Object Storage, analysées dans des fichiers JSON, déplacées au moyen d'Oracle SOA Cloud Service et stockées dans une base de données d'extraction de données généralisée (GDE). Les données de l'application utilitaire sont ensuite structurées pour une analyse et un reporting ultérieurs avant d'être déclenchées manuellement pour passer par un tunnel SSH (Secure Shell) vers un moteur d'intégration Attunity Qlik qui se connecte à une application Microsoft Power BI s'exécutant sur SQL Server sur Azure.

Les points saillants de ce déploiement sont les suivants :

  • Les utilisateurs sont authentifiés à l'aide d'un tunnel SSH, d'un hôte bastion et de clés publiques/privées avant de se connecter à la base de données d'extraction de données généralisée dans un réseau en nuage virtuel (VCN) privé.
  • Le service GDE est actuellement utilisé pour extraire les données de service à la clientèle de l'application Oracle Utilities Customer Cloud Service SaaS et les transmettre à un moteur d'intégration Attunity Qlik, qui se connecte à une application Azure BI à des fins d'analyse et de production de rapports.
  • Les journaux d'archivage sont activés dans la base de données Oracle sur OCI pour saisir les mises à jour de fichier détectées par Attunity Qlik, puis intégrées dans Microsoft BI sur Azure.

Architecture

Gas South a créé et déployé Oracle SOA Cloud Service (SOACS) sur Oracle Cloud Infrastructure (OCI), ce qui permet à l'entreprise de services publics d'intégrer Oracle Utilities Customer Cloud Service (CCS) à son portail en libre-service, à son système de réponse vocale interactive (RVI) et à ses applications mobiles qui ont besoin d'accéder aux systèmes de paiement et financiers de Gas South.

Pour analyser les données générées par CCS, Gas South a déployé un système généralisé d'exportation de données (GDE) pour extraire les données de CCS et les importer dans Microsoft Business Intelligence, hébergé dans Microsoft Azure.

Le diagramme ci-dessous présente le flux de données pour le système d'intégration SOA.



gas-south-data-flow-oracle.zip

Les informations suivantes décrivent le flux de données de l'intégration SOA :

  1. Un utilisateur accède au portail de Gas South.
  2. Les données de facturation provenant d'Oracle Utilities CCS (CCS) sont générées et envoyées à Oracle SOA Suite (SOA).
  3. SOA envoie les données de facturation au système financier.
  4. SOA envoie la facturation au portail en libre-service pour consultation par l'utilisateur.
  5. L'utilisateur paie la facture.
  6. Le paiement est traité.
  7. SOA est mis à jour avec le paiement pour indiquer que la facture est payée.
  8. SOA met à jour CCS pour montrer que la facture est payée.

Le diagramme ci-dessous présente le flux de données pour le système d'exportation de données.



gas-south-data-flow-ccs-oracle.zip

Ce qui suit décrit le flux de données CCS pour l'exportation et l'importation de données :

  1. CCS lance une exportation généralisée des données toutes les deux heures pour exporter les données vers le stockage d'objets.
  2. Un script d'interface de ligne de commande sur la machine virtuelle du service Oracle Base Database Service est lancé pour copier, fractionner et charger les fichiers dans la base de données.
  3. Attunity Qlik est configuré pour lire les modifications apportées aux journaux dans Oracle Database.
  4. Si des modifications se sont produites, Attunity Qlik extrait les modifications d'Oracle Database
  5. Les données sont transmises à Azure SQL.
  6. Les données sont accessibles par Microsoft Business Intelligence.

Le diagramme suivant illustre le diagramme d'architecture de référence pour Gas South.



gaz-architecture sud-oracle.zip

Le portail Gas South, l'IVR et l'application mobile sont hébergés sur Microsoft Azure. Microsoft Azure et les systèmes financiers Gas South se connectent au réseau en nuage virtuel (VCN) OCI à l'aide d'une passerelle Internet. Les services SOA fournissent l'intergiciel et les systèmes CCS, Gas South Systems et des systèmes financiers tiers servent de systèmes source et cible.

Un serveur d'administration, deux serveurs gérés et un serveur MFT (Managed File Transfer) sont déployés dans le cadre de l'architecture SOA. Les deux serveurs gérés sont équilibrés par un équilibreur de charge Oracle. La base de données est déployée à l'aide du service Oracle Base Database Service.

Pour l'exportation de données, le stockage d'objets est utilisé pour stocker les fichiers exportés à partir de CCS. Un script sur le service Oracle Base Database Service (base de données intermédiaire) est lancé pour copier, fractionner et charger les fichiers dans la base de données. Microsoft Attunity est utilisé pour lire et extraire des données de la base de données intermédiaire, qui est ensuite accessible par Microsoft Business Intelligence à l'aide d'un tunnel SSH. Oracle Cloud Infrastructure Vault est utilisé pour gérer les clés.

Oracle a fourni les recommandations d'état suivantes à Gas South :

  • Explorez la mise à niveau vers SOACS Marketplace. La mise à niveau vers SOACS Marketplace aidera Gas South à réduire les coûts de maintenance et d'administration des TI.
  • Explorez les options en nuage natives et de plate-forme-service (PaaS) pour le processus de transformation et de chargement des données de CCS vers Azure SQL, en tirant parti d'Oracle Cloud Infrastructure Functions, d'Oracle Cloud Infrastructure Events, d'Oracle Cloud Infrastructure Data Integration et d'Oracle Integration.

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



gaz-architecture-sud-futur-oracle.zip

Un nouveau modèle de flux de données résulte des modifications apportées à l'architecture :



gaz-sud-données-flux-futur-oracle.zip

Ce qui suit décrit le flux de données CCS pour l'exportation et l'importation de données :

  1. CCS lance une exportation généralisée des données toutes les deux heures pour exporter les données vers le stockage d'objets.
  2. Un événement d'Oracle Cloud Infrastructure Events détecte l'ajout de fichiers de données exportés dans le stockage d'objets.
  3. L'événement appelle une fonction.
  4. Une fonction d'Oracle Cloud Infrastructure Functions appelle le service d'intégration de données pour OCI.
  5. Le service d'intégration de données pour OCI stocke les fichiers traités dans le stockage d'objets.
  6. Le service d'intégration de données pour OCI fractionne et stocke les fichiers traités dans le stockage d'objets.
  7. Un événement d'Oracle Cloud Infrastructure Events détecte l'ajout de fichiers de données fractionnés dans le stockage d'objets.
  8. L'événement appelle une fonction.
  9. Une fonction lit les fichiers fractionnés à partir du stockage d'objets.
  10. Une fonction appelle Oracle Integration.
  11. Les données sont transmises à Azure SQL et sont accessibles par Microsoft Business Intelligence.

L'architecture comporte les composants suivants :

  • Location

    Une location est une partition sécurisée et isolée qu'Oracle configure dans Oracle Cloud lors de votre inscription à OCI. Vous pouvez créer, organiser et administrer vos ressources sur OCI dans votre location. Une location est synonyme d'une société ou d'une organisation. Habituellement, une société aura une seule location et reflétera sa structure organisationnelle au sein de cette location. Une seule location est généralement associée à un seul abonnement, et un seul abonnement ne comporte généralement qu'une seule location.

  • Région OCI

    Une région OCI est une zone géographique localisée qui contient un ou plusieurs centres de données, des domaines de disponibilité d'hébergement. Les régions sont indépendantes les unes des autres, et de grandes distances peuvent les séparer (à travers les pays ou même les continents).

  • Domaine de disponibilité

    Les domaines de disponibilité sont des centres de données indépendants et autonomes dans une région. Les ressources physiques de chaque domaine de disponibilité sont isolées des ressources des autres domaines de disponibilité, ce qui garantit la tolérance aux pannes. Les domaines de disponibilité ne partagent pas les éléments d'infrastructure (alimentation ou refroidissement, par exemple) ni le réseau de domaines de disponibilité interne. Ainsi, une défaillance d'un domaine de disponibilité ne doit pas avoir d'incidence sur les autres domaines de disponibilité de la région.

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

    Un réseau en nuage virtuel (VCN) est un réseau défini par logiciel personnalisable, configuré dans une région OCI. Comme les réseaux de centre de données traditionnels, les réseaux en nuage virtuels vous permettent de contrôler votre environnement de réseau. Un VCN peut disposer de plusieurs blocs de routage inter-domaine (CIDR) sans chevauchement que vous pouvez modifier après avoir créé le VCN. Vous pouvez segmenter un VCN en sous-réseaux, dont la portée peut concerner une région ou un domaine de disponibilité. Un sous-réseau est constitué d'un intervalle contigu d'adresses qui ne chevauchent pas les autres sous-réseaux dans le réseau en nuage virtuel. Vous pouvez modifier la taille d'un sous-réseau après sa création. Un sous-réseau peut être public ou privé.

  • Table de routage

    Les tables de routage virtuelles contiennent des règles pour acheminer le trafic des sous-réseaux vers des destinations en dehors d'un VCN, généralement au moyen de passerelles.

  • 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 autorisé à entrer et à sortir du sous-réseau.

  • Passerelle Internet

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

  • Passerelle de service

    Une passerelle de service fournit un accès à partir d'un VCN à d'autres services, tels que Oracle Cloud Infrastructure Object Storage. Le trafic entre le réseau VCN et le service Oracle circule sur la structure réseau Oracle et ne passe pas par Internet.

  • Équilibreur de charge

    Oracle Cloud Infrastructure Load Balancer assure la répartition automatisée du trafic d'un point d'entrée unique vers plusieurs serveurs.

  • Service de calcul pour OCI

    Avec le service de calcul pour Oracle Cloud Infrastructure, vous pouvez provisionner et gérer des hôtes de calcul dans le nuage. Vous pouvez lancer des instances de calcul avec des formes qui répondent à vos besoins en ressources pour l'unité centrale, la mémoire, la bande passante de réseau et le stockage. Après avoir créé une instance de calcul, vous pouvez y accéder en toute sécurité, la redémarrer, attacher et détacher des volumes, et y mettre fin lorsque vous n'en avez plus besoin.

  • Service de stockage d'objets pour OCI

    Le service de stockage d'objets pour OCI donne accès à de grandes quantités de données structurées et non structurées de tous types, notamment 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é directement à partir d'applications ou de la plate-forme en nuage. Vous pouvez adapter le stockage sans que la performance ou la fiabilité des services soit affectée.

    Utilisez le stockage standard pour le stockage "à chaud" auquel vous devez accéder rapidement, immédiatement et fréquemment. Utilisez le stockage d'archives pour le stockage "à froid" que vous conservez pendant de longues périodes et auquel vous accédez rarement.

  • Chambre forte OCI

    Oracle Cloud Infrastructure Vault vous permet de créer et de gérer de manière centralisée les clés de chiffrement qui protègent vos données et les données d'identification de clé secrète que vous utilisez pour sécuriser l'accès à vos ressources dans le nuage. La gestion des clés par défaut est les clés gérées par Oracle. Vous pouvez également utiliser des clés gérées par le client qui utilisent le service Chambre forte OCI. Le service de chambre forte pour OCI offre un jeu étoffé d'API REST pour gérer les chambres fortes et les clés.

  • Surveillance OCI

    Oracle Cloud Infrastructure Monitoring surveille vos ressources en nuage, de manière active et passive, et utilise des alarmes pour vous aviser lorsque les mesures répondent aux déclencheurs spécifiés.

  • Service de base de données de base Oracle

    Oracle Base Database Service est un service de base de données Oracle Cloud Infrastructure (OCI) qui vous permet de créer, d'adapter et de gérer des bases de données Oracle dotées de fonctions complètes sur des machines virtuelles. Un système de base de données sur machine virtuelle utilise le stockage des volumes par blocs OCI au lieu du stockage local et peut exécuter Oracle Real Application Clusters (Oracle RAC) pour améliorer la disponibilité.

Remerciements

  • Authors: Robert Huie, Sasha Banks-Louie
  • Contributors: Oracle Team: Brad Goodwin, Cory Quinn, Santosh Dixit, Pradyumna Kodgi, Joseph Dominski, Mckenzie Holiday, Robert Lies

    Gas South Team: John Stiles, Jose Figueroa, Smitha Viswambharan, Marshall Sutherland, Nadeem Fatmi, Michael Sallustio