Copiare dati da SAP Business Warehouse usando Azure Data Factory

SI APPLICA A: Azure Data Factory Azure Synapse Analytics

Questo articolo illustra come usare l'attività di copia in Azure Data Factory per copiare dati da un database SAP Business Warehouse (BW). Si basa sull'articolo di panoramica dell'attività di copia che presenta una panoramica generale sull'attività di copia.

Suggerimento

Per informazioni sul supporto generale di ADF nello scenario di integrazione dei dati SAP, vedere il white paper sull'integrazione dei dati SAP con Azure Data Factory con un'introduzione dettagliata a ogni connettore SAP, alla valutazione e alle linee guida.

Funzionalità supportate

Questo SAP Business Warehouse connettore è supportato per le attività seguenti:

È possibile copiare dati da SAP Business Warehouse in qualsiasi archivio dati di sink supportato. Per un elenco degli archivi dati supportati come origini/sink dall'attività di copia, vedere la tabella relativa agli archivi dati supportati.

In particolare, il connettore SAP Business Warehouse supporta:

  • SAP Business Warehouse versione 7.x.
  • La copia di dati da InfoCube e QueryCube (incluse query BEx) tramite query MDX.
  • La copia di dati usando l'autenticazione di base.

Prerequisiti

Per usare il connettore SAP Business Warehouse, è necessario:

  • Configurare un runtime di integrazione self-hosted. Per informazioni dettagliate, vedere Integration Runtime self-hosted .
  • Installare la libreria SAP NetWeaver nel computer del runtime di integrazione. È possibile ottenere la libreria SAP Netweaver dall'amministratore SAP o direttamente dall'Area download software SAP. Per ottenere il percorso di download della versione più recente, cercare SAP Note #1025361. Assicurarsi di selezionare la libreria SAP NetWeaver a 64 bit che corrisponde all'Integration Runtime installazione. Installare quindi tutti i file inclusi in SAP NetWeaver RFC SDK in base alla nota SAP. La libreria SAP NetWeaver è inclusa anche nell'installazione degli strumenti client SAP.

Suggerimento

Per risolvere un problema di connettività a SAP BW, assicurarsi che:

  • Tutte le librerie di dipendenza estratte da NetWeaver RFC SDK siano disponibili nella cartella %windir%\system32. In genere la cartella contiene icudt34.dll, icuin34.dll, icuuc34.dll, libicudecnumber.dll, librfc32.dll, libsapucum.dll, sapcrypto.dll, sapcryto_old.dll, sapnwrfc.dll.
  • Le porte necessarie per la connessione al server SAP siano abilitate nel computer del runtime di integrazione self-hosted. In genere sono le porte 3300 e 3201.

Guida introduttiva

Per eseguire l'attività di copia con una pipeline, è possibile usare uno degli strumenti o SDK seguenti:

Le sezioni seguenti riportano informazioni dettagliate sulle proprietà che vengono usate per definire entità di Data Factory specifiche per il connettore SAP Business Warehouse.

Proprietà del servizio collegato

Per il servizio collegato di SAP Business Warehouse (BW) sono supportate le proprietà seguenti:

Proprietà Descrizione Obbligatoria
type La proprietà type deve essere impostata su: SapBw
server Nome del server in cui si trova l'istanza di SAP BW.
systemNumber Numero del sistema SAP BW.
Valore consentito: numero decimale a due cifre rappresentato come stringa.
clientId ID del client nel sistema SAP BW.
Valore consentito: numero decimale a tre cifre rappresentato come stringa.
userName Nome dell'utente che ha accesso al server SAP.
password Password per l'utente. Contrassegnare questo campo come SecureString per archiviarlo in modo sicuro in Azure Data Factory oppure fare riferimento a un segreto archiviato in Azure Key Vault.
connectVia Il runtime di integrazione da usare per la connessione all'archivio dati. È necessario un runtime di integrazione self-hosted come indicato in Prerequisiti.

Esempio:

{
    "name": "SapBwLinkedService",
    "properties": {
        "type": "SapBw",
        "typeProperties": {
            "server": "<server name>",
            "systemNumber": "<system number>",
            "clientId": "<client id>",
            "userName": "<SAP user>",
            "password": {
                "type": "SecureString",
                "value": "<Password for SAP user>"
            }
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

Proprietà del set di dati

Per un elenco completo delle sezioni e delle proprietà disponibili per la definizione di set di dati, vedere l'articolo sui set di dati. Questa sezione presenta un elenco delle proprietà supportate dal set di dati SAP BW.

Per copiare dati da SAP BW, impostare la proprietà type del set di dati su SapBwCube. Il set di dati SAP BW di tipo RelationalTable non supporta alcuna proprietà specifica del tipo.

Esempio:

{
    "name": "SAPBWDataset",
    "properties": {
        "type": "SapBwCube",
        "typeProperties": {},
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<SAP BW linked service name>",
            "type": "LinkedServiceReference"
        }
    }
}

Il set di dati tipizzato RelationalTable è ancora supportato senza modifiche, ma è consigliato l'uso del nuovo per il futuro.

Proprietà dell'attività di copia

Per un elenco completo delle sezioni e delle proprietà disponibili per la definizione delle attività, vedere l'articolo sulle pipeline. Questa sezione presenta un elenco delle proprietà supportate dall'origine SAP BW.

SAP BW come origine

Per copiare dati da SAP BW, nella sezione origine dell'attività di copia sono supportate le proprietà seguenti:

Proprietà Descrizione Obbligatoria
type La proprietà type dell'origine dell'attività di copia deve essere impostata su: SapBwSource
query Specifica la query MDX che consente di leggere i dati dall'istanza di SAP BW.

Esempio:

"activities":[
    {
        "name": "CopyFromSAPBW",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<SAP BW input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "SapBwSource",
                "query": "<MDX query for SAP BW>"
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

L'origine tipizzata RelationalSource è ancora supportata senza modifiche, ma è consigliato l'uso della nuova per il futuro.

Mapping dei tipi di dati per SAP BW

Quando si copiano dati da SAP BW, vengono usati i mapping seguenti tra i tipi di dati di SAP BW e i tipi di dati provvisori di Azure Data Factory. Vedere Mapping dello schema e del tipo di dati per informazioni su come l'attività di copia esegue il mapping dello schema di origine e del tipo di dati al sink.

Tipo di dati di SAP BW Tipo di dati provvisori di Data Factory
ACCP Int
CHAR string
CLNT Stringa
CURR Decimal
CUKY Stringa
DEC Decimal
FLTP Double
INT1 Byte
INT2 Int16
INT4 Int
LANG Stringa
LCHR Stringa
LRAW Byte[]
PREC Int16
QUAN Decimal
RAW Byte[]
RAWSTRING Byte[]
STRING Stringa
UNITÀ Stringa
DATS Stringa
NUMC Stringa
TIMS Stringa

Proprietà dell'attività Lookup

Per altre informazioni sulle proprietà, vedere Attività Lookup.

Passaggi successivi

Per un elenco degli archivi dati supportati come origini o sink dall'attività di copia in Azure Data Factory, vedere gli archivi dati supportati.