Exemples de configurations de déploiement

Le fichier config/config.yaml, généralement initialisé à partir du config/config.yaml.example modèle, sert de configuration principale pour le déploiement de Cortex Framework. Il définit des paramètres essentiels , y compris le projet d'exécution cible Google Cloud , les ensembles de données BigQuery source et de destination, ainsi que les spécifications Dataform , telles que les noms de dépôt et d'espace de travail.

Les sections suivantes fournissent une description détaillée de la structure config/config.yaml.

Environnement de compilation

Le projet d'environnement de compilation est celui qui est facturé pour les actions de compilation, telles que les jobs BigQuery (lecture de DD03L).

buildEnvironment:
  buildProjectId: YOUR_BUILD_PROJECT_ID

Le tableau suivant décrit les paramètres de l'environnement de compilation.

Paramètre Signification Valeur par défaut Description
buildEnvironment.buildProjectId ID du projet de compilation YOUR_BUILD_PROJECT_ID Google Cloud ID du projet dans lequel les opérations de compilation sont exécutées.

Données

La section data: du fichier de configuration définit vos sources de données, vos cibles et les modules spécifiques pour la base de données et les produits de données. Sa structure générale est la suivante :

data:
   # Geographic location for BigQuery datasets (for example: US, EU, us-central1)
   # For full list see: https://docs.cloud.google.com/cortex/docs/supported-locations
  bigQueryLocation: US
  # List of namespaces for data foundation and product modules.
  namespaces:
    - name: cortex
      path: cortex
  # List of source datasets.
  sources:
    - ...
  # List of target datasets.
  targets:
    - ...

  # Configuration for data foundation and product modules.
  modules:
    # List of foundation modules.
    foundation:
    - ... 
    # List of data product modules.
    product:
    - ...

Données : emplacement BigQuery

Définit l'emplacement des ensembles de données BigQuery source et de destination.

Paramètre Signification Valeur par défaut Description
data.bigQueryLocation Emplacement BigQuery US Emplacement de l'ensemble de données BigQuery (par exemple, US, us-central1 ou europe-west1).

Données : espace de noms Cortex

Définit l'espace de noms Cortex Framework.

Paramètre Signification Valeur par défaut Description
data.namespaces.name Nom de l'espace de noms - Nom de l'espace de noms Cortex Framework. Par exemple, cortex.
data.namespaces.path Chemin d'accès à l'espace de noms - Chemin d'accès à l'espace de noms Cortex Framework pour les sous-répertoires utilisés dans les dossiers src et config. Par exemple, cortex.

Données : ensembles de données BigQuery source et de destination

La liste des sources définit les ensembles de données BigQuery dans lesquels les données brutes du système source ont été répliquées ou diffusées en streaming.

Les cibles définissent une liste d'ensembles de données BigQuery dans lesquels les ensembles de données traités par Dataform seront stockés.

Chaque source et chaque cible sont référencées à partir des modules à l'aide de leur ID unique.

# Data source and target mapping
sources:
  - id: sap_raw
    projectId: YOUR_SOURCE_PROJECT_ID
    datasetId: cortex_sap_raw

targets:
  - id: sap_foundation
    projectId: YOUR_TARGET_PROJECT_ID
    datasetId: cortex7_sap_data_foundation

Le tableau suivant décrit les paramètres de mappage des sources et des cibles de données.

Paramètre Signification Valeur par défaut Description
data.sources.id ID source - Définit l'ID de l'ensemble de données source à partir duquel extraire les données. Par exemple, sap_raw.
data.sources.projectId ID du projet source YOUR_SOURCE_PROJECT_ID Fait référence à l'ID du projet contenant les données sources. Google Cloud
data.sources.datasetId ID de l'ensemble de données BigQuery source - Fait référence à l'ID de l'ensemble de données BigQuery contenant les données sources. Par exemple, cortex_sap_raw.
data.targets.id ID de la cible - Définit l'ID de l'ensemble de données cible. Par exemple, cortex_data_foundation.
data.targets.projectId ID du projet de destination YOUR_TARGET_PROJECT_ID Fait référence à l'ID du projet contenant les données cibles. Google Cloud
data.targets.datasetId ID de l'ensemble de données BigQuery de destination - Fait référence à l'ID de l'ensemble de données BigQuery contenant les données cibles. Par exemple, cortex_sap_data_foundation.

Données : modules

Les modules définissent la structure et les composants des pipelines de données Dataform.

Données : modules : base de données

Cette section configure les modules de la couche de base de données qui traitent les données de la couche brute (flux CDC) dans une représentation standardisée des derniers enregistrements des données sources. Si la source fournit directement une vue des derniers enregistrements ou si ces transformations sont effectuées par le connecteur du système source, le module peut être configuré en tant que source de base de données externe.

modules:
  # List of foundation modules.
  foundation:
    # Unique identifier for the module instance.
    - moduleId: erp
      # Type of the module (namespaced, for example, cortex.sap).
      type: cortex.sap
      # Reference to the source dataset ID.
      dataSourceId: sap_raw
      # Reference to the target dataset ID.
      dataTargetId: sap_foundation
      # Module-specific configuration settings.
      moduleSettings:
        # SAP version (for example, ecc, s4).
        sapVersion: ecc
        # SAP client number.
        mandt: "100"
      # Whether the module is enabled.
      # enabled: true
      # Whether the foundation is external (does not create target dataset).
      # external: false
      # Path to the table settings configuration file.
      # tableSettings: "config/data_foundation/sap/table_settings.yaml"

Le tableau suivant décrit les paramètres des modules de base de données pour la configuration modules.foundation.

Paramètre Signification Valeur par défaut Description
moduleId Identifiant du module erp Identifiant unique d'une instance de module de transformation de base de données spécifique.
type Type de logique de module cortex.sap Définit la logique métier ou le modèle appliqué (par exemple, clients, sales_documents).
dataSourceId Lien source sap_raw Fait référence à l'ID de la liste data.sources à partir de laquelle extraire les données.
dataTargetId Lien cible sap_foundation Fait référence à l'ID de la liste des cibles vers laquelle envoyer les données.
moduleSettings.sapVersion Version du système SAP ecc Applicable uniquement aux sources de données SAP. Détermine la logique spécifique à la source pour les systèmes ecc (ECC) ou s4 (S/4HANA).
moduleSettings.mandt Client SAP (Mandant) 100 Applicable uniquement aux sources de données SAP. Identifiant client SAP à trois chiffres utilisé pour filtrer les lignes de données.
enabled Activation du module true Indique si le module est activé.
external Base de données externe false Indique si la base de données est externe (ne crée pas d'ensemble de données cible).
tableSettings Paramètres de table config/cortex/data_foundation/{source_system}/table_settings.yaml Chemin d'accès au fichier de configuration des paramètres de table.

Données : modules : produits de données

Les modules de produits de données définissent les agrégations, les calculs et les jointures nécessaires pour transformer les données brutes en insights qui répondent à des cas d'utilisation spécifiques.

La configuration des produits de données permet de définir un ID unique, de définir des dépendances, ainsi que de référencer le module de base de données et l'ensemble de données cible dans lequel les résultats seront stockés.

La configuration détaillée des produits de données est définie dans les fichiers référencés par la clé : tableSettings.

modules:
  # List of data product modules.
  product:
    # Unique identifier for the data product instance.
    - moduleId: sap_purchasing_organizations
      # Type of the data product (namespaced).
      type: cortex.purchasing_organizations
      # Map of module dependencies.
      dependsOn:
        sapModule: erp
      # Reference to the target dataset ID.
      dataTargetId: product_target
      # Whether the module is enabled.
      # enabled: true
      # Path to the table settings configuration file.
      # tableSettings:   "config/cortex/data_product/purchasing_organizations/table_settings.yaml"

Le tableau suivant décrit les paramètres des modules de produits de données pour la configuration modules.product.

Paramètre Signification Valeur par défaut Description
moduleId Identifiant du module - Identifiant unique d'une instance de module de transformation spécifique.
type Type de logique de module - Définit la logique métier ou le modèle appliqué, défini dans le dossier src/data_modules/{namespace}/data_product.
dataTargetId Lien cible sap_foundation Fait référence à l'ID de la liste des cibles vers laquelle envoyer les données.
dependsOn Dépendance en amont sapModule: erp Spécifie le module de base de données qui doit exister avant de pouvoir créer le module de produit.
enabled Activation du module true Indique si le module est activé.
tableSettings Paramètres de table "config/{namespace}/data_product/data_product_name/table_settings.yaml" Chemin d'accès au fichier de configuration des paramètres de table.

Environnement de déploiement

Cortex Framework utilise Dataform pour orchestrer les transformations SQL dans BigQuery. Le bloc deployment: définit la configuration Dataform, responsable de l'exécution des pipelines de données, y compris le projet de dépôt, l'emplacement, le nom du dépôt et le nom de l'espace de travail Dataform.

deployment:
  targets:
    - type: dataform
      enabled: true
      targetSettings:
        repositoryProjectId: YOUR_REPO_PROJECT_ID
        repositoryRegion: us-central1
        repositoryName: cortex-repository
        workspaceName: dev

Le tableau suivant décrit les paramètres d'emplacement des cibles de déploiement (deployment.targets:).

Google Cloud
Paramètre Signification Valeur par défaut Description
type Type de déploiement dataform Type des cibles de déploiement.
enabled Activé/ Désactivé true Indique si la cible de déploiement est activée ou désactivée.
targetSettings.repositoryProjectId ID du projet de dépôt YOUR_REPO_PROJECT_ID ID du projet dans lequel le dépôt Dataform est géré. Google Cloud
targetSettings.repositoryRegion Région du dépôt us-central1 Région du dépôt Dataform (par exemple, us-central1 ou europe-west1). Google Cloud
targetSettings.repositoryName Nom du dépôt cortex-repository Nom spécifique du dépôt Dataform.
targetSettings.workspaceName Nom de l'espace de travail dev Espace de travail Dataform spécifique utilisé pour le cycle de déploiement.