View a markdown version of this page

Connessioni Azure Cosmos DB - AWS Aderenza

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Connessioni Azure Cosmos DB

Puoi usare AWS Glue for Spark per leggere e scrivere su contenitori esistenti in Azure Cosmos DB utilizzando l'API NoSQL in AWS Glue 4.0 e versioni successive. È possibile definire cosa leggere da Azure Cosmos DB con una query SQL. Ti connetti ad Azure Cosmos DB usando una chiave Azure Cosmos DB archiviata tramite una connessione Glue. AWS Secrets Manager AWS

Per altre informazioni su Azure Cosmos DB per NoSQL, consulta la documentazione di Azure.

Configurazione delle connessioni Azure Cosmos DB

Per connetterti ad Azure Cosmos DB da AWS Glue, dovrai creare e archiviare la tua chiave Azure Cosmos DB in modo AWS Secrets Manager segreto, quindi associarla a una connessione Azure Cosmos DB Glue. AWS

Prerequisiti:

  • In Azure, dovrai identificare o generare una chiave Azure Cosmos DB da utilizzare da Glue,. AWS cosmosKey Per altre informazioni, consulta Accesso sicuro ai dati in Azure Cosmos DB nella documentazione di Azure.

Per configurare una connessione ad Azure Cosmos DB:
  1. In AWS Secrets Manager, crea un segreto usando la tua chiave Azure Cosmos DB. Per creare un segreto in Secrets Manager, segui il tutorial disponibile in Crea un AWS Secrets Manager segreto nella AWS Secrets Manager documentazione. Dopo aver creato il segreto, mantieni il nome del segreto, secretName per il passaggio successivo.

    • Quando selezioni Key/value le coppie, crea una coppia per la chiave spark.cosmos.accountKey con il valorecosmosKey.

  2. Nella console AWS Glue, create una connessione seguendo i passaggi indicati inAggiungere una AWS Glue connessione. Dopo aver creato la connessione, mantieni il nome della connessioneconnectionName, per un uso futuro in AWS Glue.

    • In Tipo di connessione, seleziona Azure Cosmos DB.

    • Quando selezioni un AWS segreto, forniscisecretName.

Dopo aver creato una connessione AWS Glue Azure Cosmos DB, dovrai eseguire i seguenti passaggi prima di eseguire il processo AWS Glue:

  • Concedi al ruolo IAM associato al tuo lavoro AWS Glue il permesso di lettura. secretName

  • Nella configurazione del job AWS Glue, connectionName forniscilo come connessione di rete aggiuntiva.

Lettura da container Azure Cosmos DB per NoSQL

Prerequisiti:

  • Un container Azure Cosmos DB per NoSQL da cui desideri leggere. Avrai bisogno delle informazioni di identificazione per il container.

    Un container Azure Cosmos per NoSQL è identificato dal database e dal container. Devi fornire i nomi del database e del contenitore quando ti connetti all'API Azure Cosmos for NoSQL. cosmosDBName cosmosContainerName

  • Una connessione AWS Glue Azure Cosmos DB configurata per fornire informazioni di autenticazione e posizione di rete. Per l'acquisizione, completa i passaggi della procedura precedente, Per configurare una connessione ad Azure Cosmos DB. Avrai bisogno del nome della connessione AWS Glue,. connectionName

Ad esempio:

azurecosmos_read = glueContext.create_dynamic_frame.from_options( connection_type="azurecosmos", connection_options={ "connectionName": connectionName, "spark.cosmos.database": cosmosDBName, "spark.cosmos.container": cosmosContainerName, } )

Puoi anche fornire una query SELECT SQL, per filtrare i risultati restituiti al tuo DynamicFrame. Sarà necessario configurare query.

Ad esempio:

azurecosmos_read_query = glueContext.create_dynamic_frame.from_options( connection_type="azurecosmos", connection_options={ "connectionName": "connectionName", "spark.cosmos.database": cosmosDBName, "spark.cosmos.container": cosmosContainerName, "spark.cosmos.read.customQuery": "query" } )

Scrittura su container Azure Cosmos DB per NoSQL

Questo esempio scrive informazioni da un database esistente DynamicFrame dynamicFrame in Azure Cosmos DB. Se il contenitore contiene già informazioni, AWS Glue aggiungerà i dati del tuo. DynamicFrame Se le informazioni nel contanier hanno uno schema diverso da quello scritto, si verificheranno degli errori.

Prerequisiti:

  • Una tabella di Azure Cosmos DB su cui scrivere. Avrai bisogno delle informazioni di identificazione per il container. È necessario creare il container prima di chiamare il metodo di connessione.

    Un container Azure Cosmos per NoSQL è identificato dal database e dal container. Devi fornire i nomi del database e del contenitore quando ti connetti all'API Azure Cosmos for NoSQL. cosmosDBName cosmosContainerName

  • Una connessione AWS Glue Azure Cosmos DB configurata per fornire informazioni di autenticazione e posizione di rete. Per l'acquisizione, completa i passaggi della procedura precedente, Per configurare una connessione ad Azure Cosmos DB. Avrai bisogno del nome della connessione AWS Glue,. connectionName

Ad esempio:

azurecosmos_write = glueContext.write_dynamic_frame.from_options( frame=dynamicFrame, connection_type="azurecosmos", connection_options={ "connectionName": connectionName, "spark.cosmos.database": cosmosDBName, "spark.cosmos.container": cosmosContainerName )

Indicazioni di riferimento alle opzioni di connessione ad Azure Cosmos DB

  • connectionName: obbligatorio. Usato per Read/Write. Il nome di una connessione AWS Glue Azure Cosmos DB configurata per fornire informazioni di autenticazione e posizione di rete al metodo di connessione.

  • spark.cosmos.database: obbligatorio. Usato per. Read/Write Valori validi: nomi di database. Nome del database di Azure Cosmos DB per NoSQL.

  • spark.cosmos.container: obbligatorio. Usato per Read/Write. Valori validi: nomi dei contanier. Nome del contanier di Azure Cosmos DB per NoSQL.

  • spark.cosmos.read.customQuery: utilizzato per la lettura. Valori validi: query SELECT SQL. Query personalizzata per selezionare i documenti da leggere.