Définition du flux de données

Cet article fournit une répartition de la structure de définition pour les éléments de flux de données.

Parties de définition

Chemin d’accès du composant Définition type Obligatoire Descriptif
queryMetadata.json ContentDetails de métadonnées (JSON) vrai Décrit les métadonnées liées aux options de requête dans le flux de données
mashup.pq Mashup ContentDetails (PQ) vrai Décrit le contenu mashup de la charge utile. Il contient la séquence de toutes les étapes effectuées dans le flux de données
<mdfTransformName>.mdf MDFTransform ContentDetails (JSON) faux Décrit le contenu de transformation de Data Flow de mappage (MDF) de la charge utile. Il peut y avoir plusieurs transformations MDF dans un dataflow

ContentDetails de métadonnées

Décrit le contenu de la charge utile

Nom Catégorie Obligatoire Descriptif
formatVersion Chaîne vrai Version du format d’élément de flux de données. La seule valeur autorisée est 202502
nom Chaîne vrai Nom du mashup
computeEngineSettings ComputeEngineSettings faux Paramètres du moteur de calcul
queryGroups QueryGroup[] faux Groupes de requêtes
documentLocale Chaîne faux Paramètres régionaux du document ; doit être des codes de langue BCP-47
gatewayObjectId Chaîne faux ID d’objet de passerelle
queriesMetadata QueriesMetadata faux Métadonnées de requêtes
Connexions connexion[] faux Connexions utilisateur
fastCombine Booléen faux Indique si vous souhaitez utiliser la combinaison rapide ou non. True : utilisez la combinaison rapide. False (valeur par défaut) : n’utilisez pas la combinaison rapide
allowNativeQueries Booléen faux Indique si les requêtes natives sont autorisées ou non. True (valeur par défaut) : autorisez les requêtes natives. False : n’autorisez pas les requêtes natives
skipAutomaticTypeAndHeaderDetection Booléen faux Indique s’il faut ignorer ou non la détection automatique du type et de l’en-tête. True : ignorer la détection. False (valeur par défaut) : ne pas ignorer la détection
paramétrique Booléen faux Indique si le mode paramétrique est utilisé ou non. True : le mode paramétrique est utilisé. False (valeur par défaut) : le mode paramétrique n’est pas utilisé

Contenu ComputeEngineSettings

Nom Catégorie Obligatoire Descriptif
allowFastCopy Booléen faux Indique si la copie rapide est activée ou non. True (valeur par défaut) : autorisez la copie rapide. False - Ne pas autoriser la copie rapide
maxConcurrency Nombre entier faux Nombre maximal d’évaluations simultanées à utiliser lors de l’exécution du flux de données

Contenu de QueryGroups

Nom Catégorie Obligatoire Descriptif
pièce d'identité Chaîne faux ID du groupe de requêtes
nom Chaîne faux Nom du groupe de requêtes
description Chaîne faux Description du groupe de requêtes
parentId Chaîne faux ID parent du groupe de requêtes
commande Nombre entier faux Ordre du groupe de requêtes

Contenu de QueriesMetadata

Nom Catégorie Obligatoire Descriptif
queryId Chaîne vrai ID de requête
queryName Chaîne vrai Nom de la requête
queryGroupId Chaîne faux ID du groupe de requêtes
isHidden Booléen faux Indique si la requête est masquée ou non. True : la requête est masquée. False (valeur par défaut) : la requête n’est pas masquée
loadEnabled Booléen faux Indique si la charge est activée ou non. True (valeur par défaut) : la charge est activée. False : la charge n’est pas activée

Contenu de la connexion

Nom Catégorie Obligatoire Descriptif
chemin Chaîne faux Chemin d’accès de connexion
gentil Chaîne faux Type de connexion
connectionId Chaîne faux ID de connexion

Exemple ContentDetails de métadonnées

{
  "formatVersion": "202502",
  "computeEngineSettings": {
    "allowFastCopy": true,
    "maxConcurrency": 1
  },
  "name": "SampleDataflowGen",
  "queryGroups": [
    
  ],
  "documentLocale": "en-US",
  "gatewayObjectId": null,
  "queriesMetadata": {
    "publicholidays": {
      "queryId": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1",
      "queryName": "publicholidays",
      "queryGroupId": null,
      "isHidden": false,
      "loadEnabled": true
    },
    "MDF transform": {
      "queryId": "9c6d7c87-83db-4718-b382-c0c1aa1636d7",
      "queryName": "MDF transform",
      "loadEnabled": false
    }
  },
  "connections": [
    {
      "path": "Lakehouse",
      "kind": "Lakehouse",
      "connectionId": "{\"ClusterId\":\"b1b1b1b1-cccc-dddd-eeee-f2f2f2f2f2f2\",\"DatasourceId\":\"c2c2c2c2-dddd-eeee-ffff-a3a3a3a3a3a3\"}"
    }
  ],
  "fastCombine": false,
  "allowNativeQueries": true,
  "skipAutomaticTypeAndHeaderDetection": false
}

Exemple Mashup ContentDetails

[StagingDefinition = [Kind = "FastCopy"]]
section Section1;
shared publicholidays = 
let  Source = Lakehouse.Contents([]),  
#"Navigation 1" = Source{[workspaceId = "d3d3d3d3-eeee-ffff-aaaa-b4b4b4b4b4b4"]}[Data],  
#"Navigation 2" = #"Navigation 1"{[lakehouseId = "e4e4e4e4-ffff-aaaa-bbbb-c5c5c5c5c5c5"]}[Data],  
#"Navigation 3" = #"Navigation 2"{[Id = "publicholidays", ItemKind = "Table"]}[Data],  
#"Changed column type" = Table.TransformColumnTypes(#"Navigation 3", {{"normalizeHolidayName", type text}}),  
#"Lowercased text" = Table.TransformColumns(#"Changed column type", {{"countryRegionCode", each Text.Lower(_), type nullable text}}),  
#"Uppercased text" = Table.TransformColumns(#"Lowercased text", {{"normalizeHolidayName", each Text.Upper(_), type nullable text}}),  
#"Calculated text length" = Table.TransformColumns(#"Uppercased text", {{"countryOrRegion", each Text.Length(_), type nullable Int64.Type}})in  #"Calculated text length";
[ItemType = "MDF"]
shared #"MDF transform" = "___ExternalResource-Placeholder___";

MDFTransform ContentDetails

Décrit le contenu d’une charge utile de mappage Data Flow.

Nom Catégorie Obligatoire Descriptif
nom Chaîne vrai Nom du flux de données de mappage
properties Propriétés vrai Propriétés du flux de données de mappage

Contenu des propriétés MDFTransform

Nom Catégorie Obligatoire Descriptif
type Chaîne vrai Type du flux de données. La valeur autorisée est MappingDataFlow
typeProperties TypeProperties vrai Propriétés de type du flux de données de mappage

Contenu MDFTransform TypeProperties

Nom Catégorie Obligatoire Descriptif
Sources Source[] faux Liste des sources dans le flux de données de mappage
sinks Récepteur[] faux Liste des récepteurs dans le flux de données de mappage
transformations transformation[] faux Liste des transformations dans le flux de données de mappage
scriptLines Chaîne[] vrai Lignes de script qui définissent la logique de flux de données de mappage

Contenu de la source MDFTransform

Nom Catégorie Obligatoire Descriptif
nom Chaîne vrai Nom de la source
externalRéférences ExternalReferences faux Références externes pour la source

Contenu du récepteur MDFTransform

Nom Catégorie Obligatoire Descriptif
nom Chaîne vrai Nom du récepteur
externalRéférences ExternalReferences faux Références externes pour le récepteur

Contenu de la transformation MDFTransform

Nom Catégorie Obligatoire Descriptif
nom Chaîne vrai Nom de la transformation

Contenu de MDFTransform ExternalReferences

Nom Catégorie Obligatoire Descriptif
Connexion Chaîne faux ID de connexion de la référence externe

Exemple MDFTransform ContentDetails

{
  "name": "MDF",
  "properties": {
    "type": "MappingDataFlow",
    "typeProperties": {
      "sources": [
        {
          "name": "source1",
          "externalReferences": {
            "connection": "<source1ConnectionId>"
          }
        }
      ],
      "sinks": [
        {
          "name": "sink1",
          "externalReferences": {
            "connection": "<sink1ConnectionId>"
          }
        }
      ],
      "transformations": [
        {
          "name": "derivedColumn1"
        }
      ],
      "scriptLines": [
        "source(output(",
        "          Column1 as short,",
        "          Column2 as string,",
        "          Column3 as date,",
        "          Column4 as boolean,",
        "          Column5 as string,",
        "          Column6 as double",
        "     ),",
        "     useSchema: false,",
        "     allowSchemaDrift: true,",
        "     validateSchema: false,",
        "     ignoreNoFilesFound: false,",
        "     format: 'delimited',",
        "     fileSystem: 'folder1',",
        "     fileName: 'file1.csv',",
        "     columnDelimiter: ',',",
        "     escapeChar: '\\\\',",
        "     quoteChar: '\\\"',",
        "     columnNamesAsHeader: true) ~> source1",
        "source1 derive(isColumn6GreaterThan10 = Column6>10) ~> derivedColumn1",
        "derivedColumn1 sink(allowSchemaDrift: true,",
        "     validateSchema: false,",
        "     format: 'json',",
        "     fileSystem: 'output1',",
        "     umask: 0022,",
        "     preCommands: [],",
        "     postCommands: [],",
        "     skipDuplicateMapInputs: true,",
        "     skipDuplicateMapOutputs: true) ~> sink1"
      ]
    }
  }
}