{"id":2308,"date":"2026-08-06T19:00:14","date_gmt":"2026-08-06T19:00:14","guid":{"rendered":"https:\/\/gplg.pt\/ia\/?page_id=2308"},"modified":"2026-08-22T08:23:18","modified_gmt":"2026-08-22T08:23:18","slug":"solutions-de-bases-de-donnees","status":"publish","type":"page","link":"https:\/\/gplg.pt\/fr\/technologies\/database-solutions\/","title":{"rendered":"Solutions de bases de donn\u00e9es"},"content":{"rendered":"<div data-elementor-type=\"wp-page\" data-elementor-id=\"2308\" class=\"elementor elementor-2308\" data-elementor-settings=\"{&quot;ha_cmc_init_switcher&quot;:&quot;no&quot;}\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-aaf9f3c e-con e-atomic-element e-flexbox-base e-0e6b84d\" data-id=\"aaf9f3c\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"aaf9f3c\">\n    \t\t<div class=\"elementor-element elementor-element-3d9ab44 elementor-widget elementor-widget-ucaddon_box_hero\" data-id=\"3d9ab44\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"ucaddon_box_hero.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n<!-- start Box Hero -->\n\t\t<link id='font-awesome-css' href='https:\/\/gplg.pt\/ia\/wp-content\/plugins\/unlimited-elements-for-elementor-premium\/assets_libraries\/font-awesome6\/fontawesome-all.min.css' type='text\/css' rel='stylesheet' >\n\t\t<link id='font-awesome-4-shim-css' href='https:\/\/gplg.pt\/ia\/wp-content\/plugins\/unlimited-elements-for-elementor-premium\/assets_libraries\/font-awesome6\/fontawesome-v4-shims.min.css' type='text\/css' rel='stylesheet' >\n\n<style>\/* widget: Box Hero *\/\n\n#uc_box_hero_elementor_3d9ab44 *{\n\tbox-sizing: border-box;\n}\n#uc_box_hero_elementor_3d9ab44{\n\tdisplay:flex;\n    align-items:center;\n    justify-content:center;\n}\n\n#uc_box_hero_elementor_3d9ab44 .uc_container_holder{\n\ttext-align:center;\n}\n\n\n.ue_big_title\n{\n  font-size:32px;\n}\n\n#uc_box_hero_elementor_3d9ab44 .uc_btn\n{\n  display:inline-block;\n    text-decoration:none;\n    transition:0.3s;\n}\n\n\n#uc_box_hero_elementor_3d9ab44 .uc_main_content_box .uc_social a{\n    display:inline-block;\n    text-decoration:none;\n    transition:0.3s;\n}\n\n<\/style>\n\n<div class=\"uc_blogger_header ue_box_hero\" id=\"uc_box_hero_elementor_3d9ab44\">\n    \n    <div class=\"uc_container_holder\">\n    \t<div class=\"uc_main_content_box\" >\n                        \n            <div class=\"uc_content_box\" >\n                                                            <\/div>\n            \n                    <\/div>\n    <\/div>\n<\/div>\n<!-- end Box Hero -->\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-96f4ade e-con e-atomic-element e-flexbox-base e-c1baff6\" data-id=\"96f4ade\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"96f4ade\">\n    \t\t<div class=\"elementor-element elementor-element-22dc2e2 elementor-widget elementor-widget-ucaddon_sliding_content_box\" data-id=\"22dc2e2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"ucaddon_sliding_content_box.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n<!-- start Content Box Sliding Effect -->\n<style>\/* widget: Content Box Sliding Effect *\/\n\n#uc_sliding_content_box_elementor_22dc2e2 {\n\tbox-sizing: border-box;\n    overflow:hidden;\n}\n\n.ue-title\n{\n  font-size:21px;\n  width:100%;\n}\n\n.ue-text\n{\n  width:100%;\n}\n\n.ue-btn-wrapper\n{\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_22dc2e2 .ue-content-box-inner\n{\n  display:flex;\n  position:relative;\n}\n\n#uc_sliding_content_box_elementor_22dc2e2 .ue-overlay\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n}\n\n#uc_sliding_content_box_elementor_22dc2e2 .ue-content-box-wrapper\n{\n  position:relative;\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_22dc2e2 .ue-bg\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n  transition:0.5s;\n}\n\n#uc_sliding_content_box_elementor_22dc2e2:hover .ue-bg\n{\n transform:scale(1.1,1.1);\n}\n\n\n#uc_sliding_content_box_elementor_22dc2e2:hover .moveFromLeft\n{\n  animation: moveFromLeft 0.5s;\n}\n\n#uc_sliding_content_box_elementor_22dc2e2:hover .moveFromRight\n{\n  animation: moveFromRight 0.5s;\n}\n\n#uc_sliding_content_box_elementor_22dc2e2:hover .moveFromBottom\n{\n  animation: moveFromBottom 0.5s;\n}\n\n@-webkit-keyframes moveFromLeft {\n from {\n -webkit-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromLeft {\n from {\n -moz-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromLeft {\n from {\n -ms-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromRight {\n from {\n -webkit-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromRight {\n from {\n -moz-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromRight {\n from {\n -ms-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromBottom {\n from {\n -webkit-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromBottom {\n from {\n -moz-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromBottom {\n from {\n -ms-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateY(0%);\n opacity: 1;\n}\n}\n\n<\/style>\n\n<div class=\"ue-content-box\" id=\"uc_sliding_content_box_elementor_22dc2e2\">\n  \n  <div class=\"ue-content-box-inner\">\n    <div class=\"ue-bg\"><\/div>\n    <div class=\"ue-overlay\"><\/div>\n    \n     <div class=\"ue-content-box-wrapper\">\n\t\t<div class=\"ue-title moveFromLeft\">Solutions de bases de donn\u00e9es industrielles<\/div>\t\n\t\t<div class=\"ue-text moveFromLeft\"><div class=\"iiot-card-container\"><br \/><!-- Header Bar --><div class=\"iiot-card-header\"><div class=\"iiot-header-title\"><h3>Donn\u00e9es structur\u00e9es pour les syst\u00e8mes et applications industriels<\/h3><\/div><\/div><p><!-- Content Area --><\/p><div class=\"iiot-card-content\"><div class=\"iiot-content-inner\"><p class=\"iiot-description\">GPLG con\u00e7oit et met en \u0153uvre des solutions de bases de donn\u00e9es destin\u00e9es aux environnements industriels, reliant les syst\u00e8mes de production, les logiciels d'automatisation et les donn\u00e9es op\u00e9rationnelles gr\u00e2ce \u00e0 des architectures de donn\u00e9es fiables et structur\u00e9es.<\/p><p><!-- 3 Key Data Architecture Pillars Grid --><\/p><div class=\"iiot-pillars-grid\"><p><!-- Pillar 1: Production Records --><\/p><div class=\"iiot-pillar-card\"><div class=\"iiot-pillar-badge\">01<\/div><div class=\"iiot-pillar-body\"><div class=\"iiot-pillar-title\">Registres de production et tra\u00e7abilit\u00e9<\/div><p class=\"iiot-pillar-desc\">Suivi structur\u00e9 des ordres de fabrication, de l'historique des lots, des num\u00e9ros de s\u00e9rie, de la tra\u00e7abilit\u00e9 des composants et des indicateurs de contr\u00f4le qualit\u00e9 dans l'ensemble de l'atelier.<\/p><\/div><\/div><p><!-- Pillar 2: Machine Information --><\/p><div class=\"iiot-pillar-card\"><div class=\"iiot-pillar-badge\">02<\/div><div class=\"iiot-pillar-body\"><div class=\"iiot-pillar-title\">Donn\u00e9es relatives aux machines et \u00e0 l'exploitation<\/div><p class=\"iiot-pillar-desc\">Stockage centralis\u00e9 des donn\u00e9es de t\u00e9l\u00e9m\u00e9trie des \u00e9quipements en temps r\u00e9el, des registres d'\u00e9tat des automates programmables (PLC), des param\u00e8tres OEE, des journaux de maintenance et des alarmes actives.<\/p><\/div><\/div><p><!-- Pillar 3: Historical Process Data --><\/p><div class=\"iiot-pillar-card\"><div class=\"iiot-pillar-badge\">03<\/div><div class=\"iiot-pillar-body\"><div class=\"iiot-pillar-title\">Donn\u00e9es historiques de processus et syst\u00e8mes d'archivage<\/div><p class=\"iiot-pillar-desc\">Enregistrement de s\u00e9ries chronologiques \u00e0 haut d\u00e9bit pour l'analyse des tendances des capteurs, des temps de cycle, des conditions environnementales et l'\u00e9tablissement de rapports analytiques \u00e0 long terme.<\/p><\/div><\/div><\/div><p><!-- Footer Statement Box --><\/p><div class=\"iiot-statement-banner\"><div class=\"iiot-statement-text\">Des bases de donn\u00e9es en p\u00e9riph\u00e9rie aux architectures d'applications d'entreprise, nous d\u00e9veloppons des syst\u00e8mes de donn\u00e9es adapt\u00e9s aux besoins pr\u00e9cis de votre activit\u00e9 industrielle.<\/div><\/div><\/div><\/div><\/div><p><style>\n  \/* Full-Width Container Styling *\/<br \/>\n  .iiot-card-container {<br \/>\n    width: 100%;<br \/>\n    max-width: 100%;<br \/>\n    margin: 20px 0;<br \/>\n    border: 1px solid rgba(255, 255, 255, 0.2);<br \/>\n    border-radius: 10px;<br \/>\n    background-color: transparent;<br \/>\n    font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;<br \/>\n    overflow: hidden;<br \/>\n    box-sizing: border-box;<br \/>\n  }<\/p>\n<p>  \/* Header Bar *\/<br \/>\n  .iiot-card-header {<br \/>\n    display: flex;<br \/>\n    align-items: center;<br \/>\n    padding: 18px 24px;<br \/>\n    background-color: rgba(13, 35, 58, 0.85);<br \/>\n    backdrop-filter: blur(5px);<br \/>\n    color: #ffffff;<br \/>\n  }<\/p>\n<p>  .iiot-header-title h3 {<br \/>\n    margin: 0;<br \/>\n    font-size: 1.15rem;<br \/>\n    font-weight: 600;<br \/>\n    color: #ffffff !important;<br \/>\n  }<\/p>\n<p>  \/* Content Area *\/<br \/>\n  .iiot-card-content {<br \/>\n    background-color: transparent;<br \/>\n  }<\/p>\n<p>  .iiot-content-inner {<br \/>\n    padding: 24px;<br \/>\n    border-top: 1px solid rgba(255, 255, 255, 0.1);<br \/>\n  }<\/p>\n<p>  .iiot-description {<br \/>\n    color: inherit;<br \/>\n    opacity: 0.9;<br \/>\n    line-height: 1.6;<br \/>\n    margin-bottom: 28px;<br \/>\n    font-size: 0.98rem;<br \/>\n    text-align: center;<br \/>\n  }<\/p>\n<p>  \/* Pillars Grid Layout *\/<br \/>\n  .iiot-pillars-grid {<br \/>\n    display: grid;<br \/>\n    grid-template-columns: repeat(3, 1fr);<br \/>\n    gap: 16px;<br \/>\n    margin-bottom: 24px;<br \/>\n  }<\/p>\n<p>  .iiot-pillar-card {<br \/>\n    background-color: rgba(255, 255, 255, 0.03);<br \/>\n    border: 1px solid rgba(255, 255, 255, 0.15);<br \/>\n    border-radius: 8px;<br \/>\n    padding: 20px;<br \/>\n    box-sizing: border-box;<br \/>\n    display: flex;<br \/>\n    flex-direction: column;<br \/>\n    gap: 12px;<br \/>\n  }<\/p>\n<p>  .iiot-pillar-badge {<br \/>\n    font-size: 0.85rem;<br \/>\n    font-weight: 700;<br \/>\n    opacity: 0.6;<br \/>\n    color: inherit;<br \/>\n    letter-spacing: 0.5px;<br \/>\n  }<\/p>\n<p>  .iiot-pillar-body {<br \/>\n    display: flex;<br \/>\n    flex-direction: column;<br \/>\n    gap: 8px;<br \/>\n  }<\/p>\n<p>  .iiot-pillar-title {<br \/>\n    font-size: 1rem;<br \/>\n    font-weight: 600;<br \/>\n    color: inherit;<br \/>\n    line-height: 1.3;<br \/>\n  }<\/p>\n<p>  .iiot-pillar-desc {<br \/>\n    font-size: 0.88rem;<br \/>\n    line-height: 1.5;<br \/>\n    opacity: 0.85;<br \/>\n    color: inherit;<br \/>\n    margin: 0;<br \/>\n  }<\/p>\n<p>  \/* Footer Statement Banner *\/<br \/>\n  .iiot-statement-banner {<br \/>\n    background-color: rgba(13, 35, 58, 0.6);<br \/>\n    border: 1px solid rgba(255, 255, 255, 0.2);<br \/>\n    border-radius: 8px;<br \/>\n    padding: 16px 20px;<br \/>\n    text-align: center;<br \/>\n  }<\/p>\n<p>  .iiot-statement-text {<br \/>\n    font-size: 0.95rem;<br \/>\n    font-weight: 500;<br \/>\n    color: #ffffff;<br \/>\n    line-height: 1.5;<br \/>\n  }<\/p>\n<p>  \/* Responsive Behavior *\/<br \/>\n  @media (max-width: 900px) {<br \/>\n    .iiot-pillars-grid {<br \/>\n      grid-template-columns: 1fr;<br \/>\n    }<br \/>\n  }<br \/>\n<\/style><\/p><\/div>       \n       \t     <\/div>\n  <\/div>\n<\/div>\n<!-- end Content Box Sliding Effect -->\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-0f5ad59 e-con e-atomic-element e-flexbox-base e-fffc17b\" data-id=\"0f5ad59\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"0f5ad59\">\n    \t\t<div class=\"elementor-element elementor-element-d3b0824 elementor-widget elementor-widget-ucaddon_sliding_content_box\" data-id=\"d3b0824\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"ucaddon_sliding_content_box.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n<!-- start Content Box Sliding Effect -->\n<style>\/* widget: Content Box Sliding Effect *\/\n\n#uc_sliding_content_box_elementor_d3b0824 {\n\tbox-sizing: border-box;\n    overflow:hidden;\n}\n\n.ue-title\n{\n  font-size:21px;\n  width:100%;\n}\n\n.ue-text\n{\n  width:100%;\n}\n\n.ue-btn-wrapper\n{\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_d3b0824 .ue-content-box-inner\n{\n  display:flex;\n  position:relative;\n}\n\n#uc_sliding_content_box_elementor_d3b0824 .ue-overlay\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n}\n\n#uc_sliding_content_box_elementor_d3b0824 .ue-content-box-wrapper\n{\n  position:relative;\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_d3b0824 .ue-bg\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n  transition:0.5s;\n}\n\n#uc_sliding_content_box_elementor_d3b0824:hover .ue-bg\n{\n transform:scale(1.1,1.1);\n}\n\n\n#uc_sliding_content_box_elementor_d3b0824:hover .moveFromLeft\n{\n  animation: moveFromLeft 0.5s;\n}\n\n#uc_sliding_content_box_elementor_d3b0824:hover .moveFromRight\n{\n  animation: moveFromRight 0.5s;\n}\n\n#uc_sliding_content_box_elementor_d3b0824:hover .moveFromBottom\n{\n  animation: moveFromBottom 0.5s;\n}\n\n@-webkit-keyframes moveFromLeft {\n from {\n -webkit-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromLeft {\n from {\n -moz-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromLeft {\n from {\n -ms-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromRight {\n from {\n -webkit-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromRight {\n from {\n -moz-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromRight {\n from {\n -ms-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromBottom {\n from {\n -webkit-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromBottom {\n from {\n -moz-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromBottom {\n from {\n -ms-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateY(0%);\n opacity: 1;\n}\n}\n\n<\/style>\n\n<div class=\"ue-content-box\" id=\"uc_sliding_content_box_elementor_d3b0824\">\n  \n  <div class=\"ue-content-box-inner\">\n    <div class=\"ue-bg\"><\/div>\n    <div class=\"ue-overlay\"><\/div>\n    \n     <div class=\"ue-content-box-wrapper\">\n\t\t<div class=\"ue-title moveFromRight\">Les donn\u00e9es industrielles doivent \u00eatre structur\u00e9es<\/div>\t\n\t\t<div class=\"ue-text moveFromRight\"><div class=\"iiot-card-container\">\n  <!-- Header Bar -->\n  <div class=\"iiot-card-header\">\n    <div class=\"iiot-header-title\">\n      <h3>Fondement structur\u00e9 pour les donn\u00e9es industrielles<\/h3>\n    <\/div>\n  <\/div>\n\n  <!-- Content Area -->\n  <div class=\"iiot-card-content\">\n    <div class=\"iiot-content-inner\">\n      <p class=\"iiot-description\">\n        Les syst\u00e8mes industriels modernes g\u00e9n\u00e8rent des informations en continu. Les machines, les automates programmables (PLC), les syst\u00e8mes SCADA, les capteurs et les applications logicielles produisent d'importants volumes de donn\u00e9es op\u00e9rationnelles. Sans une architecture de donn\u00e9es correctement con\u00e7ue, ces informations deviennent difficiles \u00e0 g\u00e9rer, \u00e0 analyser et \u00e0 exploiter. GPLG con\u00e7oit des solutions de bases de donn\u00e9es qui offrent une base structur\u00e9e pour les applications industrielles.\n      <\/p>\n\n      <!-- Horizontal Data Flow Pipeline -->\n      <div class=\"iiot-flow-chain\">\n        \n        <!-- Step 1 -->\n        <div class=\"iiot-flow-node\">\n          <div class=\"iiot-node-box\">\n            <span class=\"iiot-node-step\">01<\/span>\n            Machines et capteurs\n          <\/div>\n        <\/div>\n\n        <div class=\"iiot-flow-arrow\">\u2192<\/div>\n\n        <!-- Step 2 -->\n        <div class=\"iiot-flow-node\">\n          <div class=\"iiot-node-box\">\n            <span class=\"iiot-node-step\">02<\/span>\n            Automate programmable \/ SCADA\n          <\/div>\n        <\/div>\n\n        <div class=\"iiot-flow-arrow\">\u2192<\/div>\n\n        <!-- Step 3 -->\n        <div class=\"iiot-flow-node\">\n          <div class=\"iiot-node-box\">\n            <span class=\"iiot-node-step\">03<\/span>\n            Logiciels industriels\n          <\/div>\n        <\/div>\n\n        <div class=\"iiot-flow-arrow\">\u2192<\/div>\n\n        <!-- Step 4 (Database Centerpiece) -->\n        <div class=\"iiot-flow-node iiot-highlight-node\">\n          <div class=\"iiot-node-box\">\n            <span class=\"iiot-node-step\">04<\/span>\n            BASE DE DONN\u00c9ES\n          <\/div>\n        <\/div>\n\n        <div class=\"iiot-flow-arrow\">\u2192<\/div>\n\n        <!-- Step 5 -->\n        <div class=\"iiot-flow-node\">\n          <div class=\"iiot-node-box\">\n            <span class=\"iiot-node-step\">05<\/span>\n            Rapports \/ Analyses \/ Applications\n          <\/div>\n        <\/div>\n\n      <\/div>\n\n      <!-- Strong Statement Banner -->\n      <div class=\"iiot-statement-banner\">\n        <div class=\"iiot-statement-text\">\n          Les donn\u00e9es industrielles prennent toute leur valeur lorsqu'elles sont structur\u00e9es, accessibles et disponibles au moment o\u00f9 on en a besoin.\n        <\/div>\n      <\/div>\n\n    <\/div>\n  <\/div>\n<\/div>\n\n<style>\n  \/* Full-Width Container Styling *\/\n  .iiot-card-container {\n    width: 100%;\n    max-width: 100%;\n    margin: 20px 0;\n    border: 1px solid rgba(255, 255, 255, 0.2);\n    border-radius: 10px;\n    background-color: transparent;\n    font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;\n    overflow: hidden;\n    box-sizing: border-box;\n  }\n\n  \/* Header Bar *\/\n  .iiot-card-header {\n    display: flex;\n    align-items: center;\n    padding: 18px 24px;\n    background-color: rgba(13, 35, 58, 0.85);\n    backdrop-filter: blur(5px);\n    color: #ffffff;\n  }\n\n  .iiot-header-title h3 {\n    margin: 0;\n    font-size: 1.15rem;\n    font-weight: 600;\n    color: #ffffff !important;\n  }\n\n  \/* Content Area *\/\n  .iiot-card-content {\n    background-color: transparent;\n  }\n\n  .iiot-content-inner {\n    padding: 24px;\n    border-top: 1px solid rgba(255, 255, 255, 0.1);\n  }\n\n  .iiot-description {\n    color: inherit;\n    opacity: 0.9;\n    line-height: 1.6;\n    margin-bottom: 28px;\n    font-size: 0.98rem;\n    text-align: center;\n  }\n\n  \/* Horizontal Data Flow Pipeline Structure *\/\n  .iiot-flow-chain {\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    gap: 8px;\n    margin-bottom: 28px;\n    overflow-x: auto;\n    padding: 10px 4px;\n  }\n\n  .iiot-flow-node {\n    flex: 1;\n    min-width: 120px;\n  }\n\n  .iiot-node-box {\n    background-color: rgba(255, 255, 255, 0.03);\n    border: 1px solid rgba(255, 255, 255, 0.15);\n    border-radius: 8px;\n    padding: 14px 10px;\n    text-align: center;\n    font-size: 0.88rem;\n    font-weight: 500;\n    color: inherit;\n    line-height: 1.3;\n    display: flex;\n    flex-direction: column;\n    align-items: center;\n    justify-content: center;\n    min-height: 56px;\n    box-sizing: border-box;\n  }\n\n  .iiot-node-step {\n    font-size: 0.72rem;\n    font-weight: 700;\n    opacity: 0.5;\n    margin-bottom: 4px;\n    letter-spacing: 0.5px;\n  }\n\n  \/* Highlighted Database Core Node *\/\n  .iiot-highlight-node .iiot-node-box {\n    background-color: rgba(255, 255, 255, 0.08);\n    border: 1px solid rgba(255, 255, 255, 0.4);\n    font-weight: 700;\n    box-shadow: 0 0 10px rgba(255, 255, 255, 0.05);\n  }\n\n  .iiot-highlight-node .iiot-node-step {\n    opacity: 0.85;\n  }\n\n  .iiot-flow-arrow {\n    font-size: 1rem;\n    opacity: 0.5;\n    color: inherit;\n    user-select: none;\n    flex-shrink: 0;\n  }\n\n  \/* Strong Statement Banner *\/\n  .iiot-statement-banner {\n    background-color: rgba(13, 35, 58, 0.6);\n    border: 1px solid rgba(255, 255, 255, 0.2);\n    border-radius: 8px;\n    padding: 18px 24px;\n    text-align: center;\n  }\n\n  .iiot-statement-text {\n    font-size: 1.02rem;\n    font-weight: 600;\n    color: #ffffff;\n    letter-spacing: 0.3px;\n    line-height: 1.4;\n  }\n\n  \/* Responsive Behavior *\/\n  @media (max-width: 900px) {\n    .iiot-flow-chain {\n      flex-direction: column;\n      gap: 10px;\n    }\n\n    .iiot-flow-node {\n      width: 100%;\n      max-width: 320px;\n    }\n\n    .iiot-flow-arrow {\n      transform: rotate(90deg);\n      margin: 2px 0;\n    }\n  }\n<\/style><\/div>       \n       \t     <\/div>\n  <\/div>\n<\/div>\n<!-- end Content Box Sliding Effect -->\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-55092b1 e-con e-atomic-element e-flexbox-base e-bbf00c4\" data-id=\"55092b1\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"55092b1\">\n    \t\t<div class=\"elementor-element elementor-element-0faedf6 elementor-widget elementor-widget-ucaddon_sliding_content_box\" data-id=\"0faedf6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"ucaddon_sliding_content_box.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n<!-- start Content Box Sliding Effect -->\n<style>\/* widget: Content Box Sliding Effect *\/\n\n#uc_sliding_content_box_elementor_0faedf6 {\n\tbox-sizing: border-box;\n    overflow:hidden;\n}\n\n.ue-title\n{\n  font-size:21px;\n  width:100%;\n}\n\n.ue-text\n{\n  width:100%;\n}\n\n.ue-btn-wrapper\n{\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_0faedf6 .ue-content-box-inner\n{\n  display:flex;\n  position:relative;\n}\n\n#uc_sliding_content_box_elementor_0faedf6 .ue-overlay\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n}\n\n#uc_sliding_content_box_elementor_0faedf6 .ue-content-box-wrapper\n{\n  position:relative;\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_0faedf6 .ue-bg\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n  transition:0.5s;\n}\n\n#uc_sliding_content_box_elementor_0faedf6:hover .ue-bg\n{\n transform:scale(1.1,1.1);\n}\n\n\n#uc_sliding_content_box_elementor_0faedf6:hover .moveFromLeft\n{\n  animation: moveFromLeft 0.5s;\n}\n\n#uc_sliding_content_box_elementor_0faedf6:hover .moveFromRight\n{\n  animation: moveFromRight 0.5s;\n}\n\n#uc_sliding_content_box_elementor_0faedf6:hover .moveFromBottom\n{\n  animation: moveFromBottom 0.5s;\n}\n\n@-webkit-keyframes moveFromLeft {\n from {\n -webkit-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromLeft {\n from {\n -moz-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromLeft {\n from {\n -ms-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromRight {\n from {\n -webkit-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromRight {\n from {\n -moz-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromRight {\n from {\n -ms-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromBottom {\n from {\n -webkit-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromBottom {\n from {\n -moz-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromBottom {\n from {\n -ms-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateY(0%);\n opacity: 1;\n}\n}\n\n<\/style>\n\n<div class=\"ue-content-box\" id=\"uc_sliding_content_box_elementor_0faedf6\">\n  \n  <div class=\"ue-content-box-inner\">\n    <div class=\"ue-bg\"><\/div>\n    <div class=\"ue-overlay\"><\/div>\n    \n     <div class=\"ue-content-box-wrapper\">\n\t\t<div class=\"ue-title moveFromLeft\">CE QUE NOUS CONSERVONS<\/div>\t\n\t\t<div class=\"ue-text moveFromLeft\"><div class=\"iiot-card-container\">\n  <!-- Header Bar -->\n  <div class=\"iiot-card-header\">\n    <div class=\"iiot-header-title\">\n      <h3>Informations sectorielles provenant de sources multiples<\/h3>\n    <\/div>\n  <\/div>\n\n  <!-- Content Area -->\n  <div class=\"iiot-card-content\">\n    <div class=\"iiot-content-inner\">\n      <p class=\"iiot-description\">\n        Les architectures de donn\u00e9es industrielles compl\u00e8tes unifient les flux de donn\u00e9es disparates au sein de l'usine, transformant les donn\u00e9es brutes de t\u00e9l\u00e9m\u00e9trie des machines et les \u00e9v\u00e9nements op\u00e9rationnels en informations structur\u00e9es et exploitables.\n      <\/p>\n\n      <!-- 6-Card Grid Layout -->\n      <div class=\"iiot-data-grid\">\n        \n        <!-- Card 1: Production Data -->\n        <div class=\"iiot-data-card\">\n          <div class=\"iiot-card-badge\">01<\/div>\n          <div class=\"iiot-card-body\">\n            <div class=\"iiot-card-title\">Donn\u00e9es de production<\/div>\n            <p class=\"iiot-card-desc\">\n              Quantit\u00e9s produites, lots, ordres de fabrication, production par \u00e9quipe et \u00e9v\u00e9nements de production en temps r\u00e9el.\n            <\/p>\n          <\/div>\n        <\/div>\n\n        <!-- Card 2: Machine Data -->\n        <div class=\"iiot-card-badge-container iiot-data-card\">\n          <div class=\"iiot-card-badge\">02<\/div>\n          <div class=\"iiot-card-body\">\n            <div class=\"iiot-card-title\">Donn\u00e9es machine<\/div>\n            <p class=\"iiot-card-desc\">\n              \u00c9tat de la machine, param\u00e8tres de fonctionnement, registres de l'automate programmable, \u00e9tat d'ex\u00e9cution et informations op\u00e9rationnelles.\n            <\/p>\n          <\/div>\n        <\/div>\n\n        <!-- Card 3: Process Data -->\n        <div class=\"iiot-data-card\">\n          <div class=\"iiot-card-badge\">03<\/div>\n          <div class=\"iiot-card-body\">\n            <div class=\"iiot-card-title\">Donn\u00e9es de processus<\/div>\n            <p class=\"iiot-card-desc\">\n              Temp\u00e9ratures, pressions, d\u00e9bits, mesures dimensionnelles et autres variables critiques du processus.\n            <\/p>\n          <\/div>\n        <\/div>\n\n        <!-- Card 4: Quality Data -->\n        <div class=\"iiot-data-card\">\n          <div class=\"iiot-card-badge\">04<\/div>\n          <div class=\"iiot-card-body\">\n            <div class=\"iiot-card-title\">Donn\u00e9es de qualit\u00e9<\/div>\n            <p class=\"iiot-card-desc\">\n              R\u00e9sultats d'inspection automatis\u00e9e, mesures de tol\u00e9rance, classifications des d\u00e9fauts et rapports de qualit\u00e9.\n            <\/p>\n          <\/div>\n        <\/div>\n\n        <!-- Card 5: Maintenance Data -->\n        <div class=\"iiot-data-card\">\n          <div class=\"iiot-card-badge\">05<\/div>\n          <div class=\"iiot-card-body\">\n            <div class=\"iiot-card-title\">Donn\u00e9es de maintenance<\/div>\n            <p class=\"iiot-card-desc\">\n              \u00c9v\u00e9nements d'alarme li\u00e9s aux \u00e9quipements, journaux d'exploitation, registres de maintenance et historique pertinent des machines.\n            <\/p>\n          <\/div>\n        <\/div>\n\n        <!-- Card 6: System Data -->\n        <div class=\"iiot-data-card\">\n          <div class=\"iiot-card-badge\">06<\/div>\n          <div class=\"iiot-card-body\">\n            <div class=\"iiot-card-title\">Donn\u00e9es syst\u00e8me<\/div>\n            <p class=\"iiot-card-desc\">\n              Informations g\u00e9n\u00e9r\u00e9es par des applications logicielles industrielles connect\u00e9es, des syst\u00e8mes MES et des passerelles de p\u00e9riph\u00e9rie.\n            <\/p>\n          <\/div>\n        <\/div>\n\n      <\/div>\n\n    <\/div>\n  <\/div>\n<\/div>\n\n<style>\n  \/* Full-Width Container Styling *\/\n  .iiot-card-container {\n    width: 100%;\n    max-width: 100%;\n    margin: 20px 0;\n    border: 1px solid rgba(255, 255, 255, 0.2);\n    border-radius: 10px;\n    background-color: transparent;\n    font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;\n    overflow: hidden;\n    box-sizing: border-box;\n  }\n\n  \/* Header Bar *\/\n  .iiot-card-header {\n    display: flex;\n    align-items: center;\n    padding: 18px 24px;\n    background-color: rgba(13, 35, 58, 0.85);\n    backdrop-filter: blur(5px);\n    color: #ffffff;\n  }\n\n  .iiot-header-title h3 {\n    margin: 0;\n    font-size: 1.15rem;\n    font-weight: 600;\n    color: #ffffff !important;\n  }\n\n  \/* Content Area *\/\n  .iiot-card-content {\n    background-color: transparent;\n  }\n\n  .iiot-content-inner {\n    padding: 24px;\n    border-top: 1px solid rgba(255, 255, 255, 0.1);\n  }\n\n  .iiot-description {\n    color: inherit;\n    opacity: 0.9;\n    line-height: 1.6;\n    margin-bottom: 24px;\n    font-size: 0.98rem;\n    text-align: center;\n  }\n\n  \/* 6-Card Grid Layout (3x2 Desktop, 2x3 Tablet, 1x6 Mobile) *\/\n  .iiot-data-grid {\n    display: grid;\n    grid-template-columns: repeat(3, 1fr);\n    gap: 16px;\n  }\n\n  .iiot-data-card {\n    background-color: rgba(255, 255, 255, 0.03);\n    border: 1px solid rgba(255, 255, 255, 0.15);\n    border-radius: 8px;\n    padding: 20px;\n    box-sizing: border-box;\n    display: flex;\n    flex-direction: column;\n    gap: 12px;\n  }\n\n  .iiot-card-badge {\n    font-size: 0.85rem;\n    font-weight: 700;\n    opacity: 0.6;\n    color: inherit;\n    letter-spacing: 0.5px;\n  }\n\n  .iiot-card-body {\n    display: flex;\n    flex-direction: column;\n    gap: 8px;\n  }\n\n  .iiot-card-title {\n    font-size: 1rem;\n    font-weight: 600;\n    color: inherit;\n    line-height: 1.3;\n  }\n\n  .iiot-card-desc {\n    font-size: 0.88rem;\n    line-height: 1.5;\n    opacity: 0.85;\n    color: inherit;\n    margin: 0;\n  }\n\n  \/* Responsive Behavior *\/\n  @media (max-width: 900px) {\n    .iiot-data-grid {\n      grid-template-columns: repeat(2, 1fr);\n    }\n  }\n\n  @media (max-width: 600px) {\n    .iiot-data-grid {\n      grid-template-columns: 1fr;\n    }\n  }\n<\/style><\/div>       \n       \t     <\/div>\n  <\/div>\n<\/div>\n<!-- end Content Box Sliding Effect -->\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-01951d2 e-con e-atomic-element e-flexbox-base e-29ef835\" data-id=\"01951d2\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"01951d2\">\n    \t\t<div class=\"elementor-element elementor-element-999c199 elementor-widget elementor-widget-ucaddon_sliding_content_box\" data-id=\"999c199\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"ucaddon_sliding_content_box.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n<!-- start Content Box Sliding Effect -->\n<style>\/* widget: Content Box Sliding Effect *\/\n\n#uc_sliding_content_box_elementor_999c199 {\n\tbox-sizing: border-box;\n    overflow:hidden;\n}\n\n.ue-title\n{\n  font-size:21px;\n  width:100%;\n}\n\n.ue-text\n{\n  width:100%;\n}\n\n.ue-btn-wrapper\n{\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_999c199 .ue-content-box-inner\n{\n  display:flex;\n  position:relative;\n}\n\n#uc_sliding_content_box_elementor_999c199 .ue-overlay\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n}\n\n#uc_sliding_content_box_elementor_999c199 .ue-content-box-wrapper\n{\n  position:relative;\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_999c199 .ue-bg\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n  transition:0.5s;\n}\n\n#uc_sliding_content_box_elementor_999c199:hover .ue-bg\n{\n transform:scale(1.1,1.1);\n}\n\n\n#uc_sliding_content_box_elementor_999c199:hover .moveFromLeft\n{\n  animation: moveFromLeft 0.5s;\n}\n\n#uc_sliding_content_box_elementor_999c199:hover .moveFromRight\n{\n  animation: moveFromRight 0.5s;\n}\n\n#uc_sliding_content_box_elementor_999c199:hover .moveFromBottom\n{\n  animation: moveFromBottom 0.5s;\n}\n\n@-webkit-keyframes moveFromLeft {\n from {\n -webkit-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromLeft {\n from {\n -moz-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromLeft {\n from {\n -ms-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromRight {\n from {\n -webkit-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromRight {\n from {\n -moz-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromRight {\n from {\n -ms-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromBottom {\n from {\n -webkit-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromBottom {\n from {\n -moz-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromBottom {\n from {\n -ms-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateY(0%);\n opacity: 1;\n}\n}\n\n<\/style>\n\n<div class=\"ue-content-box\" id=\"uc_sliding_content_box_elementor_999c199\">\n  \n  <div class=\"ue-content-box-inner\">\n    <div class=\"ue-bg\"><\/div>\n    <div class=\"ue-overlay\"><\/div>\n    \n     <div class=\"ue-content-box-wrapper\">\n\t\t<div class=\"ue-title moveFromRight\">ARCHITECTURE DE BASE DE DONN\u00c9ES<\/div>\t\n\t\t<div class=\"ue-text moveFromRight\"><div class=\"iiot-card-container\">\n  <!-- Header Bar -->\n  <div class=\"iiot-card-header\">\n    <div class=\"iiot-header-title\">\n      <h3>Conception de la couche de donn\u00e9es<\/h3>\n    <\/div>\n  <\/div>\n\n  <!-- Content Area -->\n  <div class=\"iiot-card-content\">\n    <div class=\"iiot-content-inner\">\n      <p class=\"iiot-description\">\n        Une base de donn\u00e9es ne doit pas \u00eatre consid\u00e9r\u00e9e comme un \u00e9l\u00e9ment isol\u00e9 : elle doit s'int\u00e9grer de mani\u00e8re transparente dans l'architecture industrielle globale. GPLG con\u00e7oit la couche de base de donn\u00e9es en fonction des syst\u00e8mes sp\u00e9cifiques qui g\u00e9n\u00e8rent et exploitent les informations op\u00e9rationnelles.\n      <\/p>\n\n      <!-- Architecture Level Diagram -->\n      <div class=\"iiot-arch-diagram\">\n        \n        <!-- Level 1: Data Generators -->\n        <div class=\"iiot-arch-level\">\n          <div class=\"iiot-level-label\">G\u00c9N\u00c9RATEURS DE DONN\u00c9ES<\/div>\n          <div class=\"iiot-level-nodes\">\n            <div class=\"iiot-arch-node\">Machines<\/div>\n            <div class=\"iiot-arch-node\">automates programmables<\/div>\n            <div class=\"iiot-arch-node\">SCADA<\/div>\n            <div class=\"iiot-arch-node\">Vision<\/div>\n          <\/div>\n        <\/div>\n\n        <div class=\"iiot-arch-connector\">\u2193<\/div>\n\n        <!-- Level 2: Software & Services Layer -->\n        <div class=\"iiot-arch-level\">\n          <div class=\"iiot-level-label\">INT\u00c9GRATION ET SERVICES<\/div>\n          <div class=\"iiot-level-nodes\">\n            <div class=\"iiot-arch-node iiot-subnode\">Logiciels industriels<\/div>\n            <div class=\"iiot-arch-node iiot-subnode\">Services de donn\u00e9es<\/div>\n          <\/div>\n        <\/div>\n\n        <div class=\"iiot-arch-connector\">\u2193<\/div>\n\n        <!-- Level 3: Database Core -->\n        <div class=\"iiot-arch-level\">\n          <div class=\"iiot-level-label\">M\u00c9MOIRE CENTRALE<\/div>\n          <div class=\"iiot-level-nodes\">\n            <div class=\"iiot-arch-node iiot-highlight-db\">BASE DE DONN\u00c9ES<\/div>\n          <\/div>\n        <\/div>\n\n        <div class=\"iiot-arch-connector\">\u2193<\/div>\n\n        <!-- Level 4: Data Consumers -->\n        <div class=\"iiot-arch-level\">\n          <div class=\"iiot-level-label\">UTILISATEURS DE DONN\u00c9ES<\/div>\n          <div class=\"iiot-level-nodes\">\n            <div class=\"iiot-arch-node\">Rapports<\/div>\n            <div class=\"iiot-arch-node\">Analyse de donn\u00e9es<\/div>\n            <div class=\"iiot-arch-node\">IA et apprentissage automatique<\/div>\n          <\/div>\n        <\/div>\n\n      <\/div>\n\n      <!-- Footer Statement Banner -->\n      <div class=\"iiot-statement-banner\">\n        <div class=\"iiot-statement-text\">\n          Nous concevons des syst\u00e8mes de bases de donn\u00e9es ax\u00e9s sur la tra\u00e7abilit\u00e9 des donn\u00e9es, garantissant ainsi une collecte fiable, un stockage \u00e0 haut d\u00e9bit et un acc\u00e8s fluide pour les applications en p\u00e9riph\u00e9rie et d'entreprise.\n        <\/div>\n      <\/div>\n\n    <\/div>\n  <\/div>\n<\/div>\n\n<style>\n  \/* Full-Width Container Styling *\/\n  .iiot-card-container {\n    width: 100%;\n    max-width: 100%;\n    margin: 20px 0;\n    border: 1px solid rgba(255, 255, 255, 0.2);\n    border-radius: 10px;\n    background-color: transparent;\n    font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;\n    overflow: hidden;\n    box-sizing: border-box;\n  }\n\n  \/* Header Bar *\/\n  .iiot-card-header {\n    display: flex;\n    align-items: center;\n    padding: 18px 24px;\n    background-color: rgba(13, 35, 58, 0.85);\n    backdrop-filter: blur(5px);\n    color: #ffffff;\n  }\n\n  .iiot-header-title h3 {\n    margin: 0;\n    font-size: 1.15rem;\n    font-weight: 600;\n    color: #ffffff !important;\n  }\n\n  \/* Content Area *\/\n  .iiot-card-content {\n    background-color: transparent;\n  }\n\n  .iiot-content-inner {\n    padding: 24px;\n    border-top: 1px solid rgba(255, 255, 255, 0.1);\n  }\n\n  .iiot-description {\n    color: inherit;\n    opacity: 0.9;\n    line-height: 1.6;\n    margin-bottom: 28px;\n    font-size: 0.98rem;\n    text-align: center;\n  }\n\n  \/* Architectural Flow Layout *\/\n  .iiot-arch-diagram {\n    display: flex;\n    flex-direction: column;\n    align-items: center;\n    gap: 12px;\n    margin-bottom: 28px;\n  }\n\n  .iiot-arch-level {\n    width: 100%;\n    max-width: 720px;\n    background-color: rgba(255, 255, 255, 0.02);\n    border: 1px solid rgba(255, 255, 255, 0.12);\n    border-radius: 8px;\n    padding: 14px 18px;\n    box-sizing: border-box;\n    display: flex;\n    flex-direction: column;\n    align-items: center;\n    gap: 10px;\n  }\n\n  .iiot-level-label {\n    font-size: 0.72rem;\n    font-weight: 700;\n    letter-spacing: 1.2px;\n    opacity: 0.55;\n    text-transform: uppercase;\n    color: inherit;\n  }\n\n  .iiot-level-nodes {\n    display: flex;\n    flex-wrap: wrap;\n    justify-content: center;\n    gap: 12px;\n    width: 100%;\n  }\n\n  .iiot-arch-node {\n    background-color: rgba(255, 255, 255, 0.04);\n    border: 1px solid rgba(255, 255, 255, 0.2);\n    border-radius: 6px;\n    padding: 10px 18px;\n    font-size: 0.9rem;\n    font-weight: 500;\n    color: inherit;\n    text-align: center;\n    flex: 1;\n    min-width: 120px;\n    max-width: 180px;\n    box-sizing: border-box;\n  }\n\n  .iiot-subnode {\n    max-width: 220px;\n  }\n\n  \/* Database Core Highlight Node *\/\n  .iiot-highlight-db {\n    background-color: rgba(255, 255, 255, 0.08);\n    border: 1px solid rgba(255, 255, 255, 0.45);\n    font-weight: 700;\n    font-size: 1rem;\n    letter-spacing: 0.5px;\n    max-width: 280px;\n    box-shadow: 0 0 12px rgba(255, 255, 255, 0.06);\n  }\n\n  .iiot-arch-connector {\n    font-size: 1.1rem;\n    opacity: 0.45;\n    color: inherit;\n    user-select: none;\n    line-height: 1;\n  }\n\n  \/* Statement Banner *\/\n  .iiot-statement-banner {\n    background-color: rgba(13, 35, 58, 0.6);\n    border: 1px solid rgba(255, 255, 255, 0.2);\n    border-radius: 8px;\n    padding: 18px 24px;\n    text-align: center;\n  }\n\n  .iiot-statement-text {\n    font-size: 0.98rem;\n    font-weight: 500;\n    color: #ffffff;\n    line-height: 1.5;\n  }\n\n  \/* Mobile Adjustments *\/\n  @media (max-width: 600px) {\n    .iiot-arch-node {\n      min-width: 100%;\n    }\n  }\n<\/style><\/div>       \n       \t     <\/div>\n  <\/div>\n<\/div>\n<!-- end Content Box Sliding Effect -->\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-8272e6e e-con e-atomic-element e-flexbox-base e-86d04d2\" data-id=\"8272e6e\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"8272e6e\">\n    \t\t<div class=\"elementor-element elementor-element-245b20d elementor-widget elementor-widget-ucaddon_sliding_content_box\" data-id=\"245b20d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"ucaddon_sliding_content_box.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n<!-- start Content Box Sliding Effect -->\n<style>\/* widget: Content Box Sliding Effect *\/\n\n#uc_sliding_content_box_elementor_245b20d {\n\tbox-sizing: border-box;\n    overflow:hidden;\n}\n\n.ue-title\n{\n  font-size:21px;\n  width:100%;\n}\n\n.ue-text\n{\n  width:100%;\n}\n\n.ue-btn-wrapper\n{\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_245b20d .ue-content-box-inner\n{\n  display:flex;\n  position:relative;\n}\n\n#uc_sliding_content_box_elementor_245b20d .ue-overlay\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n}\n\n#uc_sliding_content_box_elementor_245b20d .ue-content-box-wrapper\n{\n  position:relative;\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_245b20d .ue-bg\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n  transition:0.5s;\n}\n\n#uc_sliding_content_box_elementor_245b20d:hover .ue-bg\n{\n transform:scale(1.1,1.1);\n}\n\n\n#uc_sliding_content_box_elementor_245b20d:hover .moveFromLeft\n{\n  animation: moveFromLeft 0.5s;\n}\n\n#uc_sliding_content_box_elementor_245b20d:hover .moveFromRight\n{\n  animation: moveFromRight 0.5s;\n}\n\n#uc_sliding_content_box_elementor_245b20d:hover .moveFromBottom\n{\n  animation: moveFromBottom 0.5s;\n}\n\n@-webkit-keyframes moveFromLeft {\n from {\n -webkit-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromLeft {\n from {\n -moz-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromLeft {\n from {\n -ms-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromRight {\n from {\n -webkit-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromRight {\n from {\n -moz-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromRight {\n from {\n -ms-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromBottom {\n from {\n -webkit-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromBottom {\n from {\n -moz-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromBottom {\n from {\n -ms-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateY(0%);\n opacity: 1;\n}\n}\n\n<\/style>\n\n<div class=\"ue-content-box\" id=\"uc_sliding_content_box_elementor_245b20d\">\n  \n  <div class=\"ue-content-box-inner\">\n    <div class=\"ue-bg\"><\/div>\n    <div class=\"ue-overlay\"><\/div>\n    \n     <div class=\"ue-content-box-wrapper\">\n\t\t<div class=\"ue-title moveFromLeft\">CONCEPTION DE BASES DE DONN\u00c9ES<\/div>\t\n\t\t<div class=\"ue-text moveFromLeft\"><div class=\"iiot-card-container\">\n<!-- Header Bar -->\n<div class=\"iiot-card-header\">\n<div class=\"iiot-header-title\">\n<h3>Mettre en place la structure de donn\u00e9es adapt\u00e9e<\/h3>\n<\/div>\n<\/div>\n<!-- Content Area -->\n<div class=\"iiot-card-content\">\n<div class=\"iiot-content-inner\">\n<p class=\"iiot-description\">Une base de donn\u00e9es fiable repose avant tout sur une architecture solide. GPLG con\u00e7oit des structures de donn\u00e9es pens\u00e9es pour garantir la stabilit\u00e9, la rapidit\u00e9 des requ\u00eates et l'int\u00e9grit\u00e9 structurelle \u00e0 mesure que votre activit\u00e9 industrielle se d\u00e9veloppe.<\/p>\n<!-- Architectural Pillars Grid -->\n<div class=\"iiot-arch-grid\">\n\n<!-- Column 1: Core Schema & Modeling -->\n<div class=\"iiot-grid-column\">\n<div class=\"iiot-column-header\"><span class=\"iiot-column-badge\">01<\/span>\n<span class=\"iiot-column-title\">Sch\u00e9ma et conception relationnelle<\/span><\/div>\n<ul class=\"iiot-pillar-list\">\n \t<li><strong>Relations entre les donn\u00e9es<\/strong>\nEntit\u00e9s normalis\u00e9es repr\u00e9sentant les relations physiques et logiques du monde r\u00e9el.<\/li>\n \t<li><strong>Tables et entit\u00e9s<\/strong>\nS\u00e9paration claire des domaines pour les \u00e9quipements, les ordres de travail, les lots et les utilisateurs.<\/li>\n \t<li><strong>Types de donn\u00e9es<\/strong>\nAllocation de types stricte pour une grande pr\u00e9cision et une empreinte m\u00e9moire minimale.<\/li>\n<\/ul>\n<\/div>\n<!-- Column 2: Data Lifecycle & Retention -->\n<div class=\"iiot-grid-column\">\n<div class=\"iiot-column-header\"><span class=\"iiot-column-badge\">02<\/span>\n<span class=\"iiot-column-title\">Strat\u00e9gie relative au cycle de vie et \u00e0 l'historique<\/span><\/div>\n<ul class=\"iiot-pillar-list\">\n \t<li><strong>Archives historiques<\/strong>\nPartitions optimis\u00e9es de s\u00e9ries chronologiques pour la t\u00e9l\u00e9m\u00e9trie \u00e0 long terme et les journaux d'\u00e9v\u00e9nements.<\/li>\n \t<li><strong>Conservation des donn\u00e9es<\/strong>\nPolitiques automatis\u00e9es d'archivage et de purge pour g\u00e9rer la croissance du stockage.<\/li>\n \t<li><strong>Indexation<\/strong>\nStrat\u00e9gies d'indexation sur mesure pour des recherches instantan\u00e9es dans des flux industriels \u00e0 forte intensit\u00e9 d'\u00e9criture.<\/li>\n<\/ul>\n<\/div>\n<!-- Column 3: Performance & Scalability -->\n<div class=\"iiot-grid-column\">\n<div class=\"iiot-column-header\"><span class=\"iiot-column-badge\">03<\/span>\n<span class=\"iiot-column-title\">Performance et ex\u00e9cution<\/span><\/div>\n<ul class=\"iiot-pillar-list\">\n \t<li><strong>Exigences relatives aux requ\u00eates<\/strong>\nVues pr\u00e9calcul\u00e9es et plans d'ex\u00e9cution optimis\u00e9s pour une r\u00e9cup\u00e9ration \u00e0 faible latence.<\/li>\n \t<li><strong>Conditions de candidature<\/strong>\nAlignement direct sur les besoins en mati\u00e8re de SCADA, de MES, d'API Web et de middleware de p\u00e9riph\u00e9rie.<\/li>\n \t<li><strong>Performances et \u00e9volutivit\u00e9<\/strong>\nDes structures \u00e0 haute concurrence con\u00e7ues pour supporter une charge industrielle croissante.<\/li>\n<\/ul>\n<\/div>\n<\/div>\n<!-- Footer Statement Banner -->\n<div class=\"iiot-statement-banner\">\n<div class=\"iiot-statement-text\">L'objectif est de mettre en place une structure qui reste utilisable, \u00e9volutive et facile \u00e0 maintenir \u00e0 mesure que le syst\u00e8me industriel se d\u00e9veloppe.<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<style>\n  \/* Full-Width Container Styling *\/<br \/>\n  .iiot-card-container {<br \/>\n    width: 100%;<br \/>\n    max-width: 100%;<br \/>\n    margin: 20px 0;<br \/>\n    border: 1px solid rgba(255, 255, 255, 0.2);<br \/>\n    border-radius: 10px;<br \/>\n    background-color: transparent;<br \/>\n    font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;<br \/>\n    overflow: hidden;<br \/>\n    box-sizing: border-box;<br \/>\n  }<\/p>\n<p>  \/* Header Bar *\/<br \/>\n  .iiot-card-header {<br \/>\n    display: flex;<br \/>\n    align-items: center;<br \/>\n    padding: 18px 24px;<br \/>\n    background-color: rgba(13, 35, 58, 0.85);<br \/>\n    backdrop-filter: blur(5px);<br \/>\n    color: #ffffff;<br \/>\n  }<\/p>\n<p>  .iiot-header-title h3 {<br \/>\n    margin: 0;<br \/>\n    font-size: 1.15rem;<br \/>\n    font-weight: 600;<br \/>\n    color: #ffffff !important;<br \/>\n  }<\/p>\n<p>  \/* Content Area *\/<br \/>\n  .iiot-card-content {<br \/>\n    background-color: transparent;<br \/>\n  }<\/p>\n<p>  .iiot-content-inner {<br \/>\n    padding: 24px;<br \/>\n    border-top: 1px solid rgba(255, 255, 255, 0.1);<br \/>\n  }<\/p>\n<p>  .iiot-description {<br \/>\n    color: inherit;<br \/>\n    opacity: 0.9;<br \/>\n    line-height: 1.6;<br \/>\n    margin-bottom: 28px;<br \/>\n    font-size: 0.98rem;<br \/>\n    text-align: center;<br \/>\n  }<\/p>\n<p>  \/* 3-Column Grid for Architecture Aspects *\/<br \/>\n  .iiot-arch-grid {<br \/>\n    display: grid;<br \/>\n    grid-template-columns: repeat(3, 1fr);<br \/>\n    gap: 16px;<br \/>\n    margin-bottom: 28px;<br \/>\n  }<\/p>\n<p>  .iiot-grid-column {<br \/>\n    background-color: rgba(255, 255, 255, 0.03);<br \/>\n    border: 1px solid rgba(255, 255, 255, 0.15);<br \/>\n    border-radius: 8px;<br \/>\n    padding: 20px;<br \/>\n    box-sizing: border-box;<br \/>\n    display: flex;<br \/>\n    flex-direction: column;<br \/>\n    gap: 16px;<br \/>\n  }<\/p>\n<p>  .iiot-column-header {<br \/>\n    display: flex;<br \/>\n    align-items: center;<br \/>\n    gap: 10px;<br \/>\n    border-bottom: 1px solid rgba(255, 255, 255, 0.1);<br \/>\n    padding-bottom: 12px;<br \/>\n  }<\/p>\n<p>  .iiot-column-badge {<br \/>\n    font-size: 0.78rem;<br \/>\n    font-weight: 700;<br \/>\n    opacity: 0.6;<br \/>\n    color: inherit;<br \/>\n    letter-spacing: 0.5px;<br \/>\n  }<\/p>\n<p>  .iiot-column-title {<br \/>\n    font-size: 0.95rem;<br \/>\n    font-weight: 600;<br \/>\n    color: inherit;<br \/>\n    line-height: 1.3;<br \/>\n  }<\/p>\n<p>  \/* Pillar Bullet Item Styling *\/<br \/>\n  .iiot-pillar-list {<br \/>\n    list-style: none;<br \/>\n    padding: 0;<br \/>\n    margin: 0;<br \/>\n    display: flex;<br \/>\n    flex-direction: column;<br \/>\n    gap: 14px;<br \/>\n  }<\/p>\n<p>  .iiot-pillar-list li {<br \/>\n    display: flex;<br \/>\n    flex-direction: column;<br \/>\n    gap: 4px;<br \/>\n    font-size: 0.88rem;<br \/>\n  }<\/p>\n<p>  .iiot-pillar-list strong {<br \/>\n    color: inherit;<br \/>\n    font-weight: 600;<br \/>\n    font-size: 0.9rem;<br \/>\n  }<\/p>\n<p>  .iiot-pillar-list span {<br \/>\n    opacity: 0.8;<br \/>\n    line-height: 1.4;<br \/>\n    font-size: 0.84rem;<br \/>\n  }<\/p>\n<p>  \/* Footer Statement Banner *\/<br \/>\n  .iiot-statement-banner {<br \/>\n    background-color: rgba(13, 35, 58, 0.6);<br \/>\n    border: 1px solid rgba(255, 255, 255, 0.2);<br \/>\n    border-radius: 8px;<br \/>\n    padding: 18px 24px;<br \/>\n    text-align: center;<br \/>\n  }<\/p>\n<p>  .iiot-statement-text {<br \/>\n    font-size: 1.02rem;<br \/>\n    font-weight: 600;<br \/>\n    color: #ffffff;<br \/>\n    letter-spacing: 0.3px;<br \/>\n    line-height: 1.4;<br \/>\n  }<\/p>\n<p>  \/* Responsive Behavior *\/<br \/>\n  @media (max-width: 900px) {<br \/>\n    .iiot-arch-grid {<br \/>\n      grid-template-columns: 1fr;<br \/>\n    }<br \/>\n  }<br \/>\n<\/style><\/div>       \n       \t     <\/div>\n  <\/div>\n<\/div>\n<!-- end Content Box Sliding Effect -->\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-21a835b e-con e-atomic-element e-flexbox-base e-b3a0556\" data-id=\"21a835b\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"21a835b\">\n    \t\t<div class=\"elementor-element elementor-element-6df57be elementor-widget elementor-widget-ucaddon_sliding_content_box\" data-id=\"6df57be\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"ucaddon_sliding_content_box.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n<!-- start Content Box Sliding Effect -->\n<style>\/* widget: Content Box Sliding Effect *\/\n\n#uc_sliding_content_box_elementor_6df57be {\n\tbox-sizing: border-box;\n    overflow:hidden;\n}\n\n.ue-title\n{\n  font-size:21px;\n  width:100%;\n}\n\n.ue-text\n{\n  width:100%;\n}\n\n.ue-btn-wrapper\n{\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_6df57be .ue-content-box-inner\n{\n  display:flex;\n  position:relative;\n}\n\n#uc_sliding_content_box_elementor_6df57be .ue-overlay\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n}\n\n#uc_sliding_content_box_elementor_6df57be .ue-content-box-wrapper\n{\n  position:relative;\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_6df57be .ue-bg\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n  transition:0.5s;\n}\n\n#uc_sliding_content_box_elementor_6df57be:hover .ue-bg\n{\n transform:scale(1.1,1.1);\n}\n\n\n#uc_sliding_content_box_elementor_6df57be:hover .moveFromLeft\n{\n  animation: moveFromLeft 0.5s;\n}\n\n#uc_sliding_content_box_elementor_6df57be:hover .moveFromRight\n{\n  animation: moveFromRight 0.5s;\n}\n\n#uc_sliding_content_box_elementor_6df57be:hover .moveFromBottom\n{\n  animation: moveFromBottom 0.5s;\n}\n\n@-webkit-keyframes moveFromLeft {\n from {\n -webkit-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromLeft {\n from {\n -moz-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromLeft {\n from {\n -ms-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromRight {\n from {\n -webkit-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromRight {\n from {\n -moz-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromRight {\n from {\n -ms-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromBottom {\n from {\n -webkit-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromBottom {\n from {\n -moz-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromBottom {\n from {\n -ms-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateY(0%);\n opacity: 1;\n}\n}\n\n<\/style>\n\n<div class=\"ue-content-box\" id=\"uc_sliding_content_box_elementor_6df57be\">\n  \n  <div class=\"ue-content-box-inner\">\n    <div class=\"ue-bg\"><\/div>\n    <div class=\"ue-overlay\"><\/div>\n    \n     <div class=\"ue-content-box-wrapper\">\n\t\t<div class=\"ue-title moveFromRight\">Bases de donn\u00e9es SQL<\/div>\t\n\t\t<div class=\"ue-text moveFromRight\"><div class=\"iiot-card-container\">\n  <!-- Header Bar -->\n  <div class=\"iiot-card-header\">\n    <div class=\"iiot-header-title\">\n      <h3>Solutions de gestion des donn\u00e9es industrielles bas\u00e9es sur SQL<\/h3>\n    <\/div>\n  <\/div>\n\n  <!-- Content Area -->\n  <div class=\"iiot-card-content\">\n    <div class=\"iiot-content-inner\">\n      <p class=\"iiot-description\">\n        GPLG s'appuie sur des technologies de bases de donn\u00e9es relationnelles \u00e9prouv\u00e9es pour mettre en place des architectures de donn\u00e9es structur\u00e9es, fiables et hautement performantes destin\u00e9es aux environnements industriels.\n      <\/p>\n\n      <!-- 3 Tech Stack Cards Grid -->\n      <div class=\"iiot-tech-grid\">\n        \n        <!-- Microsoft SQL Server -->\n        <div class=\"iiot-tech-card\">\n          <div class=\"iiot-tech-header\">\n            <span class=\"iiot-tech-name\">Microsoft SQL Server<\/span>\n          <\/div>\n          <p class=\"iiot-tech-desc\">\n            Id\u00e9al pour les environnements logiciels d'entreprise et industriels n\u00e9cessitant une gestion structur\u00e9e des donn\u00e9es relationnelles et une int\u00e9gration pouss\u00e9e \u00e0 l'\u00e9cosyst\u00e8me Windows.\n          <\/p>\n        <\/div>\n\n        <!-- MySQL -->\n        <div class=\"iiot-tech-card\">\n          <div class=\"iiot-tech-header\">\n            <span class=\"iiot-tech-name\">MySQL<\/span>\n          <\/div>\n          <p class=\"iiot-tech-desc\">\n            Une technologie de base de donn\u00e9es relationnelle largement utilis\u00e9e, adapt\u00e9e aux d\u00e9ploiements \u00ab edge \u00bb l\u00e9gers, aux portails Web et aux environnements d'applications industrielles.\n          <\/p>\n        <\/div>\n\n        <!-- PostgreSQL -->\n        <div class=\"iiot-tech-card\">\n          <div class=\"iiot-tech-header\">\n            <span class=\"iiot-tech-name\">PostgreSQL<\/span>\n          <\/div>\n          <p class=\"iiot-tech-desc\">\n            Un moteur open source puissant destin\u00e9 aux architectures complexes n\u00e9cessitant des requ\u00eates avanc\u00e9es, une forte concurrence et des types de donn\u00e9es extensibles.\n          <\/p>\n        <\/div>\n\n      <\/div>\n\n    <\/div>\n  <\/div>\n<\/div>\n\n<style>\n  \/* Container Base *\/\n  .iiot-card-container {\n    width: 100%;\n    max-width: 100%;\n    margin: 20px 0;\n    border: 1px solid rgba(255, 255, 255, 0.2);\n    border-radius: 10px;\n    background-color: transparent;\n    font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;\n    overflow: hidden;\n    box-sizing: border-box;\n  }\n\n  \/* Header *\/\n  .iiot-card-header {\n    padding: 16px 24px;\n    background-color: rgba(13, 35, 58, 0.85);\n    backdrop-filter: blur(5px);\n  }\n\n  .iiot-header-title h3 {\n    margin: 0;\n    font-size: 1.1rem;\n    font-weight: 600;\n    color: #ffffff !important;\n  }\n\n  \/* Content *\/\n  .iiot-content-inner {\n    padding: 20px 24px;\n    border-top: 1px solid rgba(255, 255, 255, 0.1);\n  }\n\n  .iiot-description {\n    opacity: 0.9;\n    line-height: 1.5;\n    margin-bottom: 20px;\n    font-size: 0.95rem;\n    text-align: center;\n  }\n\n  \/* 3-Column Grid *\/\n  .iiot-tech-grid {\n    display: grid;\n    grid-template-columns: repeat(3, 1fr);\n    gap: 14px;\n  }\n\n  .iiot-tech-card {\n    background-color: rgba(255, 255, 255, 0.03);\n    border: 1px solid rgba(255, 255, 255, 0.15);\n    border-radius: 8px;\n    padding: 16px;\n    box-sizing: border-box;\n    display: flex;\n    flex-direction: column;\n    gap: 8px;\n  }\n\n  .iiot-tech-header {\n    border-bottom: 1px solid rgba(255, 255, 255, 0.1);\n    padding-bottom: 8px;\n  }\n\n  .iiot-tech-name {\n    font-size: 0.95rem;\n    font-weight: 600;\n    color: inherit;\n  }\n\n  .iiot-tech-desc {\n    font-size: 0.85rem;\n    line-height: 1.4;\n    opacity: 0.85;\n    margin: 0;\n  }\n\n  \/* Responsive Layout *\/\n  @media (max-width: 800px) {\n    .iiot-tech-grid {\n      grid-template-columns: 1fr;\n    }\n  }\n<\/style><\/div>       \n       \t     <\/div>\n  <\/div>\n<\/div>\n<!-- end Content Box Sliding Effect -->\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-34a27b5 e-con e-atomic-element e-flexbox-base e-b0232c5\" data-id=\"34a27b5\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"34a27b5\">\n    \t\t<div class=\"elementor-element elementor-element-8be4cc1 elementor-widget elementor-widget-ucaddon_sliding_content_box\" data-id=\"8be4cc1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"ucaddon_sliding_content_box.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n<!-- start Content Box Sliding Effect -->\n<style>\/* widget: Content Box Sliding Effect *\/\n\n#uc_sliding_content_box_elementor_8be4cc1 {\n\tbox-sizing: border-box;\n    overflow:hidden;\n}\n\n.ue-title\n{\n  font-size:21px;\n  width:100%;\n}\n\n.ue-text\n{\n  width:100%;\n}\n\n.ue-btn-wrapper\n{\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_8be4cc1 .ue-content-box-inner\n{\n  display:flex;\n  position:relative;\n}\n\n#uc_sliding_content_box_elementor_8be4cc1 .ue-overlay\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n}\n\n#uc_sliding_content_box_elementor_8be4cc1 .ue-content-box-wrapper\n{\n  position:relative;\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_8be4cc1 .ue-bg\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n  transition:0.5s;\n}\n\n#uc_sliding_content_box_elementor_8be4cc1:hover .ue-bg\n{\n transform:scale(1.1,1.1);\n}\n\n\n#uc_sliding_content_box_elementor_8be4cc1:hover .moveFromLeft\n{\n  animation: moveFromLeft 0.5s;\n}\n\n#uc_sliding_content_box_elementor_8be4cc1:hover .moveFromRight\n{\n  animation: moveFromRight 0.5s;\n}\n\n#uc_sliding_content_box_elementor_8be4cc1:hover .moveFromBottom\n{\n  animation: moveFromBottom 0.5s;\n}\n\n@-webkit-keyframes moveFromLeft {\n from {\n -webkit-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromLeft {\n from {\n -moz-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromLeft {\n from {\n -ms-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromRight {\n from {\n -webkit-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromRight {\n from {\n -moz-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromRight {\n from {\n -ms-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromBottom {\n from {\n -webkit-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromBottom {\n from {\n -moz-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromBottom {\n from {\n -ms-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateY(0%);\n opacity: 1;\n}\n}\n\n<\/style>\n\n<div class=\"ue-content-box\" id=\"uc_sliding_content_box_elementor_8be4cc1\">\n  \n  <div class=\"ue-content-box-inner\">\n    <div class=\"ue-bg\"><\/div>\n    <div class=\"ue-overlay\"><\/div>\n    \n     <div class=\"ue-content-box-wrapper\">\n\t\t<div class=\"ue-title moveFromLeft\">DONN\u00c9ES DE PRODUCTION ET DONN\u00c9ES RELATIVES AUX MACHINES<\/div>\t\n\t\t<div class=\"ue-text moveFromLeft\"><div class=\"iiot-card-container\">\n  <!-- Header Bar -->\n  <div class=\"iiot-card-header\">\n    <div class=\"iiot-header-title\">\n      <h3>Constitution d'un historique de la production<\/h3>\n    <\/div>\n  <\/div>\n\n  <!-- Content Area -->\n  <div class=\"iiot-card-content\">\n    <div class=\"iiot-content-inner\">\n      <p class=\"iiot-description\">\n        Les bases de donn\u00e9es industrielles fournissent un historique structur\u00e9 de l'activit\u00e9 de production. En enregistrant en continu les donn\u00e9es t\u00e9l\u00e9m\u00e9triques des machines et les \u00e9v\u00e9nements li\u00e9s aux commandes, l'architecture de la base de donn\u00e9es garantit une tra\u00e7abilit\u00e9 op\u00e9rationnelle compl\u00e8te, adapt\u00e9e au volume de donn\u00e9es requis et \u00e0 la fr\u00e9quence d'enregistrement.\n      <\/p>\n\n      <!-- 2-Column Split: Production Order vs Continuous Machine Data -->\n      <div class=\"iiot-split-grid\">\n        \n        <!-- Card 1: Production Order History -->\n        <div class=\"iiot-split-card\">\n          <div class=\"iiot-card-header-inner\">\n            <span class=\"iiot-card-badge\">NIVEAU DE COMMANDE<\/span>\n            <span class=\"iiot-card-title\">Tra\u00e7abilit\u00e9 des ordres de fabrication<\/span>\n          <\/div>\n          <p class=\"iiot-card-intro\">\n            Mappage relationnel structur\u00e9 reliant les ex\u00e9cutions par lots distinctes et les param\u00e8tres des t\u00e2ches :\n          <\/p>\n          <div class=\"iiot-tree-structure\">\n            <div class=\"iiot-tree-root\">Ordre de fabrication<\/div>\n            <div class=\"iiot-tree-branches\">\n              <div class=\"iiot-tree-node\">Identification du produit<\/div>\n              <div class=\"iiot-tree-node\">Num\u00e9ro de lot<\/div>\n              <div class=\"iiot-tree-node\">Identifiant de la machine et de la ligne<\/div>\n              <div class=\"iiot-tree-node\">Identifiants de l'op\u00e9rateur<\/div>\n              <div class=\"iiot-tree-node\">Horodatages de d\u00e9but et de fin<\/div>\n              <div class=\"iiot-tree-node\">Quantit\u00e9 produite et rejet\u00e9e<\/div>\n              <div class=\"iiot-tree-node\">R\u00e9sultats du contr\u00f4le qualit\u00e9<\/div>\n              <div class=\"iiot-tree-node\">Param\u00e8tres de production enregistr\u00e9s<\/div>\n            <\/div>\n          <\/div>\n        <\/div>\n\n        <!-- Card 2: Continuous Machine Telemetry -->\n        <div class=\"iiot-split-card\">\n          <div class=\"iiot-card-header-inner\">\n            <span class=\"iiot-card-badge\">NIVEAU DE T\u00c9L\u00c9M\u00c9TRIE<\/span>\n            <span class=\"iiot-card-title\">Donn\u00e9es op\u00e9rationnelles en continu<\/span>\n          <\/div>\n          <p class=\"iiot-card-intro\">\n            Enregistrement de s\u00e9ries chronologiques \u00e0 haute fr\u00e9quence g\u00e9n\u00e9r\u00e9es directement par les \u00e9quipements de production :\n          <\/p>\n          <div class=\"iiot-metrics-grid\">\n            <div class=\"iiot-metric-tag\">\u00c9tat de la machine<\/div>\n            <div class=\"iiot-metric-tag\">Cycles de fonctionnement<\/div>\n            <div class=\"iiot-metric-tag\">La production, \u00e7a compte<\/div>\n            <div class=\"iiot-metric-tag\">Alarmes et d\u00e9fauts<\/div>\n            <div class=\"iiot-metric-tag\">Valeurs de processus<\/div>\n            <div class=\"iiot-metric-tag\">Horaires d'ouverture<\/div>\n            <div class=\"iiot-metric-tag\">\u00c9v\u00e9nements li\u00e9s aux interruptions de service<\/div>\n            <div class=\"iiot-metric-tag\">Registres de maintenance<\/div>\n          <\/div>\n        <\/div>\n\n      <\/div>\n\n      <!-- Horizontal Data Acquisition Pipeline -->\n      <div class=\"iiot-pipeline-section\">\n        <div class=\"iiot-pipeline-label\">CHA\u00ceNE DE TRAITEMENT DES DONN\u00c9ES DE T\u00c9L\u00c9M\u00c9TRIE<\/div>\n        <div class=\"iiot-flow-chain\">\n          <div class=\"iiot-flow-node\">\n            <div class=\"iiot-node-box\">Machine<\/div>\n          <\/div>\n          <div class=\"iiot-flow-arrow\">\u2192<\/div>\n          <div class=\"iiot-flow-node\">\n            <div class=\"iiot-node-box\">Automate programmable \/ Contr\u00f4leur<\/div>\n          <\/div>\n          <div class=\"iiot-flow-arrow\">\u2192<\/div>\n          <div class=\"iiot-flow-node\">\n            <div class=\"iiot-node-box\">Acquisition de donn\u00e9es<\/div>\n          <\/div>\n          <div class=\"iiot-flow-arrow\">\u2192<\/div>\n          <div class=\"iiot-flow-node iiot-highlight-node\">\n            <div class=\"iiot-node-box\">Base de donn\u00e9es<\/div>\n          <\/div>\n          <div class=\"iiot-flow-arrow\">\u2192<\/div>\n          <div class=\"iiot-flow-node\">\n            <div class=\"iiot-node-box\">Archives historiques<\/div>\n          <\/div>\n        <\/div>\n      <\/div>\n\n      <!-- Statement Banner Footer -->\n      <div class=\"iiot-statement-banner\">\n        <div class=\"iiot-statement-text\">\n          L'architecture de la base de donn\u00e9es est sp\u00e9cialement con\u00e7ue en fonction du volume de donn\u00e9es requis, des politiques de conservation et de la fr\u00e9quence d'enregistrement.\n        <\/div>\n      <\/div>\n\n    <\/div>\n  <\/div>\n<\/div>\n\n<style>\n  \/* Full-Width Container Styling *\/\n  .iiot-card-container {\n    width: 100%;\n    max-width: 100%;\n    margin: 20px 0;\n    border: 1px solid rgba(255, 255, 255, 0.2);\n    border-radius: 10px;\n    background-color: transparent;\n    font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;\n    overflow: hidden;\n    box-sizing: border-box;\n  }\n\n  \/* Header Bar *\/\n  .iiot-card-header {\n    display: flex;\n    align-items: center;\n    padding: 18px 24px;\n    background-color: rgba(13, 35, 58, 0.85);\n    backdrop-filter: blur(5px);\n    color: #ffffff;\n  }\n\n  .iiot-header-title h3 {\n    margin: 0;\n    font-size: 1.15rem;\n    font-weight: 600;\n    color: #ffffff !important;\n  }\n\n  \/* Content Area *\/\n  .iiot-card-content {\n    background-color: transparent;\n  }\n\n  .iiot-content-inner {\n    padding: 24px;\n    border-top: 1px solid rgba(255, 255, 255, 0.1);\n  }\n\n  .iiot-description {\n    color: inherit;\n    opacity: 0.9;\n    line-height: 1.6;\n    margin-bottom: 24px;\n    font-size: 0.98rem;\n    text-align: center;\n  }\n\n  \/* 2-Column Split Grid *\/\n  .iiot-split-grid {\n    display: grid;\n    grid-template-columns: repeat(2, 1fr);\n    gap: 16px;\n    margin-bottom: 24px;\n  }\n\n  .iiot-split-card {\n    background-color: rgba(255, 255, 255, 0.03);\n    border: 1px solid rgba(255, 255, 255, 0.15);\n    border-radius: 8px;\n    padding: 20px;\n    box-sizing: border-box;\n    display: flex;\n    flex-direction: column;\n    gap: 12px;\n  }\n\n  .iiot-card-header-inner {\n    display: flex;\n    flex-direction: column;\n    gap: 4px;\n    border-bottom: 1px solid rgba(255, 255, 255, 0.1);\n    padding-bottom: 10px;\n  }\n\n  .iiot-card-badge {\n    font-size: 0.72rem;\n    font-weight: 700;\n    opacity: 0.55;\n    letter-spacing: 1px;\n    color: inherit;\n  }\n\n  .iiot-card-title {\n    font-size: 1rem;\n    font-weight: 600;\n    color: inherit;\n  }\n\n  .iiot-card-intro {\n    font-size: 0.85rem;\n    opacity: 0.8;\n    margin: 0;\n    line-height: 1.4;\n  }\n\n  \/* Tree Structure Display *\/\n  .iiot-tree-structure {\n    display: flex;\n    flex-direction: column;\n    gap: 6px;\n    margin-top: 4px;\n  }\n\n  .iiot-tree-root {\n    font-size: 0.9rem;\n    font-weight: 700;\n    padding: 8px 12px;\n    background-color: rgba(255, 255, 255, 0.06);\n    border: 1px solid rgba(255, 255, 255, 0.2);\n    border-radius: 6px;\n    color: inherit;\n  }\n\n  .iiot-tree-branches {\n    display: flex;\n    flex-direction: column;\n    gap: 6px;\n    padding-left: 16px;\n    border-left: 2px solid rgba(255, 255, 255, 0.15);\n    margin-left: 12px;\n  }\n\n  .iiot-tree-node {\n    font-size: 0.84rem;\n    opacity: 0.85;\n    position: relative;\n    padding: 2px 0;\n  }\n\n  .iiot-tree-node::before {\n    content: \"\u2014\";\n    position: absolute;\n    left: -14px;\n    opacity: 0.4;\n  }\n\n  \/* Telemetry Grid Tags *\/\n  .iiot-metrics-grid {\n    display: grid;\n    grid-template-columns: repeat(2, 1fr);\n    gap: 8px;\n    margin-top: 4px;\n  }\n\n  .iiot-metric-tag {\n    background-color: rgba(255, 255, 255, 0.04);\n    border: 1px solid rgba(255, 255, 255, 0.12);\n    border-radius: 6px;\n    padding: 8px 10px;\n    font-size: 0.84rem;\n    font-weight: 500;\n    opacity: 0.85;\n    text-align: center;\n  }\n\n  \/* Horizontal Pipeline Section *\/\n  .iiot-pipeline-section {\n    background-color: rgba(255, 255, 255, 0.02);\n    border: 1px solid rgba(255, 255, 255, 0.12);\n    border-radius: 8px;\n    padding: 16px 20px;\n    margin-bottom: 24px;\n    display: flex;\n    flex-direction: column;\n    gap: 12px;\n  }\n\n  .iiot-pipeline-label {\n    font-size: 0.72rem;\n    font-weight: 700;\n    letter-spacing: 1.2px;\n    opacity: 0.5;\n    text-align: center;\n    color: inherit;\n  }\n\n  .iiot-flow-chain {\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    gap: 8px;\n    overflow-x: auto;\n    padding: 4px;\n  }\n\n  .iiot-flow-node {\n    flex: 1;\n    min-width: 110px;\n  }\n\n  .iiot-node-box {\n    background-color: rgba(255, 255, 255, 0.03);\n    border: 1px solid rgba(255, 255, 255, 0.15);\n    border-radius: 6px;\n    padding: 10px 8px;\n    text-align: center;\n    font-size: 0.85rem;\n    font-weight: 500;\n    color: inherit;\n    box-sizing: border-box;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    min-height: 44px;\n  }\n\n  .iiot-highlight-node .iiot-node-box {\n    background-color: rgba(255, 255, 255, 0.08);\n    border: 1px solid rgba(255, 255, 255, 0.4);\n    font-weight: 700;\n  }\n\n  .iiot-flow-arrow {\n    font-size: 0.95rem;\n    opacity: 0.45;\n    color: inherit;\n    user-select: none;\n    flex-shrink: 0;\n  }\n\n  \/* Statement Banner Footer *\/\n  .iiot-statement-banner {\n    background-color: rgba(13, 35, 58, 0.6);\n    border: 1px solid rgba(255, 255, 255, 0.2);\n    border-radius: 8px;\n    padding: 16px 20px;\n    text-align: center;\n  }\n\n  .iiot-statement-text {\n    font-size: 0.95rem;\n    font-weight: 500;\n    color: #ffffff;\n    line-height: 1.5;\n  }\n\n  \/* Responsive Behavior *\/\n  @media (max-width: 850px) {\n    .iiot-split-grid {\n      grid-template-columns: 1fr;\n    }\n\n    .iiot-flow-chain {\n      flex-direction: column;\n      gap: 8px;\n    }\n\n    .iiot-flow-node {\n      width: 100%;\n      max-width: 280px;\n    }\n\n    .iiot-flow-arrow {\n      transform: rotate(90deg);\n      margin: 2px 0;\n    }\n  }\n<\/style><\/div>       \n       \t     <\/div>\n  <\/div>\n<\/div>\n<!-- end Content Box Sliding Effect -->\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-a306369 e-con e-atomic-element e-flexbox-base e-0692650\" data-id=\"a306369\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"a306369\">\n    \t\t<div class=\"elementor-element elementor-element-8b49525 elementor-widget elementor-widget-ucaddon_sliding_content_box\" data-id=\"8b49525\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"ucaddon_sliding_content_box.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n<!-- start Content Box Sliding Effect -->\n<style>\/* widget: Content Box Sliding Effect *\/\n\n#uc_sliding_content_box_elementor_8b49525 {\n\tbox-sizing: border-box;\n    overflow:hidden;\n}\n\n.ue-title\n{\n  font-size:21px;\n  width:100%;\n}\n\n.ue-text\n{\n  width:100%;\n}\n\n.ue-btn-wrapper\n{\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_8b49525 .ue-content-box-inner\n{\n  display:flex;\n  position:relative;\n}\n\n#uc_sliding_content_box_elementor_8b49525 .ue-overlay\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n}\n\n#uc_sliding_content_box_elementor_8b49525 .ue-content-box-wrapper\n{\n  position:relative;\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_8b49525 .ue-bg\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n  transition:0.5s;\n}\n\n#uc_sliding_content_box_elementor_8b49525:hover .ue-bg\n{\n transform:scale(1.1,1.1);\n}\n\n\n#uc_sliding_content_box_elementor_8b49525:hover .moveFromLeft\n{\n  animation: moveFromLeft 0.5s;\n}\n\n#uc_sliding_content_box_elementor_8b49525:hover .moveFromRight\n{\n  animation: moveFromRight 0.5s;\n}\n\n#uc_sliding_content_box_elementor_8b49525:hover .moveFromBottom\n{\n  animation: moveFromBottom 0.5s;\n}\n\n@-webkit-keyframes moveFromLeft {\n from {\n -webkit-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromLeft {\n from {\n -moz-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromLeft {\n from {\n -ms-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromRight {\n from {\n -webkit-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromRight {\n from {\n -moz-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromRight {\n from {\n -ms-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromBottom {\n from {\n -webkit-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromBottom {\n from {\n -moz-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromBottom {\n from {\n -ms-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateY(0%);\n opacity: 1;\n}\n}\n\n<\/style>\n\n<div class=\"ue-content-box\" id=\"uc_sliding_content_box_elementor_8b49525\">\n  \n  <div class=\"ue-content-box-inner\">\n    <div class=\"ue-bg\"><\/div>\n    <div class=\"ue-overlay\"><\/div>\n    \n     <div class=\"ue-content-box-wrapper\">\n\t\t\t\n\t\t<div class=\"ue-text moveFromRight\"><div class=\"iiot-card-container\">\n  <!-- Header Bar -->\n  <div class=\"iiot-card-header\">\n    <div class=\"iiot-header-title\">\n      <h3>Construire une histoire industrielle fiable<\/h3>\n    <\/div>\n  <\/div>\n\n  <!-- Content Area -->\n  <div class=\"iiot-card-content\">\n    <div class=\"iiot-content-inner\">\n      <p class=\"iiot-description\">\n        Les donn\u00e9es historiques fournissent un enregistrement continu des op\u00e9rations industrielles, constituant ainsi une base fiable pour l'\u00e9tablissement de rapports, l'analyse des causes profondes et l'optimisation \u00e0 long terme des processus.\n      <\/p>\n\n      <!-- Section 1: Historical Data Pillars -->\n      <div class=\"iiot-section-box\">\n        <div class=\"iiot-section-title\">Archives historiques fondamentales<\/div>\n        <div class=\"iiot-tags-grid\">\n          <div class=\"iiot-tag-item\">Records de production<\/div>\n          <div class=\"iiot-tag-item\">\u00c9v\u00e9nements li\u00e9s aux machines<\/div>\n          <div class=\"iiot-tag-item\">Param\u00e8tres de processus<\/div>\n          <div class=\"iiot-tag-item\">Des r\u00e9sultats de qualit\u00e9<\/div>\n          <div class=\"iiot-tag-item\">Alarmes et d\u00e9fauts<\/div>\n          <div class=\"iiot-tag-item\">Registres de maintenance<\/div>\n          <div class=\"iiot-tag-item\">Analyse des temps d'arr\u00eat<\/div>\n        <\/div>\n      <\/div>\n\n      <!-- Section 2: SCADA & Industrial Software Integration (2-Column Grid) -->\n      <div class=\"iiot-split-grid\">\n        \n        <!-- SCADA Integration (Short & Concise) -->\n        <div class=\"iiot-split-card\">\n          <div class=\"iiot-card-header-inner\">\n            <span class=\"iiot-card-badge\">SUPERVISION<\/span>\n            <span class=\"iiot-card-title\">Base de donn\u00e9es + SCADA<\/span>\n          <\/div>\n          <p class=\"iiot-card-text\">\n            Les syst\u00e8mes SCADA g\u00e9n\u00e8rent des donn\u00e9es de supervision en continu qui doivent \u00eatre stock\u00e9es \u00e0 long terme \u00e0 des fins d'analyse des tendances et d'\u00e9tablissement de rapports de conformit\u00e9.\n          <\/p>\n          <div class=\"iiot-mini-chain\">\n            <span>PLC<\/span> \u2192 <span>SCADA<\/span> \u2192 <span>Base de donn\u00e9es<\/span> \u2192 <span>Rapports \/ Analyses<\/span>\n          <\/div>\n          <a href=\"#\" class=\"iiot-link-btn\">D\u00e9couvrez les syst\u00e8mes SCADA \u2192<\/a>\n        <\/div>\n\n        <!-- Custom Industrial Software Integration -->\n        <div class=\"iiot-split-card\">\n          <div class=\"iiot-card-header-inner\">\n            <span class=\"iiot-card-badge\">APPLICATIONS<\/span>\n            <span class=\"iiot-card-title\">Bases de donn\u00e9es + Logiciels industriels<\/span>\n          <\/div>\n          <p class=\"iiot-card-text\">\n            Les logiciels industriels sur mesure s'appuient sur des mod\u00e8les de donn\u00e9es structur\u00e9s pour g\u00e9rer les flux de travail op\u00e9rationnels, les donn\u00e9es de r\u00e9f\u00e9rence et les enregistrements d'ex\u00e9cution.\n          <\/p>\n          <div class=\"iiot-app-capabilities\">\n            <div class=\"iiot-cap-chip\">Commandes et produits<\/div>\n            <div class=\"iiot-cap-chip\">Historique de la machine<\/div>\n            <div class=\"iiot-cap-chip\">Stock et qualit\u00e9<\/div>\n            <div class=\"iiot-cap-chip\">Utilisateurs et maintenance<\/div>\n          <\/div>\n        <\/div>\n\n      <\/div>\n\n      <!-- Section 3: Machine Vision Data Integration -->\n      <div class=\"iiot-vision-section\">\n        <div class=\"iiot-card-header-inner\">\n          <span class=\"iiot-card-badge\">QUALIT\u00c9 ET CONTR\u00d4LE<\/span>\n          <span class=\"iiot-card-title\">Int\u00e9gration d'une base de donn\u00e9es et de la vision artificielle<\/span>\n        <\/div>\n        <p class=\"iiot-card-text\" style=\"text-align: center; margin-bottom: 16px;\">\n          Transformer les contr\u00f4les visuels de conformit\u00e9 en dossiers d'inspection permanents et consultables tout au long du cycle de vie du produit.\n        <\/p>\n\n        <!-- Vision Flow Pipeline -->\n        <div class=\"iiot-flow-chain\">\n          <div class=\"iiot-flow-node\"><div class=\"iiot-node-box\">Appareil photo<\/div><\/div>\n          <div class=\"iiot-flow-arrow\">\u2192<\/div>\n          <div class=\"iiot-flow-node\"><div class=\"iiot-node-box\">Syst\u00e8me de vision<\/div><\/div>\n          <div class=\"iiot-flow-arrow\">\u2192<\/div>\n          <div class=\"iiot-flow-node\"><div class=\"iiot-node-box\">R\u00e9sultats de l'inspection<\/div><\/div>\n          <div class=\"iiot-flow-arrow\">\u2192<\/div>\n          <div class=\"iiot-flow-node\"><div class=\"iiot-node-box\">Logiciels industriels<\/div><\/div>\n          <div class=\"iiot-flow-arrow\">\u2192<\/div>\n          <div class=\"iiot-flow-node iiot-highlight-node\"><div class=\"iiot-node-box\">Base de donn\u00e9es<\/div><\/div>\n        <\/div>\n\n        <!-- Vision Stored Parameters -->\n        <div class=\"iiot-vision-fields\">\n          <span>Champs enregistr\u00e9s :<\/span>\n          <div class=\"iiot-fields-list\">\n            <code>Statut du r\u00e9sultat<\/code>\n            <code>R\u00e9f\u00e9rence du produit<\/code>\n            <code>Horodatage<\/code>\n            <code>Identifiant de la machine<\/code>\n            <code>Param\u00e8tres<\/code>\n            <code>Dimensions<\/code>\n            <code>Cat\u00e9gorie de d\u00e9faut<\/code>\n          <\/div>\n        <\/div>\n      <\/div>\n\n      <!-- Footer Banner -->\n      <div class=\"iiot-statement-banner\">\n        <div class=\"iiot-statement-text\">\n          GPLG d\u00e9veloppe \u00e0 la fois des applications logicielles sur mesure et les architectures de bases de donn\u00e9es sous-jacentes, garantissant ainsi une coh\u00e9rence parfaite entre la collecte des donn\u00e9es et la logique m\u00e9tier.\n        <\/div>\n      <\/div>\n\n    <\/div>\n  <\/div>\n<\/div>\n\n<style>\n  \/* Base Container Styling *\/\n  .iiot-card-container {\n    width: 100%;\n    max-width: 100%;\n    margin: 20px 0;\n    border: 1px solid rgba(255, 255, 255, 0.2);\n    border-radius: 10px;\n    background-color: transparent;\n    font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;\n    overflow: hidden;\n    box-sizing: border-box;\n  }\n\n  \/* Header *\/\n  .iiot-card-header {\n    display: flex;\n    align-items: center;\n    padding: 18px 24px;\n    background-color: rgba(13, 35, 58, 0.85);\n    backdrop-filter: blur(5px);\n    color: #ffffff;\n  }\n\n  .iiot-header-title h3 {\n    margin: 0;\n    font-size: 1.15rem;\n    font-weight: 600;\n    color: #ffffff !important;\n  }\n\n  \/* Content Inner *\/\n  .iiot-content-inner {\n    padding: 24px;\n    border-top: 1px solid rgba(255, 255, 255, 0.1);\n    display: flex;\n    flex-direction: column;\n    gap: 24px;\n  }\n\n  .iiot-description {\n    color: inherit;\n    opacity: 0.9;\n    line-height: 1.6;\n    margin: 0;\n    font-size: 0.98rem;\n    text-align: center;\n  }\n\n  \/* Section Box: Historical Data Tags *\/\n  .iiot-section-box {\n    background-color: rgba(255, 255, 255, 0.02);\n    border: 1px solid rgba(255, 255, 255, 0.12);\n    border-radius: 8px;\n    padding: 16px 20px;\n  }\n\n  .iiot-section-title {\n    font-size: 0.85rem;\n    font-weight: 700;\n    letter-spacing: 0.8px;\n    opacity: 0.6;\n    text-transform: uppercase;\n    margin-bottom: 12px;\n    text-align: center;\n  }\n\n  .iiot-tags-grid {\n    display: flex;\n    flex-wrap: wrap;\n    justify-content: center;\n    gap: 8px;\n  }\n\n  .iiot-tag-item {\n    background-color: rgba(255, 255, 255, 0.04);\n    border: 1px solid rgba(255, 255, 255, 0.15);\n    border-radius: 6px;\n    padding: 8px 12px;\n    font-size: 0.85rem;\n    font-weight: 500;\n    opacity: 0.85;\n  }\n\n  \/* Split Grid *\/\n  .iiot-split-grid {\n    display: grid;\n    grid-template-columns: repeat(2, 1fr);\n    gap: 16px;\n  }\n\n  .iiot-split-card {\n    background-color: rgba(255, 255, 255, 0.03);\n    border: 1px solid rgba(255, 255, 255, 0.15);\n    border-radius: 8px;\n    padding: 20px;\n    box-sizing: border-box;\n    display: flex;\n    flex-direction: column;\n    gap: 12px;\n  }\n\n  .iiot-card-header-inner {\n    display: flex;\n    flex-direction: column;\n    gap: 4px;\n    border-bottom: 1px solid rgba(255, 255, 255, 0.1);\n    padding-bottom: 10px;\n  }\n\n  .iiot-card-badge {\n    font-size: 0.72rem;\n    font-weight: 700;\n    opacity: 0.55;\n    letter-spacing: 1px;\n    color: inherit;\n  }\n\n  .iiot-card-title {\n    font-size: 1rem;\n    font-weight: 600;\n    color: inherit;\n  }\n\n  .iiot-card-text {\n    font-size: 0.88rem;\n    line-height: 1.5;\n    opacity: 0.85;\n    margin: 0;\n  }\n\n  .iiot-mini-chain {\n    font-size: 0.82rem;\n    background-color: rgba(255, 255, 255, 0.03);\n    border: 1px solid rgba(255, 255, 255, 0.1);\n    padding: 8px 12px;\n    border-radius: 6px;\n    text-align: center;\n    opacity: 0.9;\n  }\n\n  .iiot-mini-chain span {\n    font-weight: 600;\n  }\n\n  .iiot-link-btn {\n    display: inline-block;\n    font-size: 0.84rem;\n    font-weight: 600;\n    color: inherit;\n    text-decoration: none;\n    opacity: 0.8;\n    transition: opacity 0.2s;\n    margin-top: auto;\n  }\n\n  .iiot-link-btn:hover {\n    opacity: 1;\n    text-decoration: underline;\n  }\n\n  .iiot-app-capabilities {\n    display: grid;\n    grid-template-columns: repeat(2, 1fr);\n    gap: 6px;\n  }\n\n  .iiot-cap-chip {\n    background-color: rgba(255, 255, 255, 0.04);\n    border: 1px solid rgba(255, 255, 255, 0.12);\n    border-radius: 4px;\n    padding: 6px 8px;\n    font-size: 0.8rem;\n    text-align: center;\n    opacity: 0.85;\n  }\n\n  \/* Vision Section *\/\n  .iiot-vision-section {\n    background-color: rgba(255, 255, 255, 0.03);\n    border: 1px solid rgba(255, 255, 255, 0.15);\n    border-radius: 8px;\n    padding: 20px;\n    display: flex;\n    flex-direction: column;\n    gap: 16px;\n  }\n\n  .iiot-flow-chain {\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    gap: 8px;\n    overflow-x: auto;\n    padding: 4px 0;\n  }\n\n  .iiot-flow-node {\n    flex: 1;\n    min-width: 100px;\n  }\n\n  .iiot-node-box {\n    background-color: rgba(255, 255, 255, 0.03);\n    border: 1px solid rgba(255, 255, 255, 0.15);\n    border-radius: 6px;\n    padding: 8px 6px;\n    text-align: center;\n    font-size: 0.82rem;\n    font-weight: 500;\n    color: inherit;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    min-height: 40px;\n    box-sizing: border-box;\n  }\n\n  .iiot-highlight-node .iiot-node-box {\n    background-color: rgba(255, 255, 255, 0.08);\n    border: 1px solid rgba(255, 255, 255, 0.4);\n    font-weight: 700;\n  }\n\n  .iiot-flow-arrow {\n    font-size: 0.9rem;\n    opacity: 0.45;\n    user-select: none;\n    flex-shrink: 0;\n  }\n\n  .iiot-vision-fields {\n    display: flex;\n    align-items: center;\n    gap: 12px;\n    border-top: 1px dashed rgba(255, 255, 255, 0.15);\n    padding-top: 14px;\n    font-size: 0.82rem;\n  }\n\n  .iiot-vision-fields span {\n    opacity: 0.6;\n    font-weight: 600;\n    white-space: nowrap;\n  }\n\n  .iiot-fields-list {\n    display: flex;\n    flex-wrap: wrap;\n    gap: 6px;\n  }\n\n  .iiot-fields-list code {\n    background-color: rgba(255, 255, 255, 0.06);\n    border: 1px solid rgba(255, 255, 255, 0.12);\n    border-radius: 4px;\n    padding: 3px 6px;\n    font-family: inherit;\n    font-size: 0.78rem;\n    opacity: 0.9;\n  }\n\n  \/* Banner Footer *\/\n  .iiot-statement-banner {\n    background-color: rgba(13, 35, 58, 0.6);\n    border: 1px solid rgba(255, 255, 255, 0.2);\n    border-radius: 8px;\n    padding: 16px 20px;\n    text-align: center;\n  }\n\n  .iiot-statement-text {\n    font-size: 0.95rem;\n    font-weight: 500;\n    color: #ffffff;\n    line-height: 1.5;\n  }\n\n  \/* Responsive Adjustments *\/\n  @media (max-width: 850px) {\n    .iiot-split-grid {\n      grid-template-columns: 1fr;\n    }\n\n    .iiot-flow-chain {\n      flex-direction: column;\n      gap: 8px;\n    }\n\n    .iiot-flow-node {\n      width: 100%;\n      max-width: 280px;\n    }\n\n    .iiot-flow-arrow {\n      transform: rotate(90deg);\n      margin: 2px 0;\n    }\n\n    .iiot-vision-fields {\n      flex-direction: column;\n      align-items: flex-start;\n    }\n  }\n<\/style><\/div>       \n       \t     <\/div>\n  <\/div>\n<\/div>\n<!-- end Content Box Sliding Effect -->\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-bdb8e63 e-con e-atomic-element e-flexbox-base e-1f98789\" data-id=\"bdb8e63\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"bdb8e63\">\n    \t\t<div class=\"elementor-element elementor-element-3be9507 elementor-widget elementor-widget-ucaddon_sliding_content_box\" data-id=\"3be9507\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"ucaddon_sliding_content_box.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n<!-- start Content Box Sliding Effect -->\n<style>\/* widget: Content Box Sliding Effect *\/\n\n#uc_sliding_content_box_elementor_3be9507 {\n\tbox-sizing: border-box;\n    overflow:hidden;\n}\n\n.ue-title\n{\n  font-size:21px;\n  width:100%;\n}\n\n.ue-text\n{\n  width:100%;\n}\n\n.ue-btn-wrapper\n{\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_3be9507 .ue-content-box-inner\n{\n  display:flex;\n  position:relative;\n}\n\n#uc_sliding_content_box_elementor_3be9507 .ue-overlay\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n}\n\n#uc_sliding_content_box_elementor_3be9507 .ue-content-box-wrapper\n{\n  position:relative;\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_3be9507 .ue-bg\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n  transition:0.5s;\n}\n\n#uc_sliding_content_box_elementor_3be9507:hover .ue-bg\n{\n transform:scale(1.1,1.1);\n}\n\n\n#uc_sliding_content_box_elementor_3be9507:hover .moveFromLeft\n{\n  animation: moveFromLeft 0.5s;\n}\n\n#uc_sliding_content_box_elementor_3be9507:hover .moveFromRight\n{\n  animation: moveFromRight 0.5s;\n}\n\n#uc_sliding_content_box_elementor_3be9507:hover .moveFromBottom\n{\n  animation: moveFromBottom 0.5s;\n}\n\n@-webkit-keyframes moveFromLeft {\n from {\n -webkit-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromLeft {\n from {\n -moz-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromLeft {\n from {\n -ms-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromRight {\n from {\n -webkit-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromRight {\n from {\n -moz-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromRight {\n from {\n -ms-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromBottom {\n from {\n -webkit-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromBottom {\n from {\n -moz-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromBottom {\n from {\n -ms-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateY(0%);\n opacity: 1;\n}\n}\n\n<\/style>\n\n<div class=\"ue-content-box\" id=\"uc_sliding_content_box_elementor_3be9507\">\n  \n  <div class=\"ue-content-box-inner\">\n    <div class=\"ue-bg\"><\/div>\n    <div class=\"ue-overlay\"><\/div>\n    \n     <div class=\"ue-content-box-wrapper\">\n\t\t\t\n\t\t<div class=\"ue-text moveFromLeft\"><div class=\"iiot-card-container\">\n  <div class=\"iiot-card-header\">\n    <div class=\"iiot-header-title\">\n      <h3>Architecture de l'IoT industriel et de l'IA<\/h3>\n    <\/div>\n  <\/div>\n\n  <div class=\"iiot-card-content\">\n    <div class=\"iiot-content-inner\">\n      <div class=\"iiot-split-grid\">\n        \n        <!-- IoT Data Pipeline -->\n        <div class=\"iiot-split-card\">\n          <div class=\"iiot-card-header-inner\">\n            <span class=\"iiot-card-badge\">APPAREILS CONNECT\u00c9S<\/span>\n            <span class=\"iiot-card-title\">Bases de donn\u00e9es + IoT industriel<\/span>\n          <\/div>\n          <p class=\"iiot-card-text\">\n            Les syst\u00e8mes IoT industriels capturent des flux \u00e0 haute fr\u00e9quence provenant de machines r\u00e9parties sur le terrain, transformant ainsi les signaux bruts des appareils en mod\u00e8les de donn\u00e9es structur\u00e9s et consultables.\n          <\/p>\n          <div class=\"iiot-mini-chain\">\n            <span>Machines<\/span> \u2192 <span>IoT<\/span> \u2192 <span>Traitement<\/span> \u2192 <span>Base de donn\u00e9es<\/span> \u2192 <span>Applications<\/span>\n          <\/div>\n          <div class=\"iiot-note-chip\">\n            L'architecture s'adapte en fonction du volume de donn\u00e9es, de la fr\u00e9quence d'\u00e9chantillonnage et des exigences en mati\u00e8re de latence op\u00e9rationnelle.\n          <\/div>\n          <a href=\"#\" class=\"iiot-link-btn\">D\u00e9couvrez l'IoT industriel \u2192<\/a>\n        <\/div>\n\n        <!-- AI Infrastructure -->\n        <div class=\"iiot-split-card\">\n          <div class=\"iiot-card-header-inner\">\n            <span class=\"iiot-card-badge\">INTELLIGENCE<\/span>\n            <span class=\"iiot-card-title\">Bases de donn\u00e9es + IA industrielle<\/span>\n          <\/div>\n          <p class=\"iiot-card-text\">\n            Les enregistrements des bases de donn\u00e9es historiques constituent l'ensemble de donn\u00e9es indispensable pour entra\u00eener des mod\u00e8les pr\u00e9dictifs, d\u00e9tecter les anomalies et optimiser l'efficacit\u00e9 op\u00e9rationnelle.\n          <\/p>\n          <div class=\"iiot-mini-chain\">\n            <span>Donn\u00e9es<\/span> \u2192 <span>Base de donn\u00e9es<\/span> \u2192 <span>Pr\u00e9paration<\/span> \u2192 <span>IA\/apprentissage automatique<\/span> \u2192 <span>Pr\u00e9vision<\/span>\n          <\/div>\n          <div class=\"iiot-note-chip\">\n            Le stockage en base de donn\u00e9es constitue l'infrastructure de donn\u00e9es centrale, tandis que les couches d'IA ex\u00e9cutent les algorithmes d'analyse.\n          <\/div>\n          <a href=\"#\" class=\"iiot-link-btn\">D\u00e9couvrez PLG AI \u2192<\/a>\n        <\/div>\n\n      <\/div>\n    <\/div>\n  <\/div>\n<\/div>\n\n<style>\n  .iiot-card-container {\n    width: 100%;\n    max-width: 100%;\n    margin: 20px 0;\n    border: 1px solid rgba(255, 255, 255, 0.2);\n    border-radius: 10px;\n    background-color: transparent;\n    font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;\n    overflow: hidden;\n    box-sizing: border-box;\n  }\n\n  .iiot-card-header {\n    display: flex;\n    align-items: center;\n    padding: 18px 24px;\n    background-color: rgba(13, 35, 58, 0.85);\n    backdrop-filter: blur(5px);\n    color: #ffffff;\n  }\n\n  .iiot-header-title h3 {\n    margin: 0;\n    font-size: 1.15rem;\n    font-weight: 600;\n    color: #ffffff !important;\n  }\n\n  .iiot-content-inner {\n    padding: 24px;\n    border-top: 1px solid rgba(255, 255, 255, 0.1);\n  }\n\n  .iiot-split-grid {\n    display: grid;\n    grid-template-columns: repeat(2, 1fr);\n    gap: 16px;\n  }\n\n  .iiot-split-card {\n    background-color: rgba(255, 255, 255, 0.03);\n    border: 1px solid rgba(255, 255, 255, 0.15);\n    border-radius: 8px;\n    padding: 20px;\n    box-sizing: border-box;\n    display: flex;\n    flex-direction: column;\n    gap: 12px;\n  }\n\n  .iiot-card-header-inner {\n    display: flex;\n    flex-direction: column;\n    gap: 4px;\n    border-bottom: 1px solid rgba(255, 255, 255, 0.1);\n    padding-bottom: 10px;\n  }\n\n  .iiot-card-badge {\n    font-size: 0.72rem;\n    font-weight: 700;\n    opacity: 0.55;\n    letter-spacing: 1px;\n    color: inherit;\n  }\n\n  .iiot-card-title {\n    font-size: 1rem;\n    font-weight: 600;\n    color: inherit;\n  }\n\n  .iiot-card-text {\n    font-size: 0.88rem;\n    line-height: 1.5;\n    opacity: 0.85;\n    margin: 0;\n  }\n\n  .iiot-mini-chain {\n    font-size: 0.8rem;\n    background-color: rgba(255, 255, 255, 0.03);\n    border: 1px solid rgba(255, 255, 255, 0.1);\n    padding: 8px 10px;\n    border-radius: 6px;\n    text-align: center;\n    opacity: 0.9;\n  }\n\n  .iiot-mini-chain span {\n    font-weight: 600;\n  }\n\n  .iiot-note-chip {\n    font-size: 0.78rem;\n    opacity: 0.65;\n    line-height: 1.4;\n    font-style: italic;\n  }\n\n  .iiot-link-btn {\n    display: inline-block;\n    font-size: 0.84rem;\n    font-weight: 600;\n    color: inherit;\n    text-decoration: none;\n    opacity: 0.8;\n    transition: opacity 0.2s;\n    margin-top: auto;\n  }\n\n  .iiot-link-btn:hover {\n    opacity: 1;\n    text-decoration: underline;\n  }\n\n  @media (max-width: 850px) {\n    .iiot-split-grid {\n      grid-template-columns: 1fr;\n    }\n  }\n<\/style><\/div>       \n       \t     <\/div>\n  <\/div>\n<\/div>\n<!-- end Content Box Sliding Effect -->\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-7827afb e-con e-atomic-element e-flexbox-base e-4f0f49e\" data-id=\"7827afb\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"7827afb\">\n    \t\t<div class=\"elementor-element elementor-element-b8fe9bf elementor-widget elementor-widget-ucaddon_sliding_content_box\" data-id=\"b8fe9bf\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"ucaddon_sliding_content_box.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n<!-- start Content Box Sliding Effect -->\n<style>\/* widget: Content Box Sliding Effect *\/\n\n#uc_sliding_content_box_elementor_b8fe9bf {\n\tbox-sizing: border-box;\n    overflow:hidden;\n}\n\n.ue-title\n{\n  font-size:21px;\n  width:100%;\n}\n\n.ue-text\n{\n  width:100%;\n}\n\n.ue-btn-wrapper\n{\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_b8fe9bf .ue-content-box-inner\n{\n  display:flex;\n  position:relative;\n}\n\n#uc_sliding_content_box_elementor_b8fe9bf .ue-overlay\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n}\n\n#uc_sliding_content_box_elementor_b8fe9bf .ue-content-box-wrapper\n{\n  position:relative;\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_b8fe9bf .ue-bg\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n  transition:0.5s;\n}\n\n#uc_sliding_content_box_elementor_b8fe9bf:hover .ue-bg\n{\n transform:scale(1.1,1.1);\n}\n\n\n#uc_sliding_content_box_elementor_b8fe9bf:hover .moveFromLeft\n{\n  animation: moveFromLeft 0.5s;\n}\n\n#uc_sliding_content_box_elementor_b8fe9bf:hover .moveFromRight\n{\n  animation: moveFromRight 0.5s;\n}\n\n#uc_sliding_content_box_elementor_b8fe9bf:hover .moveFromBottom\n{\n  animation: moveFromBottom 0.5s;\n}\n\n@-webkit-keyframes moveFromLeft {\n from {\n -webkit-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromLeft {\n from {\n -moz-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromLeft {\n from {\n -ms-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromRight {\n from {\n -webkit-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromRight {\n from {\n -moz-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromRight {\n from {\n -ms-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromBottom {\n from {\n -webkit-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromBottom {\n from {\n -moz-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromBottom {\n from {\n -ms-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateY(0%);\n opacity: 1;\n}\n}\n\n<\/style>\n\n<div class=\"ue-content-box\" id=\"uc_sliding_content_box_elementor_b8fe9bf\">\n  \n  <div class=\"ue-content-box-inner\">\n    <div class=\"ue-bg\"><\/div>\n    <div class=\"ue-overlay\"><\/div>\n    \n     <div class=\"ue-content-box-wrapper\">\n\t\t<div class=\"ue-title moveFromRight\">G\u00e9nial<\/div>\t\n\t\t<div class=\"ue-text moveFromRight\"><div class=\"iiot-card-container\">\n  <div class=\"iiot-card-header\">\n    <div class=\"iiot-header-title\">\n      <h3>Acc\u00e8s aux donn\u00e9es et int\u00e9gration d'API<\/h3>\n    <\/div>\n  <\/div>\n\n  <div class=\"iiot-card-content\">\n    <div class=\"iiot-content-inner\">\n\n      <!-- Section 3: Data Access Topology -->\n      <div class=\"iiot-vision-section\">\n        <div class=\"iiot-card-header-inner\">\n          <span class=\"iiot-card-badge\">INT\u00c9GRATION<\/span>\n          <span class=\"iiot-card-title\">Mettre \u00e0 disposition les informations industrielles<\/span>\n        <\/div>\n        <p class=\"iiot-card-text\" style=\"text-align: center; margin-bottom: 12px;\">\n          La base de donn\u00e9es fait office de plaque tournante centrale, rendant les donn\u00e9es op\u00e9rationnelles accessibles \u00e0 travers les couches logicielles, SCADA, d'analyse et de veille.\n        <\/p>\n\n        <div class=\"iiot-topology-container\">\n          <div class=\"iiot-central-db\">BASE DE DONN\u00c9ES<\/div>\n          <div class=\"iiot-topology-branches\">\n            <div class=\"iiot-branch\">\n              <div class=\"iiot-branch-line\">\u2193<\/div>\n              <div class=\"iiot-branch-node\">Logiciels industriels<\/div>\n            <\/div>\n            <div class=\"iiot-branch\">\n              <div class=\"iiot-branch-line\">\u2193<\/div>\n              <div class=\"iiot-branch-node\">Syst\u00e8mes SCADA<\/div>\n            <\/div>\n            <div class=\"iiot-branch\">\n              <div class=\"iiot-branch-line\">\u2193<\/div>\n              <div class=\"iiot-branch-node\">Plateforme d'analyse<\/div>\n              <div class=\"iiot-sub-arrow\">\u2193<\/div>\n              <div class=\"iiot-branch-node iiot-ai-node\">IA \/ Apprentissage automatique<\/div>\n            <\/div>\n          <\/div>\n        <\/div>\n      <\/div>\n\n      <!-- Section 4: REST APIs & Secure Access -->\n      <div class=\"iiot-section-box\">\n        <div class=\"iiot-card-header-inner\" style=\"border-bottom: none; padding-bottom: 0;\">\n          <span class=\"iiot-card-badge\">INTERFACES<\/span>\n          <span class=\"iiot-card-title\">API et acc\u00e8s aux bases de donn\u00e9es<\/span>\n        <\/div>\n        <p class=\"iiot-card-text\" style=\"margin-top: 8px; margin-bottom: 14px;\">\n          L'acc\u00e8s contr\u00f4l\u00e9 aux applications permet de s\u00e9parer les applications destin\u00e9es aux utilisateurs des sch\u00e9mas de bases de donn\u00e9es sous-jacents gr\u00e2ce \u00e0 des couches d'API.\n        <\/p>\n\n        <div class=\"iiot-flow-chain\">\n          <div class=\"iiot-flow-node\"><div class=\"iiot-node-box\">Application<\/div><\/div>\n          <div class=\"iiot-flow-arrow\">\u2192<\/div>\n          <div class=\"iiot-flow-node iiot-highlight-node\"><div class=\"iiot-node-box\">API REST<\/div><\/div>\n          <div class=\"iiot-flow-arrow\">\u2192<\/div>\n          <div class=\"iiot-flow-node\"><div class=\"iiot-node-box\">Couche application<\/div><\/div>\n          <div class=\"iiot-flow-arrow\">\u2192<\/div>\n          <div class=\"iiot-flow-node\"><div class=\"iiot-node-box\">Base de donn\u00e9es<\/div><\/div>\n        <\/div>\n      <\/div>\n\n      <!-- Footer Statement Banner -->\n      <div class=\"iiot-statement-banner\">\n        <div class=\"iiot-statement-text\">\n          GPLG con\u00e7oit des architectures de donn\u00e9es adapt\u00e9es aux applications sp\u00e9cifiques qui doivent y acc\u00e9der, garantissant ainsi un flux \u00e9volutif, s\u00e9curis\u00e9 et fiable \u00e0 tous les niveaux de votre infrastructure industrielle.\n        <\/div>\n      <\/div>\n\n    <\/div>\n  <\/div>\n<\/div>\n\n<style>\n  .iiot-card-container {\n    width: 100%;\n    max-width: 100%;\n    margin: 20px 0;\n    border: 1px solid rgba(255, 255, 255, 0.2);\n    border-radius: 10px;\n    background-color: transparent;\n    font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;\n    overflow: hidden;\n    box-sizing: border-box;\n  }\n\n  .iiot-card-header {\n    display: flex;\n    align-items: center;\n    padding: 18px 24px;\n    background-color: rgba(13, 35, 58, 0.85);\n    backdrop-filter: blur(5px);\n    color: #ffffff;\n  }\n\n  .iiot-header-title h3 {\n    margin: 0;\n    font-size: 1.15rem;\n    font-weight: 600;\n    color: #ffffff !important;\n  }\n\n  .iiot-content-inner {\n    padding: 24px;\n    border-top: 1px solid rgba(255, 255, 255, 0.1);\n    display: flex;\n    flex-direction: column;\n    gap: 20px;\n  }\n\n  .iiot-section-box {\n    background-color: rgba(255, 255, 255, 0.03);\n    border: 1px solid rgba(255, 255, 255, 0.15);\n    border-radius: 8px;\n    padding: 20px;\n  }\n\n  .iiot-card-header-inner {\n    display: flex;\n    flex-direction: column;\n    gap: 4px;\n    border-bottom: 1px solid rgba(255, 255, 255, 0.1);\n    padding-bottom: 10px;\n  }\n\n  .iiot-card-badge {\n    font-size: 0.72rem;\n    font-weight: 700;\n    opacity: 0.55;\n    letter-spacing: 1px;\n    color: inherit;\n  }\n\n  .iiot-card-title {\n    font-size: 1rem;\n    font-weight: 600;\n    color: inherit;\n  }\n\n  .iiot-card-text {\n    font-size: 0.88rem;\n    line-height: 1.5;\n    opacity: 0.85;\n    margin: 0;\n  }\n\n  .iiot-vision-section {\n    background-color: rgba(255, 255, 255, 0.03);\n    border: 1px solid rgba(255, 255, 255, 0.15);\n    border-radius: 8px;\n    padding: 20px;\n    display: flex;\n    flex-direction: column;\n    gap: 16px;\n  }\n\n  .iiot-topology-container {\n    display: flex;\n    flex-direction: column;\n    align-items: center;\n    gap: 12px;\n    padding: 10px 0;\n  }\n\n  .iiot-central-db {\n    background-color: rgba(255, 255, 255, 0.08);\n    border: 1px solid rgba(255, 255, 255, 0.4);\n    font-weight: 700;\n    font-size: 0.9rem;\n    padding: 10px 24px;\n    border-radius: 6px;\n    letter-spacing: 1px;\n    text-align: center;\n  }\n\n  .iiot-topology-branches {\n    display: grid;\n    grid-template-columns: repeat(3, 1fr);\n    gap: 16px;\n    width: 100%;\n  }\n\n  .iiot-branch {\n    display: flex;\n    flex-direction: column;\n    align-items: center;\n    gap: 6px;\n  }\n\n  .iiot-branch-line {\n    font-size: 0.9rem;\n    opacity: 0.5;\n  }\n\n  .iiot-branch-node {\n    background-color: rgba(255, 255, 255, 0.03);\n    border: 1px solid rgba(255, 255, 255, 0.15);\n    border-radius: 6px;\n    padding: 8px 10px;\n    font-size: 0.82rem;\n    font-weight: 500;\n    text-align: center;\n    width: 100%;\n    box-sizing: border-box;\n  }\n\n  .iiot-sub-arrow {\n    font-size: 0.85rem;\n    opacity: 0.5;\n    margin: -2px 0;\n  }\n\n  .iiot-ai-node {\n    background-color: rgba(255, 255, 255, 0.06);\n    border: 1px solid rgba(255, 255, 255, 0.3);\n    font-weight: 600;\n  }\n\n  .iiot-flow-chain {\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    gap: 8px;\n    overflow-x: auto;\n    padding: 4px 0;\n  }\n\n  .iiot-flow-node {\n    flex: 1;\n    min-width: 100px;\n  }\n\n  .iiot-node-box {\n    background-color: rgba(255, 255, 255, 0.03);\n    border: 1px solid rgba(255, 255, 255, 0.15);\n    border-radius: 6px;\n    padding: 8px 6px;\n    text-align: center;\n    font-size: 0.82rem;\n    font-weight: 500;\n    color: inherit;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    min-height: 40px;\n    box-sizing: border-box;\n  }\n\n  .iiot-highlight-node .iiot-node-box {\n    background-color: rgba(255, 255, 255, 0.08);\n    border: 1px solid rgba(255, 255, 255, 0.4);\n    font-weight: 700;\n  }\n\n  .iiot-flow-arrow {\n    font-size: 0.9rem;\n    opacity: 0.45;\n    user-select: none;\n    flex-shrink: 0;\n  }\n\n  .iiot-statement-banner {\n    background-color: rgba(13, 35, 58, 0.6);\n    border: 1px solid rgba(255, 255, 255, 0.2);\n    border-radius: 8px;\n    padding: 16px 20px;\n    text-align: center;\n  }\n\n  .iiot-statement-text {\n    font-size: 0.95rem;\n    font-weight: 500;\n    color: #ffffff;\n    line-height: 1.5;\n  }\n\n  @media (max-width: 850px) {\n    .iiot-topology-branches {\n      grid-template-columns: 1fr;\n      gap: 12px;\n    }\n\n    .iiot-flow-chain {\n      flex-direction: column;\n      gap: 8px;\n    }\n\n    .iiot-flow-node {\n      width: 100%;\n      max-width: 280px;\n    }\n\n    .iiot-flow-arrow {\n      transform: rotate(90deg);\n      margin: 2px 0;\n    }\n  }\n<\/style><\/div>       \n       \t     <\/div>\n  <\/div>\n<\/div>\n<!-- end Content Box Sliding Effect -->\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-c420a35 e-con e-atomic-element e-flexbox-base e-b7883c9\" data-id=\"c420a35\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"c420a35\">\n    \t\t<div class=\"elementor-element elementor-element-b392ccf elementor-widget elementor-widget-ucaddon_sliding_content_box\" data-id=\"b392ccf\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"ucaddon_sliding_content_box.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n<!-- start Content Box Sliding Effect -->\n<style>\/* widget: Content Box Sliding Effect *\/\n\n#uc_sliding_content_box_elementor_b392ccf {\n\tbox-sizing: border-box;\n    overflow:hidden;\n}\n\n.ue-title\n{\n  font-size:21px;\n  width:100%;\n}\n\n.ue-text\n{\n  width:100%;\n}\n\n.ue-btn-wrapper\n{\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_b392ccf .ue-content-box-inner\n{\n  display:flex;\n  position:relative;\n}\n\n#uc_sliding_content_box_elementor_b392ccf .ue-overlay\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n}\n\n#uc_sliding_content_box_elementor_b392ccf .ue-content-box-wrapper\n{\n  position:relative;\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_b392ccf .ue-bg\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n  transition:0.5s;\n}\n\n#uc_sliding_content_box_elementor_b392ccf:hover .ue-bg\n{\n transform:scale(1.1,1.1);\n}\n\n\n#uc_sliding_content_box_elementor_b392ccf:hover .moveFromLeft\n{\n  animation: moveFromLeft 0.5s;\n}\n\n#uc_sliding_content_box_elementor_b392ccf:hover .moveFromRight\n{\n  animation: moveFromRight 0.5s;\n}\n\n#uc_sliding_content_box_elementor_b392ccf:hover .moveFromBottom\n{\n  animation: moveFromBottom 0.5s;\n}\n\n@-webkit-keyframes moveFromLeft {\n from {\n -webkit-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromLeft {\n from {\n -moz-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromLeft {\n from {\n -ms-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromRight {\n from {\n -webkit-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromRight {\n from {\n -moz-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromRight {\n from {\n -ms-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromBottom {\n from {\n -webkit-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromBottom {\n from {\n -moz-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromBottom {\n from {\n -ms-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateY(0%);\n opacity: 1;\n}\n}\n\n<\/style>\n\n<div class=\"ue-content-box\" id=\"uc_sliding_content_box_elementor_b392ccf\">\n  \n  <div class=\"ue-content-box-inner\">\n    <div class=\"ue-bg\"><\/div>\n    <div class=\"ue-overlay\"><\/div>\n    \n     <div class=\"ue-content-box-wrapper\">\n\t\t\t\n\t\t<div class=\"ue-text moveFromLeft\"><div class=\"iiot-card-container\">\n  \n  <!-- Header Bar -->\n  <div class=\"iiot-card-header\">\n    <div class=\"iiot-header-title\">\n      <h3>Architecture de performance et de conservation des bases de donn\u00e9es<\/h3>\n    <\/div>\n  <\/div>\n\n  <div class=\"iiot-card-content\">\n    <div class=\"iiot-content-inner\">\n\n      <!-- Section 1: Database Performance -->\n      <div class=\"iiot-section-box\">\n        <div class=\"iiot-card-header-inner\">\n          <span class=\"iiot-card-badge\">\u00c9VOLUTIVIT\u00c9 ET CHARGE DE TRAVAIL<\/span>\n          <span class=\"iiot-card-title\">Con\u00e7u pour les volumes de donn\u00e9es industriels<\/span>\n        <\/div>\n        <p class=\"iiot-card-text\">\n          Les applications industrielles g\u00e9n\u00e8rent d'\u00e9normes volumes de donn\u00e9es. L'optimisation des performances repose sur l'\u00e9valuation de param\u00e8tres op\u00e9rationnels cl\u00e9s :\n        <\/p>\n\n        <!-- Factor Tags Grid -->\n        <div class=\"iiot-grid-tags\">\n          <span class=\"iiot-tag\">Structure de donn\u00e9es<\/span>\n          <span class=\"iiot-tag\">Indexation<\/span>\n          <span class=\"iiot-tag\">Conception des requ\u00eates<\/span>\n          <span class=\"iiot-tag\">Volume de donn\u00e9es<\/span>\n          <span class=\"iiot-tag\">Fr\u00e9quence d'\u00e9criture<\/span>\n          <span class=\"iiot-tag\">Fr\u00e9quence de lecture<\/span>\n          <span class=\"iiot-tag\">Conservation historique<\/span>\n          <span class=\"iiot-tag\">Mat\u00e9riel<\/span>\n          <span class=\"iiot-tag\">Architecture de l'application<\/span>\n        <\/div>\n\n        <!-- Performance Banner -->\n        <div class=\"iiot-statement-banner\">\n          <div class=\"iiot-statement-text\">\n            GPLG con\u00e7oit des solutions de bases de donn\u00e9es en fonction de la charge de travail pr\u00e9vue, plut\u00f4t que de partir du principe que toutes les applications n\u00e9cessitent la m\u00eame architecture.\n          <\/div>\n        <\/div>\n      <\/div>\n\n      <!-- Section 2: Data Retention & Management -->\n      <div class=\"iiot-section-box\">\n        <div class=\"iiot-card-header-inner\">\n          <span class=\"iiot-card-badge\">DONN\u00c9ES HISTORIQUES<\/span>\n          <span class=\"iiot-card-title\">Gestion du patrimoine industriel<\/span>\n        <\/div>\n        <p class=\"iiot-card-text\">\n          Les syst\u00e8mes industriels accumulent des donn\u00e9es au fil des mois, voire des ann\u00e9es. Une architecture de base de donn\u00e9es robuste r\u00e9pond \u00e0 des crit\u00e8res structurels essentiels :\n        <\/p>\n\n        <!-- Criteria Cards Grid -->\n        <div class=\"iiot-criteria-grid\">\n          \n          <div class=\"iiot-criteria-card\">\n            <div class=\"iiot-criteria-title\">Que faut-il conserver ?<\/div>\n            <p class=\"iiot-criteria-desc\">Tous les signaux ne n\u00e9cessitent pas forc\u00e9ment un stockage permanent.<\/p>\n          <\/div>\n\n          <div class=\"iiot-criteria-card\">\n            <div class=\"iiot-criteria-title\">Combien de temps faut-il le conserver ?<\/div>\n            <p class=\"iiot-criteria-desc\">Les exigences en mati\u00e8re de conservation d\u00e9pendent des besoins sp\u00e9cifiques de chaque application.<\/p>\n          <\/div>\n\n          <div class=\"iiot-criteria-card\">\n            <div class=\"iiot-criteria-title\">Comment aborder l'histoire ?<\/div>\n            <p class=\"iiot-criteria-desc\">Les donn\u00e9es fr\u00e9quemment consult\u00e9es n\u00e9cessitent une optimisation diff\u00e9rente de celle des dossiers archiv\u00e9s.<\/p>\n          <\/div>\n\n          <div class=\"iiot-criteria-card\">\n            <div class=\"iiot-criteria-title\">Comment les donn\u00e9es devraient-elles \u00e9voluer ?<\/div>\n            <p class=\"iiot-criteria-desc\">L'architecture doit syst\u00e9matiquement tenir compte des volumes de donn\u00e9es futurs.<\/p>\n          <\/div>\n\n        <\/div>\n      <\/div>\n\n    <\/div>\n  <\/div>\n<\/div>\n\n<style>\n  .iiot-card-container {\n    width: 100%;\n    max-width: 100%;\n    margin: 20px 0;\n    border: 1px solid rgba(255, 255, 255, 0.2);\n    border-radius: 10px;\n    background-color: transparent;\n    font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;\n    overflow: hidden;\n    box-sizing: border-box;\n  }\n\n  .iiot-card-header {\n    display: flex;\n    align-items: center;\n    padding: 18px 24px;\n    background-color: rgba(13, 35, 58, 0.85);\n    backdrop-filter: blur(5px);\n    color: #ffffff;\n  }\n\n  .iiot-header-title h3 {\n    margin: 0;\n    font-size: 1.15rem;\n    font-weight: 600;\n    color: #ffffff !important;\n  }\n\n  .iiot-content-inner {\n    padding: 24px;\n    border-top: 1px solid rgba(255, 255, 255, 0.1);\n    display: flex;\n    flex-direction: column;\n    gap: 20px;\n  }\n\n  .iiot-section-box {\n    background-color: rgba(255, 255, 255, 0.03);\n    border: 1px solid rgba(255, 255, 255, 0.15);\n    border-radius: 8px;\n    padding: 20px;\n    display: flex;\n    flex-direction: column;\n    gap: 16px;\n  }\n\n  .iiot-card-header-inner {\n    display: flex;\n    flex-direction: column;\n    gap: 4px;\n    border-bottom: 1px solid rgba(255, 255, 255, 0.1);\n    padding-bottom: 10px;\n  }\n\n  .iiot-card-badge {\n    font-size: 0.72rem;\n    font-weight: 700;\n    opacity: 0.55;\n    letter-spacing: 1px;\n    color: inherit;\n  }\n\n  .iiot-card-title {\n    font-size: 1rem;\n    font-weight: 600;\n    color: inherit;\n  }\n\n  .iiot-card-text {\n    font-size: 0.88rem;\n    line-height: 1.5;\n    opacity: 0.85;\n    margin: 0;\n  }\n\n  \/* Factor Tags Grid *\/\n  .iiot-grid-tags {\n    display: flex;\n    flex-wrap: wrap;\n    gap: 8px;\n    margin: 4px 0;\n  }\n\n  .iiot-tag {\n    background-color: rgba(255, 255, 255, 0.05);\n    border: 1px solid rgba(255, 255, 255, 0.2);\n    padding: 8px 14px;\n    border-radius: 6px;\n    font-size: 0.82rem;\n    font-weight: 500;\n    color: inherit;\n  }\n\n  \/* Performance Statement Banner *\/\n  .iiot-statement-banner {\n    background-color: rgba(13, 35, 58, 0.6);\n    border: 1px solid rgba(255, 255, 255, 0.2);\n    border-radius: 8px;\n    padding: 16px 20px;\n    text-align: center;\n  }\n\n  .iiot-statement-text {\n    font-size: 0.95rem;\n    font-weight: 500;\n    color: #ffffff;\n    line-height: 1.5;\n  }\n\n  \/* Retention Criteria Grid *\/\n  .iiot-criteria-grid {\n    display: grid;\n    grid-template-columns: repeat(2, 1fr);\n    gap: 12px;\n  }\n\n  .iiot-criteria-card {\n    background-color: rgba(255, 255, 255, 0.03);\n    border: 1px solid rgba(255, 255, 255, 0.12);\n    border-radius: 6px;\n    padding: 14px;\n    display: flex;\n    flex-direction: column;\n    gap: 6px;\n  }\n\n  .iiot-criteria-title {\n    font-size: 0.88rem;\n    font-weight: 600;\n    color: inherit;\n  }\n\n  .iiot-criteria-desc {\n    font-size: 0.82rem;\n    line-height: 1.4;\n    opacity: 0.75;\n    margin: 0;\n  }\n\n  \/* Responsive Rules *\/\n  @media (max-width: 850px) {\n    .iiot-criteria-grid {\n      grid-template-columns: 1fr;\n    }\n  }\n<\/style><\/div>       \n       \t     <\/div>\n  <\/div>\n<\/div>\n<!-- end Content Box Sliding Effect -->\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-a2a7a4e e-con e-atomic-element e-flexbox-base e-b41ff9a\" data-id=\"a2a7a4e\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"a2a7a4e\">\n    \t\t<div class=\"elementor-element elementor-element-624af34 elementor-widget elementor-widget-ucaddon_sliding_content_box\" data-id=\"624af34\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"ucaddon_sliding_content_box.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n<!-- start Content Box Sliding Effect -->\n<style>\/* widget: Content Box Sliding Effect *\/\n\n#uc_sliding_content_box_elementor_624af34 {\n\tbox-sizing: border-box;\n    overflow:hidden;\n}\n\n.ue-title\n{\n  font-size:21px;\n  width:100%;\n}\n\n.ue-text\n{\n  width:100%;\n}\n\n.ue-btn-wrapper\n{\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_624af34 .ue-content-box-inner\n{\n  display:flex;\n  position:relative;\n}\n\n#uc_sliding_content_box_elementor_624af34 .ue-overlay\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n}\n\n#uc_sliding_content_box_elementor_624af34 .ue-content-box-wrapper\n{\n  position:relative;\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_624af34 .ue-bg\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n  transition:0.5s;\n}\n\n#uc_sliding_content_box_elementor_624af34:hover .ue-bg\n{\n transform:scale(1.1,1.1);\n}\n\n\n#uc_sliding_content_box_elementor_624af34:hover .moveFromLeft\n{\n  animation: moveFromLeft 0.5s;\n}\n\n#uc_sliding_content_box_elementor_624af34:hover .moveFromRight\n{\n  animation: moveFromRight 0.5s;\n}\n\n#uc_sliding_content_box_elementor_624af34:hover .moveFromBottom\n{\n  animation: moveFromBottom 0.5s;\n}\n\n@-webkit-keyframes moveFromLeft {\n from {\n -webkit-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromLeft {\n from {\n -moz-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromLeft {\n from {\n -ms-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromRight {\n from {\n -webkit-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromRight {\n from {\n -moz-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromRight {\n from {\n -ms-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromBottom {\n from {\n -webkit-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromBottom {\n from {\n -moz-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromBottom {\n from {\n -ms-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateY(0%);\n opacity: 1;\n}\n}\n\n<\/style>\n\n<div class=\"ue-content-box\" id=\"uc_sliding_content_box_elementor_624af34\">\n  \n  <div class=\"ue-content-box-inner\">\n    <div class=\"ue-bg\"><\/div>\n    <div class=\"ue-overlay\"><\/div>\n    \n     <div class=\"ue-content-box-wrapper\">\n\t\t\t\n\t\t<div class=\"ue-text moveFromRight\"><div class=\"iiot-card-container\">\n  \n  <!-- Header Bar -->\n  <div class=\"iiot-card-header\">\n    <div class=\"iiot-header-title\">\n      <h3>S\u00e9curit\u00e9 des bases de donn\u00e9es, architecture de sauvegarde et de restauration<\/h3>\n    <\/div>\n  <\/div>\n\n  <div class=\"iiot-card-content\">\n    <div class=\"iiot-content-inner\">\n\n      <!-- Section 1: Database Security -->\n      <div class=\"iiot-section-box\">\n        <div class=\"iiot-card-header-inner\">\n          <span class=\"iiot-card-badge\">PROTECTION ET ACC\u00c8S<\/span>\n          <span class=\"iiot-card-title\">Protection des informations industrielles<\/span>\n        <\/div>\n        <p class=\"iiot-card-text\">\n          Les bases de donn\u00e9es industrielles contiennent des informations op\u00e9rationnelles sensibles. La s\u00e9curit\u00e9 est \u00e9valu\u00e9e comme faisant partie int\u00e9grante de l'architecture industrielle globale \u00e0 travers plusieurs niveaux de protection cl\u00e9s :\n        <\/p>\n\n        <!-- Security Factor Tags Grid -->\n        <div class=\"iiot-grid-tags\">\n          <span class=\"iiot-tag\">Authentification des utilisateurs<\/span>\n          <span class=\"iiot-tag\">Droits d'acc\u00e8s<\/span>\n          <span class=\"iiot-tag\">Acc\u00e8s aux applications<\/span>\n          <span class=\"iiot-tag\">Autorisations d'acc\u00e8s \u00e0 la base de donn\u00e9es<\/span>\n          <span class=\"iiot-tag\">Architecture r\u00e9seau<\/span>\n          <span class=\"iiot-tag\">Strat\u00e9gie de sauvegarde<\/span>\n          <span class=\"iiot-tag\">Protection des donn\u00e9es<\/span>\n          <span class=\"iiot-tag\">Segmentation du syst\u00e8me<\/span>\n        <\/div>\n      <\/div>\n\n      <!-- Section 2: Backup & Recovery -->\n      <div class=\"iiot-section-box\">\n        <div class=\"iiot-card-header-inner\">\n          <span class=\"iiot-card-badge\">CONTINUIT\u00c9 DES ACTIVIT\u00c9S<\/span>\n          <span class=\"iiot-card-title\">Protection des donn\u00e9es industrielles critiques<\/span>\n        <\/div>\n        <p class=\"iiot-card-text\">\n          Une base de donn\u00e9es peut contenir plusieurs ann\u00e9es d'historique de production et des enregistrements op\u00e9rationnels essentiels. Les strat\u00e9gies de r\u00e9silience globales englobent des mesures de reprise essentielles :\n        <\/p>\n\n        <!-- Backup & Recovery Options Grid -->\n        <div class=\"iiot-criteria-grid\">\n          \n          <div class=\"iiot-criteria-card\">\n            <div class=\"iiot-criteria-title\">Sauvegardes programm\u00e9es<\/div>\n            <p class=\"iiot-criteria-desc\">Des instantan\u00e9s automatis\u00e9s et r\u00e9guliers, adapt\u00e9s au rythme op\u00e9rationnel et \u00e0 la fr\u00e9quence des changements.<\/p>\n          <\/div>\n\n          <div class=\"iiot-criteria-card\">\n            <div class=\"iiot-criteria-title\">V\u00e9rification de la sauvegarde<\/div>\n            <p class=\"iiot-criteria-desc\">Validation r\u00e9guli\u00e8re visant \u00e0 garantir que les sauvegardes sont compl\u00e8tes et exemptes de corruption.<\/p>\n          <\/div>\n\n          <div class=\"iiot-criteria-card\">\n            <div class=\"iiot-criteria-title\">Proc\u00e9dures de r\u00e9tablissement<\/div>\n            <p class=\"iiot-criteria-desc\">Des proc\u00e9dures op\u00e9rationnelles standard claires et document\u00e9es visant \u00e0 r\u00e9duire au minimum les temps d'arr\u00eat pendant la remise en \u00e9tat.<\/p>\n          <\/div>\n\n          <div class=\"iiot-criteria-card\">\n            <div class=\"iiot-criteria-title\">Redondance des donn\u00e9es<\/div>\n            <p class=\"iiot-criteria-desc\">R\u00e9plication multi-n\u0153uds ou multi-sites pour se pr\u00e9munir contre les pannes mat\u00e9rielles.<\/p>\n          <\/div>\n\n          <div class=\"iiot-criteria-card\">\n            <div class=\"iiot-criteria-title\">Planification de la reprise apr\u00e8s sinistre<\/div>\n            <p class=\"iiot-criteria-desc\">Cadre strat\u00e9gique pour la remise en \u00e9tat de syst\u00e8mes complets \u00e0 la suite d\u2019\u00e9v\u00e9nements catastrophiques.<\/p>\n          <\/div>\n\n          <div class=\"iiot-criteria-card\">\n            <div class=\"iiot-criteria-title\">Politiques de conservation<\/div>\n            <p class=\"iiot-criteria-desc\">Des cycles de vie structur\u00e9s d\u00e9finissant la dur\u00e9e de vie des instantan\u00e9s et les r\u00e8gles d'archivage.<\/p>\n          <\/div>\n\n        <\/div>\n\n        <!-- Strong Statement Banner -->\n        <div class=\"iiot-statement-banner\">\n          <div class=\"iiot-statement-text\">\n            Une base de donn\u00e9es n'a de valeur que si les informations qu'elle contient peuvent \u00eatre r\u00e9cup\u00e9r\u00e9es lorsque cela s'av\u00e8re n\u00e9cessaire.\n          <\/div>\n        <\/div>\n      <\/div>\n\n    <\/div>\n  <\/div>\n<\/div>\n\n<style>\n  .iiot-card-container {\n    width: 100%;\n    max-width: 100%;\n    margin: 20px 0;\n    border: 1px solid rgba(255, 255, 255, 0.2);\n    border-radius: 10px;\n    background-color: transparent;\n    font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;\n    overflow: hidden;\n    box-sizing: border-box;\n  }\n\n  .iiot-card-header {\n    display: flex;\n    align-items: center;\n    padding: 18px 24px;\n    background-color: rgba(13, 35, 58, 0.85);\n    backdrop-filter: blur(5px);\n    color: #ffffff;\n  }\n\n  .iiot-header-title h3 {\n    margin: 0;\n    font-size: 1.15rem;\n    font-weight: 600;\n    color: #ffffff !important;\n  }\n\n  .iiot-content-inner {\n    padding: 24px;\n    border-top: 1px solid rgba(255, 255, 255, 0.1);\n    display: flex;\n    flex-direction: column;\n    gap: 20px;\n  }\n\n  .iiot-section-box {\n    background-color: rgba(255, 255, 255, 0.03);\n    border: 1px solid rgba(255, 255, 255, 0.15);\n    border-radius: 8px;\n    padding: 20px;\n    display: flex;\n    flex-direction: column;\n    gap: 16px;\n  }\n\n  .iiot-card-header-inner {\n    display: flex;\n    flex-direction: column;\n    gap: 4px;\n    border-bottom: 1px solid rgba(255, 255, 255, 0.1);\n    padding-bottom: 10px;\n  }\n\n  .iiot-card-badge {\n    font-size: 0.72rem;\n    font-weight: 700;\n    opacity: 0.55;\n    letter-spacing: 1px;\n    color: inherit;\n  }\n\n  .iiot-card-title {\n    font-size: 1rem;\n    font-weight: 600;\n    color: inherit;\n  }\n\n  .iiot-card-text {\n    font-size: 0.88rem;\n    line-height: 1.5;\n    opacity: 0.85;\n    margin: 0;\n  }\n\n  \/* Security Factor Tags Grid *\/\n  .iiot-grid-tags {\n    display: flex;\n    flex-wrap: wrap;\n    gap: 8px;\n    margin: 4px 0;\n  }\n\n  .iiot-tag {\n    background-color: rgba(255, 255, 255, 0.05);\n    border: 1px solid rgba(255, 255, 255, 0.2);\n    padding: 8px 14px;\n    border-radius: 6px;\n    font-size: 0.82rem;\n    font-weight: 500;\n    color: inherit;\n  }\n\n  \/* Backup & Recovery Grid *\/\n  .iiot-criteria-grid {\n    display: grid;\n    grid-template-columns: repeat(2, 1fr);\n    gap: 12px;\n  }\n\n  .iiot-criteria-card {\n    background-color: rgba(255, 255, 255, 0.03);\n    border: 1px solid rgba(255, 255, 255, 0.12);\n    border-radius: 6px;\n    padding: 14px;\n    display: flex;\n    flex-direction: column;\n    gap: 6px;\n  }\n\n  .iiot-criteria-title {\n    font-size: 0.88rem;\n    font-weight: 600;\n    color: inherit;\n  }\n\n  .iiot-criteria-desc {\n    font-size: 0.82rem;\n    line-height: 1.4;\n    opacity: 0.75;\n    margin: 0;\n  }\n\n  \/* Statement Banner *\/\n  .iiot-statement-banner {\n    background-color: rgba(13, 35, 58, 0.6);\n    border: 1px solid rgba(255, 255, 255, 0.2);\n    border-radius: 8px;\n    padding: 16px 20px;\n    text-align: center;\n    margin-top: 4px;\n  }\n\n  .iiot-statement-text {\n    font-size: 0.95rem;\n    font-weight: 500;\n    color: #ffffff;\n    line-height: 1.5;\n  }\n\n  \/* Responsive Rules *\/\n  @media (max-width: 850px) {\n    .iiot-criteria-grid {\n      grid-template-columns: 1fr;\n    }\n  }\n<\/style><\/div>       \n       \t     <\/div>\n  <\/div>\n<\/div>\n<!-- end Content Box Sliding Effect -->\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-94d462c e-con e-atomic-element e-flexbox-base e-b890e07\" data-id=\"94d462c\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"94d462c\">\n    \t\t<div class=\"elementor-element elementor-element-671cd36 elementor-widget elementor-widget-ucaddon_sliding_content_box\" data-id=\"671cd36\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"ucaddon_sliding_content_box.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n<!-- start Content Box Sliding Effect -->\n<style>\/* widget: Content Box Sliding Effect *\/\n\n#uc_sliding_content_box_elementor_671cd36 {\n\tbox-sizing: border-box;\n    overflow:hidden;\n}\n\n.ue-title\n{\n  font-size:21px;\n  width:100%;\n}\n\n.ue-text\n{\n  width:100%;\n}\n\n.ue-btn-wrapper\n{\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_671cd36 .ue-content-box-inner\n{\n  display:flex;\n  position:relative;\n}\n\n#uc_sliding_content_box_elementor_671cd36 .ue-overlay\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n}\n\n#uc_sliding_content_box_elementor_671cd36 .ue-content-box-wrapper\n{\n  position:relative;\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_671cd36 .ue-bg\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n  transition:0.5s;\n}\n\n#uc_sliding_content_box_elementor_671cd36:hover .ue-bg\n{\n transform:scale(1.1,1.1);\n}\n\n\n#uc_sliding_content_box_elementor_671cd36:hover .moveFromLeft\n{\n  animation: moveFromLeft 0.5s;\n}\n\n#uc_sliding_content_box_elementor_671cd36:hover .moveFromRight\n{\n  animation: moveFromRight 0.5s;\n}\n\n#uc_sliding_content_box_elementor_671cd36:hover .moveFromBottom\n{\n  animation: moveFromBottom 0.5s;\n}\n\n@-webkit-keyframes moveFromLeft {\n from {\n -webkit-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromLeft {\n from {\n -moz-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromLeft {\n from {\n -ms-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromRight {\n from {\n -webkit-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromRight {\n from {\n -moz-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromRight {\n from {\n -ms-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromBottom {\n from {\n -webkit-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromBottom {\n from {\n -moz-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromBottom {\n from {\n -ms-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateY(0%);\n opacity: 1;\n}\n}\n\n<\/style>\n\n<div class=\"ue-content-box\" id=\"uc_sliding_content_box_elementor_671cd36\">\n  \n  <div class=\"ue-content-box-inner\">\n    <div class=\"ue-bg\"><\/div>\n    <div class=\"ue-overlay\"><\/div>\n    \n     <div class=\"ue-content-box-wrapper\">\n\t\t\t\n\t\t<div class=\"ue-text moveFromLeft\"><div class=\"iiot-card-container\">\n  <div class=\"iiot-card-header\">\n    <div class=\"iiot-header-title\">\n      <h3>Processus de mise en \u0153uvre d'une base de donn\u00e9es<\/h3>\n    <\/div>\n  <\/div>\n\n  <div class=\"iiot-card-content\">\n    <div class=\"iiot-content-inner\">\n      <div class=\"iiot-section-box\">\n        <div class=\"iiot-card-header-inner\">\n          <span class=\"iiot-card-badge\">FLUX DE TRAVAIL D'ING\u00c9NIERIE<\/span>\n          <span class=\"iiot-card-title\">Des sp\u00e9cifications \u00e0 la production<\/span>\n        <\/div>\n        <p class=\"iiot-card-text\">\n          Un processus d'ing\u00e9nierie structur\u00e9 en 7 \u00e9tapes visant \u00e0 garantir un d\u00e9ploiement fiable, \u00e9volutif et s\u00e9curis\u00e9 de bases de donn\u00e9es industrielles :\n        <\/p>\n\n        <div class=\"iiot-process-grid\">\n          <div class=\"iiot-process-step\">\n            <div class=\"iiot-step-number\">01<\/div>\n            <div class=\"iiot-step-body\">\n              <div class=\"iiot-step-title\">Conditions requises<\/div>\n              <p class=\"iiot-step-desc\">Comprendre quelles informations doivent \u00eatre conserv\u00e9es et pourquoi.<\/p>\n            <\/div>\n          <\/div>\n\n          <div class=\"iiot-process-step\">\n            <div class=\"iiot-step-number\">02<\/div>\n            <div class=\"iiot-step-body\">\n              <div class=\"iiot-step-title\">Architecture des donn\u00e9es<\/div>\n              <p class=\"iiot-step-desc\">Concevez la structure de la base de donn\u00e9es et ses relations.<\/p>\n            <\/div>\n          <\/div>\n\n          <div class=\"iiot-process-step\">\n            <div class=\"iiot-step-number\">03<\/div>\n            <div class=\"iiot-step-body\">\n              <div class=\"iiot-step-title\">Choix des technologies<\/div>\n              <p class=\"iiot-step-desc\">Choisissez la technologie de base de donn\u00e9es appropri\u00e9e.<\/p>\n            <\/div>\n          <\/div>\n\n          <div class=\"iiot-process-step\">\n            <div class=\"iiot-step-number\">04<\/div>\n            <div class=\"iiot-step-body\">\n              <div class=\"iiot-step-title\">D\u00e9veloppement<\/div>\n              <p class=\"iiot-step-desc\">Mettre en place les tables, les relations, les requ\u00eates et les composants de base de donn\u00e9es n\u00e9cessaires.<\/p>\n            <\/div>\n          <\/div>\n\n          <div class=\"iiot-process-step\">\n            <div class=\"iiot-step-number\">05<\/div>\n            <div class=\"iiot-step-body\">\n              <div class=\"iiot-step-title\">L'int\u00e9gration<\/div>\n              <p class=\"iiot-step-desc\">Connectez la base de donn\u00e9es \u00e0 des logiciels industriels, \u00e0 des syst\u00e8mes SCADA, \u00e0 l'IoT ou \u00e0 d'autres syst\u00e8mes.<\/p>\n            <\/div>\n          <\/div>\n\n          <div class=\"iiot-process-step\">\n            <div class=\"iiot-step-number\">06<\/div>\n            <div class=\"iiot-step-body\">\n              <div class=\"iiot-step-title\">Tests<\/div>\n              <p class=\"iiot-step-desc\">V\u00e9rifier les performances, l'int\u00e9grit\u00e9 des donn\u00e9es et le comportement des applications.<\/p>\n            <\/div>\n          <\/div>\n\n          <div class=\"iiot-process-step iiot-step-full\">\n            <div class=\"iiot-step-number\">07<\/div>\n            <div class=\"iiot-step-body\">\n              <div class=\"iiot-step-title\">D\u00e9ploiement<\/div>\n              <p class=\"iiot-step-desc\">D\u00e9ployez la base de donn\u00e9es dans l'environnement de production et mettez en place les proc\u00e9dures de maintenance et de sauvegarde n\u00e9cessaires.<\/p>\n            <\/div>\n          <\/div>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/div>\n\n<style>\n  .iiot-card-container {\n    width: 100%;\n    margin: 20px 0;\n    border: 1px solid rgba(255, 255, 255, 0.2);\n    border-radius: 10px;\n    background-color: transparent;\n    font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;\n    overflow: hidden;\n    box-sizing: border-box;\n  }\n\n  .iiot-card-header {\n    display: flex;\n    align-items: center;\n    padding: 18px 24px;\n    background-color: rgba(13, 35, 58, 0.85);\n    backdrop-filter: blur(5px);\n    color: #ffffff;\n  }\n\n  .iiot-header-title h3 {\n    margin: 0;\n    font-size: 1.15rem;\n    font-weight: 600;\n    color: #ffffff !important;\n  }\n\n  .iiot-content-inner {\n    padding: 24px;\n    border-top: 1px solid rgba(255, 255, 255, 0.1);\n  }\n\n  .iiot-section-box {\n    background-color: rgba(255, 255, 255, 0.03);\n    border: 1px solid rgba(255, 255, 255, 0.15);\n    border-radius: 8px;\n    padding: 20px;\n    display: flex;\n    flex-direction: column;\n    gap: 16px;\n  }\n\n  .iiot-card-header-inner {\n    display: flex;\n    flex-direction: column;\n    gap: 4px;\n    border-bottom: 1px solid rgba(255, 255, 255, 0.1);\n    padding-bottom: 10px;\n  }\n\n  .iiot-card-badge {\n    font-size: 0.72rem;\n    font-weight: 700;\n    opacity: 0.55;\n    letter-spacing: 1px;\n    color: inherit;\n  }\n\n  .iiot-card-title {\n    font-size: 1rem;\n    font-weight: 600;\n    color: inherit;\n  }\n\n  .iiot-card-text {\n    font-size: 0.88rem;\n    line-height: 1.5;\n    opacity: 0.85;\n    margin: 0;\n  }\n\n  .iiot-process-grid {\n    display: grid;\n    grid-template-columns: repeat(2, 1fr);\n    gap: 12px;\n  }\n\n  .iiot-process-step {\n    background-color: rgba(255, 255, 255, 0.03);\n    border: 1px solid rgba(255, 255, 255, 0.12);\n    border-radius: 6px;\n    padding: 14px;\n    display: flex;\n    align-items: flex-start;\n    gap: 14px;\n  }\n\n  .iiot-step-full {\n    grid-column: span 2;\n  }\n\n  .iiot-step-number {\n    font-size: 1.1rem;\n    font-weight: 800;\n    opacity: 0.4;\n    letter-spacing: -0.5px;\n    line-height: 1;\n    padding-top: 2px;\n  }\n\n  .iiot-step-body {\n    display: flex;\n    flex-direction: column;\n    gap: 4px;\n  }\n\n  .iiot-step-title {\n    font-size: 0.88rem;\n    font-weight: 600;\n    color: inherit;\n  }\n\n  .iiot-step-desc {\n    font-size: 0.82rem;\n    line-height: 1.4;\n    opacity: 0.75;\n    margin: 0;\n  }\n\n  @media (max-width: 850px) {\n    .iiot-process-grid {\n      grid-template-columns: 1fr;\n    }\n    .iiot-step-full {\n      grid-column: span 1;\n    }\n  }\n<\/style><\/div>       \n       \t     <\/div>\n  <\/div>\n<\/div>\n<!-- end Content Box Sliding Effect -->\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-54cfe0e e-con e-atomic-element e-flexbox-base e-d984cb7\" data-id=\"54cfe0e\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"54cfe0e\">\n    \t\t<div class=\"elementor-element elementor-element-a236921 elementor-widget elementor-widget-ucaddon_sliding_content_box\" data-id=\"a236921\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"ucaddon_sliding_content_box.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n<!-- start Content Box Sliding Effect -->\n<style>\/* widget: Content Box Sliding Effect *\/\n\n#uc_sliding_content_box_elementor_a236921 {\n\tbox-sizing: border-box;\n    overflow:hidden;\n}\n\n.ue-title\n{\n  font-size:21px;\n  width:100%;\n}\n\n.ue-text\n{\n  width:100%;\n}\n\n.ue-btn-wrapper\n{\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_a236921 .ue-content-box-inner\n{\n  display:flex;\n  position:relative;\n}\n\n#uc_sliding_content_box_elementor_a236921 .ue-overlay\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n}\n\n#uc_sliding_content_box_elementor_a236921 .ue-content-box-wrapper\n{\n  position:relative;\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_a236921 .ue-bg\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n  transition:0.5s;\n}\n\n#uc_sliding_content_box_elementor_a236921:hover .ue-bg\n{\n transform:scale(1.1,1.1);\n}\n\n\n#uc_sliding_content_box_elementor_a236921:hover .moveFromLeft\n{\n  animation: moveFromLeft 0.5s;\n}\n\n#uc_sliding_content_box_elementor_a236921:hover .moveFromRight\n{\n  animation: moveFromRight 0.5s;\n}\n\n#uc_sliding_content_box_elementor_a236921:hover .moveFromBottom\n{\n  animation: moveFromBottom 0.5s;\n}\n\n@-webkit-keyframes moveFromLeft {\n from {\n -webkit-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromLeft {\n from {\n -moz-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromLeft {\n from {\n -ms-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromRight {\n from {\n -webkit-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromRight {\n from {\n -moz-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromRight {\n from {\n -ms-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromBottom {\n from {\n -webkit-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromBottom {\n from {\n -moz-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromBottom {\n from {\n -ms-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateY(0%);\n opacity: 1;\n}\n}\n\n<\/style>\n\n<div class=\"ue-content-box\" id=\"uc_sliding_content_box_elementor_a236921\">\n  \n  <div class=\"ue-content-box-inner\">\n    <div class=\"ue-bg\"><\/div>\n    <div class=\"ue-overlay\"><\/div>\n    \n     <div class=\"ue-content-box-wrapper\">\n\t\t\t\n\t\t<div class=\"ue-text moveFromRight\"><div class=\"iiot-combined-wrapper\">\n  \n  <!-- Left Side: Applications Box -->\n  <div class=\"iiot-card-container\">\n    <div class=\"iiot-card-header\">\n      <div class=\"iiot-header-title\">\n        <h3>Applications<\/h3>\n      <\/div>\n    <\/div>\n\n    <div class=\"iiot-card-content\">\n      <div class=\"iiot-content-inner\">\n        <div class=\"iiot-section-box\">\n          <div class=\"iiot-card-header-inner\">\n            <span class=\"iiot-card-badge\">CAS D'UTILISATION<\/span>\n            <span class=\"iiot-card-title\">Domaines d'application des solutions de bases de donn\u00e9es<\/span>\n          <\/div>\n\n          <div class=\"iiot-apps-grid\">\n            \n            <div class=\"iiot-app-card\">\n              <div class=\"iiot-app-title\">Gestion de la production<\/div>\n              <p class=\"iiot-app-desc\">Informations structur\u00e9es sur la production et historique.<\/p>\n            <\/div>\n\n            <div class=\"iiot-app-card\">\n              <div class=\"iiot-app-title\">Surveillance des machines<\/div>\n              <p class=\"iiot-app-desc\">Stockage des \u00e9v\u00e9nements li\u00e9s aux machines et des informations op\u00e9rationnelles.<\/p>\n            <\/div>\n\n            <div class=\"iiot-app-card\">\n              <div class=\"iiot-app-title\">Gestion de la qualit\u00e9<\/div>\n              <p class=\"iiot-app-desc\">R\u00e9sultats des contr\u00f4les et dossiers qualit\u00e9.<\/p>\n            <\/div>\n\n            <div class=\"iiot-app-card\">\n              <div class=\"iiot-app-title\">Syst\u00e8mes de maintenance<\/div>\n              <p class=\"iiot-app-desc\">Historique de l'\u00e9quipement et informations relatives \u00e0 son entretien.<\/p>\n            <\/div>\n\n            <div class=\"iiot-app-card\">\n              <div class=\"iiot-app-title\">Les Applications Industrielles<\/div>\n              <p class=\"iiot-app-desc\">Infrastructure de donn\u00e9es pour les logiciels industriels sur mesure.<\/p>\n            <\/div>\n\n            <div class=\"iiot-app-card\">\n              <div class=\"iiot-app-title\">Analyse industrielle<\/div>\n              <p class=\"iiot-app-desc\">Donn\u00e9es historiques destin\u00e9es au reporting, \u00e0 l'analyse et \u00e0 l'optimisation.<\/p>\n            <\/div>\n\n          <\/div>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n\n  <!-- Right Side: Technology Stack Box -->\n  <div class=\"iiot-card-container\">\n    <div class=\"iiot-card-header\">\n      <div class=\"iiot-header-title\">\n        <h3>Pile technologique<\/h3>\n      <\/div>\n    <\/div>\n\n    <div class=\"iiot-card-content\">\n      <div class=\"iiot-content-inner\">\n        <div class=\"iiot-section-box\">\n          <div class=\"iiot-card-header-inner\">\n            <span class=\"iiot-card-badge\">STACK TECHNIQUE<\/span>\n            <span class=\"iiot-card-title\">Technologies de bases de donn\u00e9es que nous utilisons<\/span>\n          <\/div>\n\n          <div class=\"iiot-tech-stack-container\">\n            \n            <div class=\"iiot-tech-group\">\n              <div class=\"iiot-tech-group-title\">Bases de donn\u00e9es<\/div>\n              <div class=\"iiot-tech-chips\">\n                <span class=\"iiot-tech-chip\">Microsoft SQL Server<\/span>\n                <span class=\"iiot-tech-chip\">MySQL<\/span>\n                <span class=\"iiot-tech-chip\">PostgreSQL<\/span>\n              <\/div>\n            <\/div>\n\n            <div class=\"iiot-tech-group\">\n              <div class=\"iiot-tech-group-title\">D\u00e9veloppement<\/div>\n              <div class=\"iiot-tech-chips\">\n                <span class=\"iiot-tech-chip\">C#<\/span>\n                <span class=\"iiot-tech-chip\">Python<\/span>\n                <span class=\"iiot-tech-chip\">.NET<\/span>\n              <\/div>\n            <\/div>\n\n            <div class=\"iiot-tech-group\">\n              <div class=\"iiot-tech-group-title\">L'int\u00e9gration<\/div>\n              <div class=\"iiot-tech-chips\">\n                <span class=\"iiot-tech-chip\">API REST<\/span>\n                <span class=\"iiot-tech-chip\">OPC UA<\/span>\n                <span class=\"iiot-tech-chip\">MQTT<\/span>\n              <\/div>\n            <\/div>\n\n            <div class=\"iiot-tech-group\">\n              <div class=\"iiot-tech-group-title\">Infrastructures<\/div>\n              <div class=\"iiot-tech-chips\">\n                <span class=\"iiot-tech-chip\">Docker<\/span>\n                <span class=\"iiot-tech-chip\">Linux<\/span>\n              <\/div>\n            <\/div>\n\n          <\/div>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n\n<\/div>\n\n<style>\n  .iiot-combined-wrapper {\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    gap: 20px;\n    width: 100%;\n    margin: 20px 0;\n    box-sizing: border-box;\n  }\n\n  .iiot-card-container {\n    width: 100%;\n    border: 1px solid rgba(255, 255, 255, 0.2);\n    border-radius: 10px;\n    background-color: transparent;\n    font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;\n    overflow: hidden;\n    box-sizing: border-box;\n    display: flex;\n    flex-direction: column;\n  }\n\n  .iiot-card-header {\n    display: flex;\n    align-items: center;\n    padding: 18px 24px;\n    background-color: rgba(13, 35, 58, 0.85);\n    backdrop-filter: blur(5px);\n    color: #ffffff;\n  }\n\n  .iiot-header-title h3 {\n    margin: 0;\n    font-size: 1.15rem;\n    font-weight: 600;\n    color: #ffffff !important;\n  }\n\n  .iiot-card-content {\n    flex: 1;\n    display: flex;\n    flex-direction: column;\n  }\n\n  .iiot-content-inner {\n    padding: 24px;\n    border-top: 1px solid rgba(255, 255, 255, 0.1);\n    flex: 1;\n    display: flex;\n  }\n\n  .iiot-section-box {\n    background-color: rgba(255, 255, 255, 0.03);\n    border: 1px solid rgba(255, 255, 255, 0.15);\n    border-radius: 8px;\n    padding: 20px;\n    display: flex;\n    flex-direction: column;\n    gap: 16px;\n    width: 100%;\n  }\n\n  .iiot-card-header-inner {\n    display: flex;\n    flex-direction: column;\n    gap: 4px;\n    border-bottom: 1px solid rgba(255, 255, 255, 0.1);\n    padding-bottom: 10px;\n  }\n\n  .iiot-card-badge {\n    font-size: 0.72rem;\n    font-weight: 700;\n    opacity: 0.55;\n    letter-spacing: 1px;\n    color: inherit;\n  }\n\n  .iiot-card-title {\n    font-size: 1rem;\n    font-weight: 600;\n    color: inherit;\n  }\n\n  \/* Applications Grid (2 Columns inside left box) *\/\n  .iiot-apps-grid {\n    display: grid;\n    grid-template-columns: repeat(2, 1fr);\n    gap: 12px;\n  }\n\n  .iiot-app-card {\n    background-color: rgba(255, 255, 255, 0.03);\n    border: 1px solid rgba(255, 255, 255, 0.12);\n    border-radius: 6px;\n    padding: 14px;\n    display: flex;\n    flex-direction: column;\n    gap: 6px;\n  }\n\n  .iiot-app-title {\n    font-size: 0.88rem;\n    font-weight: 600;\n    color: inherit;\n  }\n\n  .iiot-app-desc {\n    font-size: 0.82rem;\n    line-height: 1.4;\n    opacity: 0.75;\n    margin: 0;\n  }\n\n  \/* Technology Stack Styles *\/\n  .iiot-tech-stack-container {\n    display: flex;\n    flex-direction: column;\n    gap: 16px;\n    margin-top: 4px;\n  }\n\n  .iiot-tech-group {\n    display: flex;\n    flex-direction: column;\n    gap: 8px;\n  }\n\n  .iiot-tech-group-title {\n    font-size: 0.78rem;\n    font-weight: 700;\n    text-transform: uppercase;\n    letter-spacing: 0.8px;\n    opacity: 0.5;\n  }\n\n  .iiot-tech-chips {\n    display: flex;\n    flex-wrap: wrap;\n    gap: 8px;\n  }\n\n  .iiot-tech-chip {\n    background-color: rgba(13, 35, 58, 0.6);\n    border: 1px solid rgba(255, 255, 255, 0.2);\n    padding: 8px 16px;\n    border-radius: 6px;\n    font-size: 0.85rem;\n    font-weight: 600;\n    color: #ffffff;\n    letter-spacing: 0.3px;\n    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);\n  }\n\n  \/* Responsive Behavior for Tablets \/ Mobile *\/\n  @media (max-width: 900px) {\n    .iiot-combined-wrapper {\n      grid-template-columns: 1fr;\n    }\n  }\n\n  @media (max-width: 550px) {\n    .iiot-apps-grid {\n      grid-template-columns: 1fr;\n    }\n  }\n<\/style><\/div>       \n       \t     <\/div>\n  <\/div>\n<\/div>\n<!-- end Content Box Sliding Effect -->\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-a3438a1 e-con e-atomic-element e-flexbox-base e-315a0e9\" data-id=\"a3438a1\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"a3438a1\">\n    \t\t<div class=\"elementor-element elementor-element-bc8e99d elementor-widget elementor-widget-ucaddon_sliding_content_box\" data-id=\"bc8e99d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"ucaddon_sliding_content_box.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n<!-- start Content Box Sliding Effect -->\n<style>\/* widget: Content Box Sliding Effect *\/\n\n#uc_sliding_content_box_elementor_bc8e99d {\n\tbox-sizing: border-box;\n    overflow:hidden;\n}\n\n.ue-title\n{\n  font-size:21px;\n  width:100%;\n}\n\n.ue-text\n{\n  width:100%;\n}\n\n.ue-btn-wrapper\n{\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_bc8e99d .ue-content-box-inner\n{\n  display:flex;\n  position:relative;\n}\n\n#uc_sliding_content_box_elementor_bc8e99d .ue-overlay\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n}\n\n#uc_sliding_content_box_elementor_bc8e99d .ue-content-box-wrapper\n{\n  position:relative;\n  width:100%;\n}\n\n#uc_sliding_content_box_elementor_bc8e99d .ue-bg\n{\n  position:absolute;\n  top:0;\n  right:0;\n  left:0;\n  bottom:0;\n  transition:0.5s;\n}\n\n#uc_sliding_content_box_elementor_bc8e99d:hover .ue-bg\n{\n transform:scale(1.1,1.1);\n}\n\n\n#uc_sliding_content_box_elementor_bc8e99d:hover .moveFromLeft\n{\n  animation: moveFromLeft 0.5s;\n}\n\n#uc_sliding_content_box_elementor_bc8e99d:hover .moveFromRight\n{\n  animation: moveFromRight 0.5s;\n}\n\n#uc_sliding_content_box_elementor_bc8e99d:hover .moveFromBottom\n{\n  animation: moveFromBottom 0.5s;\n}\n\n@-webkit-keyframes moveFromLeft {\n from {\n -webkit-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromLeft {\n from {\n -moz-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromLeft {\n from {\n -ms-transform: translateX(-100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromRight {\n from {\n -webkit-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromRight {\n from {\n -moz-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromRight {\n from {\n -ms-transform: translateX(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateX(0%);\n opacity: 1;\n}\n}\n@-webkit-keyframes moveFromBottom {\n from {\n -webkit-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -webkit-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-moz-keyframes moveFromBottom {\n from {\n -moz-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -moz-transform: translateY(0%);\n opacity: 1;\n}\n}\n@-ms-keyframes moveFromBottom {\n from {\n -ms-transform: translateY(100%);\nopacity: 0;\n}\n to {\n -ms-transform: translateY(0%);\n opacity: 1;\n}\n}\n\n<\/style>\n\n<div class=\"ue-content-box\" id=\"uc_sliding_content_box_elementor_bc8e99d\">\n  \n  <div class=\"ue-content-box-inner\">\n    <div class=\"ue-bg\"><\/div>\n    <div class=\"ue-overlay\"><\/div>\n    \n     <div class=\"ue-content-box-wrapper\">\n\t\t\t\n\t\t<div class=\"ue-text moveFromLeft\"><div class=\"iiot-card-container\">\n<!-- Header Bar -->\n<div class=\"iiot-card-header\">\n<div class=\"iiot-header-title\">\n<h3>Mettre en place la structure de donn\u00e9es adapt\u00e9e<\/h3>\n<\/div>\n<\/div>\n<!-- Content Area -->\n<div class=\"iiot-card-content\">\n<div class=\"iiot-content-inner\">\n<p class=\"iiot-description\">Une base de donn\u00e9es fiable repose avant tout sur une architecture solide. GPLG con\u00e7oit des structures de donn\u00e9es pens\u00e9es pour garantir la stabilit\u00e9, la rapidit\u00e9 des requ\u00eates et l'int\u00e9grit\u00e9 structurelle \u00e0 mesure que votre activit\u00e9 industrielle se d\u00e9veloppe.<\/p>\n<!-- Architectural Pillars Grid -->\n<div class=\"iiot-arch-grid\">\n\n<!-- Column 1: Core Schema & Modeling -->\n<div class=\"iiot-grid-column\">\n<div class=\"iiot-column-header\"><span class=\"iiot-column-badge\">01<\/span>\n<span class=\"iiot-column-title\">Sch\u00e9ma et conception relationnelle<\/span><\/div>\n<ul class=\"iiot-pillar-list\">\n     <li><strong>Relations entre les donn\u00e9es<\/strong>\nEntit\u00e9s normalis\u00e9es repr\u00e9sentant les relations physiques et logiques du monde r\u00e9el.<\/li>\n     <li><strong>Tables et entit\u00e9s<\/strong>\nS\u00e9paration claire des domaines pour les \u00e9quipements, les ordres de travail, les lots et les utilisateurs.<\/li>\n     <li><strong>Types de donn\u00e9es<\/strong>\nAllocation de types stricte pour une grande pr\u00e9cision et une empreinte m\u00e9moire minimale.<\/li>\n<\/ul>\n<\/div>\n<!-- Column 2: Data Lifecycle & Retention -->\n<div class=\"iiot-grid-column\">\n<div class=\"iiot-column-header\"><span class=\"iiot-column-badge\">02<\/span>\n<span class=\"iiot-column-title\">Strat\u00e9gie relative au cycle de vie et \u00e0 l'historique<\/span><\/div>\n<ul class=\"iiot-pillar-list\">\n     <li><strong>Archives historiques<\/strong>\nPartitions optimis\u00e9es de s\u00e9ries chronologiques pour la t\u00e9l\u00e9m\u00e9trie \u00e0 long terme et les journaux d'\u00e9v\u00e9nements.<\/li>\n     <li><strong>Conservation des donn\u00e9es<\/strong>\nPolitiques automatis\u00e9es d'archivage et de purge pour g\u00e9rer la croissance du stockage.<\/li>\n     <li><strong>Indexation<\/strong>\nStrat\u00e9gies d'indexation sur mesure pour des recherches instantan\u00e9es dans des flux industriels \u00e0 forte intensit\u00e9 d'\u00e9criture.<\/li>\n<\/ul>\n<\/div>\n<!-- Column 3: Performance & Scalability -->\n<div class=\"iiot-grid-column\">\n<div class=\"iiot-column-header\"><span class=\"iiot-column-badge\">03<\/span>\n<span class=\"iiot-column-title\">Performance et ex\u00e9cution<\/span><\/div>\n<ul class=\"iiot-pillar-list\">\n     <li><strong>Exigences relatives aux requ\u00eates<\/strong>\nVues pr\u00e9calcul\u00e9es et plans d'ex\u00e9cution optimis\u00e9s pour une r\u00e9cup\u00e9ration \u00e0 faible latence.<\/li>\n     <li><strong>Conditions de candidature<\/strong>\nAlignement direct sur les besoins en mati\u00e8re de SCADA, de MES, d'API Web et de middleware de p\u00e9riph\u00e9rie.<\/li>\n     <li><strong>Performances et \u00e9volutivit\u00e9<\/strong>\nDes structures \u00e0 haute concurrence con\u00e7ues pour supporter une charge industrielle croissante.<\/li>\n<\/ul>\n<\/div>\n<\/div>\n<!-- Footer Statement Banner -->\n<div class=\"iiot-statement-banner\">\n<div class=\"iiot-statement-text\">L'objectif est de mettre en place une structure qui reste utilisable, \u00e9volutive et facile \u00e0 maintenir \u00e0 mesure que le syst\u00e8me industriel se d\u00e9veloppe.<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n<style>\n  \/* Full-Width Container Styling *\/\n  .iiot-card-container {\n    width: 100%;\n    max-width: 100%;\n    margin: 20px 0;\n    border: 1px solid rgba(255, 255, 255, 0.2);\n    border-radius: 10px;\n    background-color: transparent;\n    font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;\n    overflow: hidden;\n    box-sizing: border-box;\n  }\n\n  \/* Header Bar *\/\n  .iiot-card-header {\n    display: flex;\n    align-items: center;\n    padding: 18px 24px;\n    background-color: rgba(13, 35, 58, 0.85);\n    backdrop-filter: blur(5px);\n    color: #ffffff;\n  }\n\n  .iiot-header-title h3 {\n    margin: 0;\n    font-size: 1.15rem;\n    font-weight: 600;\n    color: #ffffff !important;\n  }\n\n  \/* Content Area *\/\n  .iiot-card-content {\n    background-color: transparent;\n  }\n\n  .iiot-content-inner {\n    padding: 24px;\n    border-top: 1px solid rgba(255, 255, 255, 0.1);\n  }\n\n  .iiot-description {\n    color: inherit;\n    opacity: 0.9;\n    line-height: 1.6;\n    margin-bottom: 28px;\n    font-size: 0.98rem;\n    text-align: center;\n  }\n\n  \/* 3-Column Grid for Architecture Aspects *\/\n  .iiot-arch-grid {\n    display: grid;\n    grid-template-columns: repeat(3, 1fr);\n    gap: 16px;\n    margin-bottom: 28px;\n  }\n\n  .iiot-grid-column {\n    background-color: rgba(255, 255, 255, 0.03);\n    border: 1px solid rgba(255, 255, 255, 0.15);\n    border-radius: 8px;\n    padding: 20px;\n    box-sizing: border-box;\n    display: flex;\n    flex-direction: column;\n    gap: 16px;\n  }\n\n  .iiot-column-header {\n    display: flex;\n    align-items: center;\n    gap: 10px;\n    border-bottom: 1px solid rgba(255, 255, 255, 0.1);\n    padding-bottom: 12px;\n  }\n\n  .iiot-column-badge {\n    font-size: 0.78rem;\n    font-weight: 700;\n    opacity: 0.6;\n    color: inherit;\n    letter-spacing: 0.5px;\n  }\n\n  .iiot-column-title {\n    font-size: 0.95rem;\n    font-weight: 600;\n    color: inherit;\n    line-height: 1.3;\n  }\n\n  \/* Pillar Bullet Item Styling *\/\n  .iiot-pillar-list {\n    list-style: none;\n    padding: 0;\n    margin: 0;\n    display: flex;\n    flex-direction: column;\n    gap: 14px;\n  }\n\n  .iiot-pillar-list li {\n    display: flex;\n    flex-direction: column;\n    gap: 4px;\n    font-size: 0.88rem;\n  }\n\n  .iiot-pillar-list strong {\n    color: inherit;\n    font-weight: 600;\n    font-size: 0.9rem;\n  }\n\n  .iiot-pillar-list span {\n    opacity: 0.8;\n    line-height: 1.4;\n    font-size: 0.84rem;\n  }\n\n  \/* Footer Statement Banner *\/\n  .iiot-statement-banner {\n    background-color: rgba(13, 35, 58, 0.6);\n    border: 1px solid rgba(255, 255, 255, 0.2);\n    border-radius: 8px;\n    padding: 18px 24px;\n    text-align: center;\n  }\n\n  .iiot-statement-text {\n    font-size: 1.02rem;\n    font-weight: 600;\n    color: #ffffff;\n    letter-spacing: 0.3px;\n    line-height: 1.4;\n  }\n\n  \/* Responsive Behavior for Tablet and Mobile *\/\n  @media (max-width: 1024px) {\n    .iiot-arch-grid {\n      grid-template-columns: 1fr;\n      gap: 14px;\n    }\n    .iiot-content-inner {\n      padding: 16px;\n    }\n    .iiot-card-header {\n      padding: 14px 16px;\n    }\n  }\n\n  @media (max-width: 480px) {\n    .iiot-description {\n      font-size: 0.9rem;\n      margin-bottom: 20px;\n    }\n    .iiot-grid-column {\n      padding: 14px;\n      gap: 12px;\n    }\n    .iiot-statement-banner {\n      padding: 14px 16px;\n    }\n    .iiot-statement-text {\n      font-size: 0.92rem;\n    }\n  }\n<\/style><\/div>       \n       \t     <\/div>\n  <\/div>\n<\/div>\n<!-- end Content Box Sliding Effect -->\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-ee6b522 e-con e-atomic-element e-flexbox-base e-f2feb4b\" data-id=\"ee6b522\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"ee6b522\">\n    \t\t\t\t<div class=\"premium-shape-divider__shape-container\" id=\"premium-shape-divider-e0cddf4\" style=\"visibility:hidden; position: absolute; opacity:0;\">\n\t\t\t\t\t<svg preserveaspectratio='none' xmlns='http:\/\/www.w3.org\/2000\/svg' aria-hidden='true' viewbox='0 0 1000 100'><g fill='%23000000'><path opacity='.5' d='M0 51v15l724-43L0 51z'><\/path><path opacity='.3' d='M0 0v51l600-23L0 0z'><\/path><path d='M0 65v38l1000-3V0L0 65z'><\/path><\/g><\/svg>\t\t\t\t<\/div>\n\t\t\t<div data-ha-partstyle=\"default\" data-ha-partcolor=\"\" data-ha-partopacity=\"\" data-ha-partdirection=\"bottom\" class=\"elementor-element elementor-element-e0cddf4 ha-particle-yes premium-shape-divider-yes premium-shape48 e-flex e-con-boxed ha-particle-adv-no premium-shape-divider__default premium-shape-divider-anime-yes premium-sh-no-stretch-yes e-con e-child\" data-id=\"e0cddf4\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-dc103af e-con-full e-flex e-con e-child\" data-id=\"dc103af\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d302fa6 elementor-widget elementor-widget-heading\" data-id=\"d302fa6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Construire une base de donn\u00e9es plus solide<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-767cd95 elementor-widget elementor-widget-text-editor\" data-id=\"767cd95\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Que vous ayez besoin d'une base de donn\u00e9es de production, d'un historique des donn\u00e9es machine, d'une base de donn\u00e9es d'application ou d'une architecture compl\u00e8te de donn\u00e9es industrielles, GPLG peut concevoir et mettre en \u0153uvre la solution adapt\u00e9e \u00e0 vos besoins.<\/p><h3 data-section-id=\"15l2t7p\" data-start=\"12078\" data-end=\"12116\">Discuter d'un projet de base de donn\u00e9es<\/h3>\t\t\t\t\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-daed8e6 e-con-full e-flex e-con e-child\" data-id=\"daed8e6\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;_ha_eqh_enable&quot;:false}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d01e3f3 elementor-widget elementor-widget-button\" data-id=\"d01e3f3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm elementor-animation-shrink\" href=\"https:\/\/gplg.pt\/contact\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t<span class=\"elementor-button-icon\">\n\t\t\t\t<i aria-hidden=\"true\" class=\"jltma-feather-icon jltma-feather-icon-arrow-up-right\"><\/i>\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Contacter GPLG<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\n<\/div>\n\t\t<\/div>","protected":false},"excerpt":{"rendered":"<p>skip render: ucaddon_box_hero skip render: ucaddon_sliding_content_box skip render: ucaddon_sliding_content_box skip render: ucaddon_sliding_content_box skip render: ucaddon_sliding_content_box skip render: ucaddon_sliding_content_box skip render: ucaddon_sliding_content_box skip render: ucaddon_sliding_content_box skip render: ucaddon_sliding_content_box skip render: ucaddon_sliding_content_box skip render: ucaddon_sliding_content_box skip render: ucaddon_sliding_content_box skip render: ucaddon_sliding_content_box skip render: ucaddon_sliding_content_box skip render: ucaddon_sliding_content_box skip render: ucaddon_sliding_content_box Build a Stronger Data Foundation Whether you [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":2199,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-2308","page","type-page","status-publish","hentry"],"blocksy_meta":{"styles_descriptor":{"styles":{"desktop":"","tablet":"","mobile":""},"google_fonts":[],"version":7}},"_links":{"self":[{"href":"https:\/\/gplg.pt\/fr\/wp-json\/wp\/v2\/pages\/2308","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/gplg.pt\/fr\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/gplg.pt\/fr\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/gplg.pt\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/gplg.pt\/fr\/wp-json\/wp\/v2\/comments?post=2308"}],"version-history":[{"count":217,"href":"https:\/\/gplg.pt\/fr\/wp-json\/wp\/v2\/pages\/2308\/revisions"}],"predecessor-version":[{"id":5132,"href":"https:\/\/gplg.pt\/fr\/wp-json\/wp\/v2\/pages\/2308\/revisions\/5132"}],"up":[{"embeddable":true,"href":"https:\/\/gplg.pt\/fr\/wp-json\/wp\/v2\/pages\/2199"}],"wp:attachment":[{"href":"https:\/\/gplg.pt\/fr\/wp-json\/wp\/v2\/media?parent=2308"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}