Megosztás a következőn keresztül:


Eventstream – GitHub-integráció

Az alábbi cikk részletesen ismerteti az Eventstream fájlstruktúráját, miután szinkronizálták őket egy GitHub- vagy Azure Devops-adattárral.

Mappastruktúra

Miután egy munkaterületet szinkronizált egy adattárral, megjelenik a munkaterület felső szintű mappája, valamint külön almappa minden szinkronizált elemhez. Minden almappa elemnévvel van formázva. Elem típusa

Az eseménystream mappájában a következő fájlok láthatók:

  • Platform: A szövetplatform értékeit határozza meg, például a megjelenítendő nevet és a leírást.
  • Tulajdonságok: Elemspecifikus értékeket határoz meg.

Íme egy példa a mappaszerkezet megjelenésére:

Repo

  • A munkaterület
    • Item_A.Eventstream
      • .platforma
      • EventstreamProperties.json
  • B munkaterület
    • Item_C.Eventstream
      • .platforma
      • EventstreamProperties.json

Eventstream-fájlok

A következő fájlok egy eseménystream mappában találhatók:

  • .platform

    A fájl az alábbi sémával definiál egy eseménystreamet:

    {
      "$schema": "https://developer.microsoft.com/json-schemas/fabric/gitIntegration/platformProperties/2.0.0/schema.json",
      "metadata": {
        "type": "Eventstream",
        "displayName": "",
        "description": ""
      },
      "config": {
        "version": "2.0",
        "logicalId": ""
      }
    }
    
  • EventstreamProperties.json

    A fájl lehetővé teszi az eseménystream elem platformszintű beállításainak konfigurálását. Íme egy mintafájl:

    {
        "sources": [
            {
                "name": "AzureEventHubSource",
                "type": "AzureEventHub",
                "properties": {
                    "dataConnectionId": "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
                    "consumerGroupName": "$Default",
                    "inputSerialization": {
                        "type": "Json",
                        "properties": {
                            "encoding": "UTF8"
                        }
                    }
                }
            },
            {
                "name": "AzureIoTHubSource",
                "type": "AzureIoTHub",
                "properties": {
                    "dataConnectionId": "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
                    "consumerGroupName": "$Default",
                    "inputSerialization": {
                        "type": "Json",
                        "properties": {
                            "encoding": "UTF8"
                        }
                    }
                }
            }
        ],
        "destinations": [
            {
                "name": "CustomEndpointDestination",
                "type": "CustomEndpoint",
                "properties": {},
                "inputNodes": [
                    {
                        "name": "myEventstream-stream"
                    }
                ]
            },
            {
                "name": "LakehouseDestination",
                "type": "Lakehouse",
                "properties": {
                    "workspaceId": "00000000-0000-0000-0000-000000000000",
                    "itemId": "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
                    "schema": "dbo",
                    "deltaTable": "deltaTable",
                    "minimumRows": 100000,
                    "maximumDurationInSeconds": 120,
                    "inputSerialization": {
                        "type": "Json",
                        "properties": {
                            "encoding": "UTF8"
                        }
                    }
                },
                "inputNodes": [
                    {
                        "name": "myEventstream-stream"
                    }
                ]
            }
        ],
        "streams": [
            {
                "name": "myEventstream-stream",
                "type": "DefaultStream",
                "properties": {},
                "inputNodes": [
                    {
                        "name": "sourceName"
                    }
                ]
            },
            {
                "name": "DerivedStreamName",
                "type": "DerivedStream",
                "properties": {
                    "inputSerialization": {
                        "type": "Json",
                        "properties": {
                            "encoding": "UTF8"
                        }
                    }
                },
                "inputNodes": [
                    {
                        "name": "FilterName"
                    }
                ]
            }
        ],
        "operators": [
            {
                "name": "FilterName",
                "type": "Filter",
                "inputNodes": [
                    {
                        "name": "myEventstream-stream"
                    }
                ],
                "properties": {
                    "conditions": [
                        {
                            "column": {
                                "node": null,
                                "columnName": "BikepointID",
                                "columnPath": null,
                                "expressionType": "ColumnReference"
                            },
                            "operatorType": "NotEquals",
                            "value": {
                                "dataType": "Nvarchar(max)",
                                "value": "0",
                                "expressionType": "Literal"
                            }
                        }
                    ]
                }
            }
        ],
        "compatibilityLevel": "1.0"
    }    
    

Az összes típusú forrást, célhelyet és operátort tartalmazó teljes mintaért tekintse meg aeventstream-definition.json.