CosmosClient Classe
Rappresentazione logica lato client di un account Azure Cosmos DB.
Usare questo client per configurare ed eseguire richieste al servizio Azure Cosmos DB.
È consigliabile mantenere una singola istanza di CosmosClient per durata dell'applicazione che consente una gestione e prestazioni di connessione efficienti.
L'inizializzazione di CosmosClient è un'operazione pesante: non usare le istanze cosmosClient di inizializzazione come credenziali o convalida della connettività di rete.
Creare un'istanza di un nuovo CosmosClient.
- Ereditarietà
-
builtins.objectCosmosClient
Costruttore
CosmosClient(url: str, credential: Any, consistency_level: str | None = None, **kwargs: Any)
Parametri
Può essere la chiave dell'account o un dizionario di token di risorsa.
- consistency_level
- str
Livello di coerenza da usare per la sessione. Il valore predefinito è Nessuno (livello account). Altre informazioni sui livelli di coerenza e sui valori possibili: https://aka.ms/cosmos-consistency-levels
- timeout
- int
Timeout assoluto in secondi, per l'elaborazione combinata della richiesta HTTP e della risposta.
- connection_timeout
- int
Timeout della richiesta HTTP in secondi.
- connection_mode
- str
La modalità di connessione per il client, attualmente supporta solo "Gateway".
- proxy_config
- ProxyConfiguration
Configurazione del proxy di connessione.
- ssl_config
- SSLConfiguration
Configurazione SSL della connessione.
- connection_verify
- bool
Indica se verificare la connessione, il valore predefinito è True.
- connection_cert
- str
Un certificato alternativo per verificare la connessione.
- retry_total
- int
Numero massimo di tentativi.
- retry_backoff_max
- int
Tempo massimo di attesa dei tentativi in secondi.
- retry_fixed_interval
- int
È stato risolto l'intervallo di ripetizione dei tentativi in millisecondi.
- retry_read
- int
Numero massimo di tentativi di lettura socket.
- retry_connect
- int
Numero massimo di tentativi di errore di connessione.
- retry_status
- int
Numero massimo di tentativi sui codici di stato degli errori.
- retry_backoff_factor
- float
Fattore per calcolare il tempo di attesa tra i tentativi.
- enable_endpoint_discovery
- bool
Abilitare l'individuazione degli endpoint per gli account di database con replica geografica. (Impostazione predefinita: True)
Le posizioni preferite per gli account di database con replica geografica.
- enable_diagnostics_logging
- bool
Abilitare i criteri CosmosHttpLogging. Deve essere usato insieme a un logger per funzionare.
- logger
- Logger
Logger da usare per la raccolta della diagnostica delle richieste. Può essere passato a livello di client (per registrare tutte le richieste) o a un singolo livello di richiesta. Le richieste verranno registrate a livello di INFO.
Esempio
Creare una nuova istanza del client Cosmos DB:
from azure.cosmos import exceptions, CosmosClient, PartitionKey
import os
url = os.environ["ACCOUNT_URI"]
key = os.environ["ACCOUNT_KEY"]
client = CosmosClient(url, key)
Metodi
create_database |
Creare un nuovo database con l'ID (nome) specificato. |
create_database_if_not_exists |
Creare il database se non esiste già. Se il database esiste già, vengono restituite le impostazioni esistenti. .. nota: questa funzione non controlla o aggiorna le impostazioni del database esistenti o offre velocità effettiva se differisce da quella passata. |
delete_database |
Eliminare il database con l'ID (nome) specificato. |
from_connection_string |
Creare un'istanza di CosmosClient da una stringa di connessione. Questa operazione può essere recuperata dal portale di Azure. Per un elenco completo degli argomenti di parole chiave facoltativi, vedere il costruttore CosmosClient. |
get_database_account |
Recuperare le informazioni sull'account del database. |
get_database_client |
Recuperare un database esistente con l'ID (nome). |
list_databases |
Elencare i database in un account di database SQL di Cosmos DB. |
query_databases |
Eseguire query sui database in un account di database SQL di Cosmos DB. |
create_database
Creare un nuovo database con l'ID (nome) specificato.
create_database(id: str, populate_query_metrics: bool | None = None, offer_throughput: int | ThroughputProperties | None = None, **kwargs: Any) -> DatabaseProxy
Parametri
- id
ID (nome) del database da creare.
- offer_throughput
Velocità effettiva con provisioning per questa offerta.
- session_token
- str
Token da usare con coerenza della sessione.
- etag
- str
Valore ETag o il carattere jolly (*). Usato per verificare se la risorsa è stata modificata e agire in base alla condizione specificata dal parametro match_condition .
- match_condition
- MatchConditions
Condizione di corrispondenza da utilizzare sull'etag.
- response_hook
- Callable
Oggetto chiamabile richiamato con i metadati della risposta.
Restituisce
Istanza di DatabaseProxy che rappresenta il nuovo database.
Tipo restituito
Eccezioni
Il database con l'ID specificato esiste già.
Esempio
Creare un database nell'account Cosmos DB:
database_name = "testDatabase"
try:
database = client.create_database(id=database_name)
except exceptions.CosmosResourceExistsError:
database = client.get_database_client(database=database_name)
create_database_if_not_exists
Creare il database se non esiste già.
Se il database esiste già, vengono restituite le impostazioni esistenti.
.. nota: questa funzione non controlla o aggiorna le impostazioni del database esistenti o offre velocità effettiva se differisce da quella passata.
create_database_if_not_exists(id: str, populate_query_metrics: bool | None = None, offer_throughput: int | ThroughputProperties | None = None, **kwargs: Any) -> DatabaseProxy
Parametri
- id
ID (nome) del database da leggere o creare.
- populate_query_metrics
- bool
Abilitare la restituzione delle metriche di query nelle intestazioni di risposta.
- offer_throughput
- int oppure <xref:azure.cosmos.ThroughputProperties.>
Velocità effettiva con provisioning per questa offerta.
- session_token
- str
Token da usare con coerenza della sessione.
- etag
- str
Valore ETag o il carattere jolly (*). Usato per verificare se la risorsa è stata modificata e agire in base alla condizione specificata dal parametro match_condition .
- match_condition
- MatchConditions
Condizione di corrispondenza da utilizzare sull'etag.
- response_hook
- Callable
Oggetto chiamabile richiamato con i metadati della risposta.
Restituisce
Istanza di DatabaseProxy che rappresenta il database.
Tipo restituito
Eccezioni
Lettura o creazione del database non riuscita.
delete_database
Eliminare il database con l'ID (nome) specificato.
delete_database(database: str | DatabaseProxy | Dict[str, Any], populate_query_metrics: bool | None = None, **kwargs: Any) -> None
Parametri
- database
- str oppure dict(str, str) oppure DatabaseProxy
ID (nome), che rappresenta le proprietà o <xref:azure.cosmos.cosmos_client.DatabaseProxy> l'istanza del database da eliminare.
- session_token
- str
Token da usare con coerenza della sessione.
- etag
- str
Valore ETag o il carattere jolly (*). Usato per verificare se la risorsa è stata modificata e agire in base alla condizione specificata dal parametro match_condition .
- match_condition
- MatchConditions
Condizione di corrispondenza da utilizzare sull'etag.
- response_hook
- Callable
Oggetto chiamabile richiamato con i metadati della risposta.
Tipo restituito
Eccezioni
Se non è stato possibile eliminare il database.
from_connection_string
Creare un'istanza di CosmosClient da una stringa di connessione.
Questa operazione può essere recuperata dal portale di Azure. Per un elenco completo degli argomenti di parole chiave facoltativi, vedere il costruttore CosmosClient.
from_connection_string(conn_str: str, credential: Any | None = None, consistency_level: str | None = None, **kwargs: Any) -> CosmosClient
Parametri
Credenziali alternative da usare anziché la chiave specificata nella stringa di connessione.
Livello di coerenza da usare per la sessione. Il valore predefinito è Nessuno (livello account).
Eccezioni
Il database con l'ID specificato esiste già.
get_database_account
Recuperare le informazioni sull'account del database.
get_database_account(**kwargs: Any) -> DatabaseAccount
Parametri
- response_hook
- Callable
Oggetto chiamabile richiamato con i metadati della risposta.
Restituisce
Istanza di DatabaseAccount che rappresenta l'account del database Cosmos DB.
Tipo restituito
Eccezioni
Il database con l'ID specificato esiste già.
get_database_client
Recuperare un database esistente con l'ID (nome).
get_database_client(database: str | DatabaseProxy | Dict[str, Any]) -> DatabaseProxy
Parametri
- database
- str oppure dict(str, str) oppure DatabaseProxy
ID (nome), che rappresenta le proprietà o l'istanza databaseProxy del database da leggere.
Restituisce
Istanza di DatabaseProxy che rappresenta il database recuperato.
Tipo restituito
Eccezioni
Il database con l'ID specificato esiste già.
list_databases
Elencare i database in un account di database SQL di Cosmos DB.
list_databases(max_item_count: int | None = None, populate_query_metrics: bool | None = None, **kwargs: Any) -> Iterable[Dict[str, Any]]
Parametri
- max_item_count
- int
Numero massimo di elementi da restituire nell'operazione di enumerazione.
- session_token
- str
Token da usare con coerenza della sessione.
- response_hook
- Callable
Oggetto chiamabile richiamato con i metadati della risposta.
Restituisce
Iterabile delle proprietà del database (dict).
Tipo restituito
Eccezioni
Il database con l'ID specificato esiste già.
query_databases
Eseguire query sui database in un account di database SQL di Cosmos DB.
query_databases(query: str | None = None, parameters: List[Dict[str, Any]] | None = None, enable_cross_partition_query: bool | None = None, max_item_count: int | None = None, populate_query_metrics: bool | None = None, **kwargs: Any) -> Iterable[Dict[str, Any]]
Parametri
Matrice facoltativa di parametri per la query. Ignorato se non viene specificata alcuna query.
- enable_cross_partition_query
- bool
Consentire l'analisi sulle query che non è stato possibile servire come indicizzazione è stata esplicitamente disattivata sui percorsi richiesti.
- max_item_count
- int
Numero massimo di elementi da restituire nell'operazione di enumerazione.
- session_token
- str
Token da usare con coerenza sessione.
- response_hook
- Callable
Chiamata richiamata con i metadati della risposta.
Restituisce
Iterabile delle proprietà del database (dict).
Tipo restituito
Eccezioni
Il database con l'ID specificato esiste già.
Azure SDK for Python