Freigeben über


Kopieren von Daten aus Greenplum mithilfe von Azure Data Factory oder Synapse Analytics

GILT FÜR: Azure Data Factory Azure Synapse Analytics

Tipp

Testen Sie Data Factory in Microsoft Fabric, eine All-in-One-Analyselösung für Unternehmen. Microsoft Fabric deckt alle Aufgaben ab, von der Datenverschiebung bis hin zu Data Science, Echtzeitanalysen, Business Intelligence und Berichterstellung. Erfahren Sie, wie Sie kostenlos eine neue Testversion starten!

In diesem Artikel wird beschrieben, wie Sie die Copy-Aktivität in Azure Data Factory- oder Azure Synapse Analytics-Pipelines verwenden, um Daten aus Greenplum zu kopieren. Er baut auf dem Artikel zur Übersicht über die Kopieraktivität auf, der eine allgemeine Übersicht über die Kopieraktivität enthält.

Von Bedeutung

Der Greenplum Connector, Version 2.0, bietet verbesserte native Greenplum-Unterstützung. Wenn Sie Greenplum Connector Version 1.0 in Ihrer Lösung verwenden, aktualisieren Sie den Greenplum-Connector vor dem 31. August 2025. Ausführliche Informationen zu den Unterschieden zwischen Version 2.0 und Version 1.0 finden Sie in diesem Abschnitt.

Unterstützte Funktionen

Für den Greenplum-Connector werden die folgenden Funktionen unterstützt:

Unterstützte Funktionen IR
Kopieraktivität (Quelle/-) (1) (2)
Lookup-Aktivität (1) (2)

① Azure Integration Runtime ② Selbstgehostete Integration Runtime

Eine Liste der Datenspeicher, die als Quellen oder Senken für die Kopieraktivität unterstützt werden, finden Sie in der Tabelle Unterstützte Datenspeicher.

Der Dienst enthält einen integrierten Treiber zum Herstellen der Konnektivität. Daher müssen Sie keinen Treiber manuell installieren, wenn dieser Connector verwendet wird.

Voraussetzungen

Wenn sich Ihr Datenspeicher in einem lokalen Netzwerk, in einem virtuellen Azure-Netzwerk oder in einer virtuellen privaten Amazon-Cloud befindet, müssen Sie eine selbstgehostete Integration Runtime konfigurieren, um eine Verbindung herzustellen.

Handelt es sich bei Ihrem Datenspeicher um einen verwalteten Clouddatendienst, können Sie die Azure Integration Runtime verwenden. Ist der Zugriff auf IP-Adressen beschränkt, die in den Firewallregeln genehmigt sind, können Sie Azure Integration Runtime-IPs zur Positivliste hinzufügen.

Sie können auch das Feature managed virtual network integration runtime (Integration Runtime für verwaltete virtuelle Netzwerke) in Azure Data Factory verwenden, um auf das lokale Netzwerk zuzugreifen, ohne eine selbstgehostete Integration Runtime zu installieren und zu konfigurieren.

Weitere Informationen zu den von Data Factory unterstützten Netzwerksicherheitsmechanismen und -optionen finden Sie unter Datenzugriffsstrategien.

Erste Schritte

Sie können eines der folgenden Tools oder SDKs verwenden, um die Kopieraktivität mit einer Pipeline zu verwenden:

Erstellen eines verknüpften Diensts für Greenplum über die Benutzeroberfläche

Verwenden Sie die folgenden Schritte, um einen verknüpften Dienst für Greenplum auf der Azure-Portal erstellen.

  1. Navigieren Sie in Ihrem Azure Data Factory- oder Synapse-Arbeitsbereich zu der Registerkarte „Verwalten“, wählen Sie „Verknüpfte Dienste“ aus und klicken Sie dann auf „Neu“:

  2. Suchen Sie nach Greenplum, und wählen Sie den Connector Greenplum aus.

    Screenshot: vom Greenplum-Connector.

  3. Konfigurieren Sie die Dienstdetails, testen Sie die Verbindung, und erstellen Sie den neuen verknüpften Dienst.

    Ein Screenshot, von der Konfiguration des verknüpften Diensts für Greenplum.

Details zur Connector-Konfiguration

Die folgenden Abschnitte enthalten Details zu Eigenschaften, die zum Definieren von Data Factory-Entitäten speziell für den Greenplum-Connector verwendet werden.

Eigenschaften des verknüpften Diensts

Der Greenplum-Connector unterstützt jetzt Version 2.0. Lesen Sie diesen Abschnitt , um die Greenplum-Connectorversion von Version 1.0 zu aktualisieren. Einzelheiten zur Eigenschaft finden Sie in den entsprechenden Abschnitten.

Version 2.0

Der verknüpfte Greenplum-Dienst unterstützt die folgenden Eigenschaften, wenn Version 2.0 angewendet wird:

Eigenschaft Beschreibung Erforderlich
Typ Die „type“-Eigenschaft muss auf Greenplum festgelegt sein. Ja
Ausgabe Die von Ihnen angegebene Version. Der Wert ist 2.0. Ja
Gastgeber Gibt den Hostnamen - und optional die Portnummer - an, auf dem die Datenbank läuft. Ja
Hafen Der TCP-Port des Datenbankservers. Der Standardwert ist 5432. Nein
Datenbank Die Datenbank für die Verbindung. Ja
Benutzername Der Benutzername, mit dem eine Verbindung hergestellt werden soll. Ist bei Verwendung von IntegratedSecurity nicht erforderlich Ja
Kennwort Das Kennwort, mit dem eine Verbindung hergestellt werden soll. Ist bei Verwendung von IntegratedSecurity nicht erforderlich Markieren Sie dieses Feld als SecureString, um es sicher zu speichern. Alternativ können Sie auf ein in Azure Key Vault gespeichertes Geheimnis verweisen. Ja
SSL-Modus Steuert, ob SSL verwendet wird, je nach Serverunterstützung
- Disable: SSL ist deaktiviert. Wenn der Server SSL erfordert, schlägt die Verbindung fehl.
- Allow: Nicht-SSL-Verbindungen werden bevorzugt, wenn der Server sie zulässt, aber SSL-Verbindungen werden zugelassen.
- Prefer: SSL-Verbindungen werden bevorzugt, wenn der Server sie zulässt, aber Verbindungen ohne SSL werden zugelassen.
- Require: Die Verbindung schlägt fehl, wenn der Server SSL nicht unterstützt.
- Verify-ca: Die Verbindung schlägt fehl, wenn der Server SSL nicht unterstützt. Überprüft außerdem das Serverzertifikat
- Verify-full: Die Verbindung schlägt fehl, wenn der Server SSL nicht unterstützt. Überprüft außerdem das Serverzertifikat mit dem Namen des Hosts
Optionen: Deaktivieren (0) / Zulassen (1) / Bevorzugt (2) / Erfordern (3) (Standard) / Überprüfen-ca (4) / Überprüfen-vollständig (5)
Ja
Authentifizierungstyp Authentifizierungstyp für die Verbindung mit der Datenbank. Unterstützt nur Basic. Ja
connectVia Die Integrationslaufzeit, die zum Herstellen einer Verbindung mit dem Datenspeicher verwendet werden muss. Weitere Informationen finden Sie im Abschnitt Voraussetzungen. Wenn keine Option angegeben ist, wird die standardmäßige Azure Integration Runtime verwendet. Nein
Zusätzliche Verbindungseigenschaften:
VerbindungsZeitüberschreitung Die Wartezeit (in Sekunden) beim Versuch, eine Verbindung herzustellen, bevor der Versuch beendet und ein Fehler erzeugt wird. Der Standardwert ist 15. Nein
commandTimeout Die Zeit (in Sekunden), die beim Ausführen eines Befehls gewartet werden soll, bis der Versuch beendet und ein Fehler generiert wird. Legen Sie für die Unendlichkeit Null fest. Der Standardwert ist 30. Nein

Beispiel:

{
    "name": "GreenplumLinkedService",
    "properties": {
        "type": "Greenplum",
        "version": "2.0",
        "typeProperties": {
            "host": "<host>",
            "port": 5432,
            "database": "<database>",
            "username": "<username>",
            "password": {
                "type": "SecureString",
                "value": "<password>"
            },
            "sslMode": <sslmode>,
            "authenticationType": "Basic"
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Beispiel: Speichern des Kennworts in Azure Key Vault

{
    "name": "GreenplumLinkedService",
    "properties": {
        "type": "Greenplum",
        "version": "2.0",
        "typeProperties": {
            "host": "<host>",
            "port": 5432,
            "database": "<database>",
            "username": "<username>",
            "password": { 
                "type": "AzureKeyVaultSecret", 
                "store": { 
                    "referenceName": "<Azure Key Vault linked service name>", 
                    "type": "LinkedServiceReference" 
                }, 
                "secretName": "<secretName>" 
            },
            "sslMode": <sslmode>,
            "authenticationType": "Basic"
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Version 1.0

Der verknüpfte Greenplum-Dienst unterstützt die folgenden Eigenschaften, wenn Version 1.0 angewendet wird:

Eigenschaft Beschreibung Erforderlich
Typ Die „type“-Eigenschaft muss auf Greenplum festgelegt sein. Ja
connectionZeichenfolge Eine ODBC-Verbindungszeichenfolge zum Herstellen einer Verbindung mit Greenplum.
Sie können auch das Kennwort in Azure Key Vault speichern und die pwd-Konfiguration aus der Verbindungszeichenfolge pullen. Ausführlichere Informationen finden Sie in den folgenden Beispielen und im Artikel Speichern von Anmeldeinformationen in Azure Key Vault.
Ja
connectVia Die Integrationslaufzeit, die zum Herstellen einer Verbindung mit dem Datenspeicher verwendet werden muss. Weitere Informationen finden Sie im Abschnitt Voraussetzungen. Wenn keine Option angegeben ist, wird die standardmäßige Azure Integration Runtime verwendet. Nein

Beispiel:

{
    "name": "GreenplumLinkedService",
    "properties": {
        "type": "Greenplum",
        "typeProperties": {
            "connectionString": "HOST=<server>;PORT=<port>;DB=<database>;UID=<user name>;PWD=<password>"
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Beispiel: Speichern des Kennworts in Azure Key Vault

{
    "name": "GreenplumLinkedService",
    "properties": {
        "type": "Greenplum",
        "typeProperties": {
            "connectionString": "HOST=<server>;PORT=<port>;DB=<database>;UID=<user name>;",
            "pwd": { 
                "type": "AzureKeyVaultSecret", 
                "store": { 
                    "referenceName": "<Azure Key Vault linked service name>", 
                    "type": "LinkedServiceReference" 
                }, 
                "secretName": "<secretName>" 
            }
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Dataset-Eigenschaften

Eine vollständige Liste mit den Abschnitten und Eigenschaften, die zum Definieren von Datasets zur Verfügung stehen, finden Sie im Artikel zu Datasets. Dieser Abschnitt enthält eine Liste der Eigenschaften, die vom Greenplum-Dataset unterstützt werden.

Legen Sie zum Kopieren von Daten aus Greenplum die „type“-Eigenschaft des Datasets auf GreenplumTable fest. Folgende Eigenschaften werden unterstützt:

Eigenschaft Beschreibung Erforderlich
Typ Die type-Eigenschaft des Datasets muss auf GreenplumTable festgelegt werden. Ja
Schema Name des Schemas. Nein (wenn „query“ in der Aktivitätsquelle angegeben ist)
Tisch Der Name der Tabelle. Nein (wenn „query“ in der Aktivitätsquelle angegeben ist)
Tabellenname Name der Tabelle mit Schema. Diese Eigenschaft wird aus Gründen der Abwärtskompatibilität weiterhin unterstützt. Verwenden Sie schema und table für eine neue Workload. Nein (wenn „query“ in der Aktivitätsquelle angegeben ist)

Beispiel

{
    "name": "GreenplumDataset",
    "properties": {
        "type": "GreenplumTable",
        "typeProperties": {},
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<Greenplum linked service name>",
            "type": "LinkedServiceReference"
        }
    }
}

Eigenschaften der Kopieraktivität

Eine vollständige Liste mit den Abschnitten und Eigenschaften zum Definieren von Aktivitäten finden Sie im Artikel Pipelines. Dieser Abschnitt enthält eine Liste der Eigenschaften, die von der Greenplum-Quelle unterstützt werden.

GreenplumSource als Quelle

Legen Sie zum Kopieren von Daten aus Greenplum den Quelltyp in der Kopieraktivität auf GreenplumSource fest. Folgende Eigenschaften werden im Abschnitt source der Kopieraktivität unterstützt:

Eigenschaft Beschreibung Erforderlich
Typ Die „type“-Eigenschaft der Quelle der Kopieraktivität muss auf GreenplumSource festgelegt werden. Ja
Abfrage Verwendet die benutzerdefinierte SQL-Abfrage zum Lesen von Daten. Beispiel: "SELECT * FROM MyTable". Nein (wenn „tableName“ im Dataset angegeben ist)

Beispiel:

"activities":[
    {
        "name": "CopyFromGreenplum",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<Greenplum input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "GreenplumSource",
                "query": "SELECT * FROM MyTable"
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Datentypzuordnung für Greenplum

Wenn Sie Daten aus Greenplum kopieren, gelten die folgenden Zuordnungen von Greenplums Datentypen auf die internen Datentypen, die vom Dienst verwendet werden. Informationen dazu, wie die Kopieraktivität das Quellschema und den Datentyp der Spüle zuordnet, finden Sie unter Schema- und Datentypzuordnungen.

Greenplum-Datentyp Zwischendienstdatentyp (für Version 2.0) Zwischendienstdatentyp (für Version 1.0)
SmallInt Int16 Int16
Ganze Zahl Int32 Int32
BigInt Int64 Int64
Dezimal (Genauigkeit <= 28) Dezimalzahl Dezimalzahl
Dezimal (Genauigkeit > 28) Dezimalzahl Schnur
Numerisch Dezimalzahl Dezimalzahl
Wirklich Ledig Ledig
Doppelt Doppelt Doppelt
SmallSerial Int16 Int16
Serie Int32 Int32
BigSerial Int64 Int64
Geld Dezimalzahl Schnur
Verkohlen Schnur Schnur
Varchar Schnur Schnur
Text Schnur Schnur
Bytea Byte[] Byte[]
Zeitstempel Datum/Uhrzeit Datum/Uhrzeit
Zeitstempel mit Zeitzone DateTimeOffset (Datum/Uhrzeit mit Offset) Schnur
Datum Datum Datum/Uhrzeit
Uhrzeit Zeitspanne Zeitspanne
Zeit mit Zeitzone DateTimeOffset (Datum/Uhrzeit mit Offset) Schnur
Intervall Zeitspanne Schnur
Boolescher Typ (Boolean) Boolescher Typ (Boolean) Boolescher Typ (Boolean)
Punkt Schnur Schnur
Zeilen Schnur Schnur
Iseg Schnur Schnur
Kiste Schnur Schnur
Pfad Schnur Schnur
Vieleck Schnur Schnur
Kreis Schnur Schnur
CIDR Schnur Schnur
Inet Schnur Schnur
Macaddr Schnur Schnur
Macaddr8 Schnur Schnur
Tsvector Schnur Schnur
Tsquery Schnur Schnur
UUID Leitfaden Leitfaden
Json Schnur Schnur
Jsonb Schnur Schnur
Anordnung Schnur Schnur
bit Byte[] Byte[]
Bit variierend Byte[] Byte[]
XML Schnur Schnur
IntArray (Englisch) Schnur Schnur
TextArray Schnur Schnur
NumericArray Schnur Schnur
DateArray Schnur Schnur
Bereich Schnur Schnur
Bpchar Schnur Schnur

Eigenschaften der Lookup-Aktivität

Ausführliche Informationen zu den Eigenschaften finden Sie unter Lookup-Aktivität.

Aktualisieren des Greenplum-Connectors

Die folgenden Schritte helfen Ihnen beim Upgrade Ihres Greenplum-Connectors:

  1. Wählen Sie auf der Seite "Verknüpften Dienst bearbeiten " Version 2.0 aus, und konfigurieren Sie den verknüpften Dienst, indem Sie auf verknüpfte Dienstversion 2.0-Eigenschaften verweisen.

  2. Die Datentypzuordnung für die verknüpfte Greenplum-Dienstversion 2.0 unterscheidet sich von der für die Version 1.0. Informationen zur neuesten Datentypzuordnung finden Sie unter "Datentypzuordnung für Greenplum".

Unterschiede zwischen Greenplum, Version 2.0 und Version 1.0

Der Greenplum Connector Version 2.0 bietet neue Funktionen und ist mit den meisten Features von Version 1.0 kompatibel. Die folgende Tabelle zeigt die Featureunterschiede zwischen Version 2.0 und Version 1.0.

Version 2.0 Version 1.0
Die folgenden Zuordnungen von Greenplum-Datentypen zu Zwischendienstdatentypen werden verwendet.

Dezimalzahl (Genauigkeit > 28) -> Dezimalzahl
Geld -> Dezimalzahl
Zeitstempel mit Zeitzone -> DateTimeOffset
Zeit mit Zeitzone -> DateTimeOffset
Intervall -> TimeSpan
Die folgenden Zuordnungen von Greenplum-Datentypen zu Zwischendienstdatentypen werden verwendet.

Dezimalzahl (Genauigkeit > 28) –> Zeichenfolge
Money -> Zeichenfolge
Zeitstempel mit Zeitzone ->Zeichenfolge
Zeit mit Zeitzone -> Zeichenfolge
Intervall -> Zeichenfolge

Eine Liste der Datenspeicher, die als Quelles und Senken für die Kopieraktivität unterstützt werden, finden Sie in der Dokumentation für Unterstützte Datenspeicher.