CosmosClient Classe
Uma representação lógica do lado do cliente de uma conta do Azure Cosmos DB.
Utilize este cliente para configurar e executar pedidos para o serviço do Azure Cosmos DB.
Recomenda-se manter uma única instância do CosmosClient por duração da aplicação, o que permite uma gestão e desempenho de ligações eficientes.
A inicialização do CosmosClient é uma operação intensiva – não utilize a inicialização de instâncias do CosmosClient como credenciais ou validações de conectividade de rede.
Instanciar um novo CosmosClient.
- Herança
-
builtins.objectCosmosClient
Construtor
CosmosClient(url: str, credential: Any, consistency_level: str | None = None, **kwargs: Any)
Parâmetros
Pode ser a chave de conta ou um dicionário de tokens de recursos.
- consistency_level
- str
Nível de consistência a utilizar para a sessão. O valor predefinido é Nenhum (Nível de conta). Mais informações sobre níveis de consistência e valores possíveis: https://aka.ms/cosmos-consistency-levels
- timeout
- int
Um tempo limite absoluto em segundos para o pedido HTTP combinado e o processamento de resposta.
- connection_timeout
- int
O tempo limite do pedido HTTP em segundos.
- connection_mode
- str
O modo de ligação para o cliente – atualmente só suporta "Gateway".
- proxy_config
- ProxyConfiguration
Configuração do proxy de ligação.
- ssl_config
- SSLConfiguration
Configuração do SSL de ligação.
- connection_verify
- bool
Se pretende verificar a ligação, o valor predefinido é Verdadeiro.
- connection_cert
- str
Um certificado alternativo para verificar a ligação.
- retry_total
- int
Tentativas de repetição máximas.
- retry_backoff_max
- int
Tempo máximo de espera de repetição em segundos.
- retry_fixed_interval
- int
Foi corrigido o intervalo de repetição em milissegundos.
- retry_read
- int
Número máximo de tentativas de repetição de leitura do socket.
- retry_connect
- int
Número máximo de tentativas de repetição de erros de ligação.
- retry_status
- int
Número máximo de tentativas de repetição em códigos de estado de erro.
- retry_backoff_factor
- float
Fator para calcular o tempo de espera entre tentativas de repetição.
- enable_endpoint_discovery
- bool
Ative a deteção de pontos finais para contas de base de dados georreplicadas. (Predefinição: Verdadeiro)
As localizações preferenciais para contas de base de dados georreplicadas.
- enable_diagnostics_logging
- bool
Ative a política do CosmosHttpLogging. Tem de ser utilizado juntamente com um logger para trabalhar.
- logger
- Logger
Logger a ser utilizado para recolher diagnósticos de pedidos. Pode ser transmitido ao nível do cliente (para registar todos os pedidos) ou num único nível de pedido. Os pedidos serão registados ao nível da INFO.
Exemplos
Crie uma nova instância do cliente do 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)
Métodos
create_database |
Crie uma nova base de dados com o ID (nome) especificado. |
create_database_if_not_exists |
Crie a base de dados se ainda não existir. Se a base de dados já existir, as definições existentes serão devolvidas. .. nota: esta função não verifica nem atualiza as definições de base de dados existentes nem oferece débito se forem diferentes das transmitidas. |
delete_database |
Elimine a base de dados com o ID (nome) especificado. |
from_connection_string |
Crie uma instância do CosmosClient a partir de uma cadeia de ligação. Isto pode ser obtido a partir do portal do Azure. Para obter uma lista completa dos argumentos de palavra-chave opcionais, veja o construtor cosmosClient. |
get_database_account |
Obtenha as informações da conta da base de dados. |
get_database_client |
Obtenha uma base de dados existente com o ID (nome). |
list_databases |
Liste as bases de dados numa conta de base de dados SQL do Cosmos DB. |
query_databases |
Consulte as bases de dados numa conta de base de dados SQL do Cosmos DB. |
create_database
Crie uma nova base de dados com o ID (nome) especificado.
create_database(id: str, populate_query_metrics: bool | None = None, offer_throughput: int | ThroughputProperties | None = None, **kwargs: Any) -> DatabaseProxy
Parâmetros
- id
ID (nome) da base de dados a criar.
- offer_throughput
O débito aprovisionado para esta oferta.
- session_token
- str
Token para utilização com consistência de sessão.
- etag
- str
Um valor ETag ou o caráter universal (*). Utilizado para verificar se o recurso foi alterado e agir de acordo com a condição especificada pelo parâmetro match_condition .
- match_condition
- MatchConditions
A condição de correspondência a utilizar no etag.
- response_hook
- Callable
Um callable invocado com os metadados de resposta.
Devoluções
Uma instância do DatabaseProxy que representa a nova base de dados.
Tipo de retorno
Exceções
A base de dados com o ID especificado já existe.
Exemplos
Crie uma base de dados na conta do 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
Crie a base de dados se ainda não existir.
Se a base de dados já existir, as definições existentes serão devolvidas.
.. nota: esta função não verifica nem atualiza as definições de base de dados existentes nem oferece débito se forem diferentes das transmitidas.
create_database_if_not_exists(id: str, populate_query_metrics: bool | None = None, offer_throughput: int | ThroughputProperties | None = None, **kwargs: Any) -> DatabaseProxy
Parâmetros
- id
ID (nome) da base de dados para ler ou criar.
- populate_query_metrics
- bool
Ative a devolução de métricas de consulta nos cabeçalhos de resposta.
- offer_throughput
- int ou <xref:azure.cosmos.ThroughputProperties.>
O débito aprovisionado para esta oferta.
- session_token
- str
Token para utilização com consistência de sessão.
- etag
- str
Um valor ETag ou o caráter universal (*). Utilizado para verificar se o recurso foi alterado e agir de acordo com a condição especificada pelo parâmetro match_condition .
- match_condition
- MatchConditions
A condição de correspondência a utilizar no etag.
- response_hook
- Callable
Um callable invocado com os metadados de resposta.
Devoluções
Uma instância do DatabaseProxy que representa a base de dados.
Tipo de retorno
Exceções
A leitura ou criação da base de dados falhou.
delete_database
Elimine a base de dados com o ID (nome) especificado.
delete_database(database: str | DatabaseProxy | Dict[str, Any], populate_query_metrics: bool | None = None, **kwargs: Any) -> None
Parâmetros
- database
- str ou dict(str, str) ou DatabaseProxy
O ID (nome), o ditado que representa as propriedades ou DatabaseProxy instâncias da base de dados a eliminar.
- session_token
- str
Token para utilização com consistência de sessão.
- etag
- str
Um valor ETag ou o caráter universal (*). Utilizado para verificar se o recurso foi alterado e agir de acordo com a condição especificada pelo parâmetro match_condition .
- match_condition
- MatchConditions
A condição de correspondência a utilizar no etag.
- response_hook
- Callable
Um callable invocado com os metadados de resposta.
Tipo de retorno
Exceções
Se não foi possível eliminar a base de dados.
from_connection_string
Crie uma instância do CosmosClient a partir de uma cadeia de ligação.
Isto pode ser obtido a partir do portal do Azure. Para obter uma lista completa dos argumentos de palavra-chave opcionais, veja o construtor cosmosClient.
from_connection_string(conn_str: str, credential: Any | None = None, consistency_level: str | None = None, **kwargs: Any) -> CosmosClient
Parâmetros
Credenciais alternativas a utilizar em vez da chave fornecida na cadeia de ligação.
Nível de consistência a utilizar para a sessão. O valor predefinido é Nenhum (Nível de conta).
Exceções
A base de dados com o ID especificado já existe.
get_database_account
Obtenha as informações da conta da base de dados.
get_database_account(**kwargs: Any) -> DatabaseAccount
Parâmetros
- response_hook
- Callable
Um callable invocado com os metadados de resposta.
Devoluções
Uma instância databaseAccount que representa a Conta de Base de Dados do Cosmos DB.
Tipo de retorno
Exceções
A base de dados com o ID especificado já existe.
get_database_client
Obtenha uma base de dados existente com o ID (nome).
get_database_client(database: str | DatabaseProxy | Dict[str, Any]) -> DatabaseProxy
Parâmetros
- database
- str ou dict(str, str) ou DatabaseProxy
O ID (nome), o ditado que representa as propriedades ou a instância databaseProxy da base de dados a ler.
Devoluções
Uma instância do DatabaseProxy que representa a base de dados obtida.
Tipo de retorno
Exceções
A base de dados com o ID especificado já existe.
list_databases
Liste as bases de dados numa conta de base de dados SQL do Cosmos DB.
list_databases(max_item_count: int | None = None, populate_query_metrics: bool | None = None, **kwargs: Any) -> Iterable[Dict[str, Any]]
Parâmetros
- session_token
- str
Token para utilização com consistência de sessão.
- response_hook
- Callable
Um callable invocado com os metadados de resposta.
Devoluções
Iterável de propriedades da base de dados (dicts).
Tipo de retorno
Exceções
A base de dados com o ID especificado já existe.
query_databases
Consulte as bases de dados numa conta de base de dados SQL do 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]]
Parâmetros
Matriz opcional de parâmetros para a consulta. Ignorado se não for fornecida nenhuma consulta.
- enable_cross_partition_query
- bool
Permitir a análise nas consultas que não puderam ser servidas porque a indexação foi desativada nos caminhos pedidos.
- session_token
- str
Token para utilização com consistência de sessão.
- response_hook
- Callable
Um callable invocado com os metadados de resposta.
Devoluções
Iterável de propriedades da base de dados (dicts).
Tipo de retorno
Exceções
A base de dados com o ID especificado já existe.
Azure SDK for Python