Exemplos do SDK do Azure Cosmos DB for NoSQL para Python
APLICA-SE A: NoSQL
Soluções de exemplo que realizam operações CRUD e outras operações comuns em recursos do Azure Cosmos DB estão incluídas na pasta main/sdk/cosmos
do repositório GitHub azure/azure-sdk-for-python GitHub repository. Esse artigo fornece:
- Links para as tarefas em cada um dos arquivos do projeto de exemplo do Node.js.
- Links para o conteúdo de referência da API relacionada.
Pré-requisitos
- Uma conta do Azure Cosmos DB. Suas opções são:
- Dentro de uma assinatura ativa do Azure:
- Criar uma conta gratuita do Azure ou usar sua assinatura existente
- Créditos mensais do Visual Studio
- Camada Gratuita do Azure Cosmos DB
- Sem uma assinatura do Azure:
- Experimentar o Azure Cosmos DB gratuitamente, um ambiente de testes que dura 30 dias.
- Emulador do Azure Cosmos DB
- Dentro de uma assinatura ativa do Azure:
- Python 3.7+, com o executável
python
no seuPATH
. (Para obter mais informações, confira a política de suporte à versão do Python dos SDKs do Azure.) - Visual Studio Code.
- Extensão do Python para o Visual Studio Code.
- Git.
- SDK do Azure Cosmos DB for NoSQL para Python
Exemplos de banco de dados
O exemplo database_management.py do Python mostra como realizar as seguintes tarefas usando métodos CosmosClient. Para saber mais sobre os bancos de dados do Azure Cosmos DB antes de executar os exemplos a seguir, confira o artigo conceitual Como trabalhar com bancos de dados, contêineres e itens.
Tarefa | Referência de API |
---|---|
Criar um banco de dados | CosmosClient.create_database |
Ler um banco de dados por ID | CosmosClient.get_database_client |
Consultar os bancos de dados | CosmosClient.query_databases |
Listar bancos de dados para uma conta | CosmosClient.list_databases |
Excluir um banco de dados | CosmosClient.delete_database |
Exemplos de contêiner
O exemplo container_management.py do Python mostra como realizar as seguintes tarefas usando os métodos DatabaseProxy. Para saber mais sobre as coleções do Azure Cosmos DB antes de executar os exemplos a seguir, confira o artigo conceitual Como trabalhar com bancos de dados, contêineres e itens.
Tarefa | Referência de API |
---|---|
Consulta de um contêiner | database.query_containers |
Criar um contêiner | database.create_container |
Listar todos os contêineres em um banco de dados | database.list_containers |
Obter um contêiner pela respectiva ID | database.get_container_client |
Gerenciar a taxa de transferência provisionada do contêiner | container.replace_throughput |
Excluir um contêiner | database.delete_container |
Exemplos de item
Os exemplos do Python document_management.py e change_feed_management.py mostram como realizar as tarefas a seguir usando os métodos ContainerProxy. Para saber mais sobre os itens do Azure Cosmos DB antes de executar os exemplos a seguir, confira o artigo conceitual Trabalhando com bancos de dados, contêineres e itens.
Tarefa | Referência de API |
---|---|
Criar itens em um contêiner | container.create_item |
Ler um item pela respectiva ID | container.read_item |
Ler todos os itens em um contêiner | container.read_all_items |
Consultar um item por sua ID | container.query_items |
Substituir um item | container.replace_item |
Fazer upsert de um item | container.upsert_item |
Excluir um item | container.delete_item |
Obter o feed de alterações dos itens em um contêiner | container.query_items_change_feed |
Exemplos de indexação
O exemplo index_management.py do Python mostra como realizar as seguintes tarefas. Para saber mais sobre a indexação no Azure Cosmos DB antes de executar os exemplos a seguir, consulte os artigos conceituais políticas de indexação, tipos de indexação e caminhos de indexação.
Tarefa | Referência de API |
---|---|
Excluir um item específico da indexação | documents.IndexingDirective.Exclude |
Usar indexação manual com itens específicos indexados | documents.IndexingDirective.Include |
Excluir caminhos da indexação | Definir caminhos a excluir na propriedade IndexingPolicy |
Usar índices de intervalo em cadeias de caracteres | Defina a política de indexação com índices de intervalo em tipo de dados de cadeia de caracteres. 'kind': documents.IndexKind.Range , 'dataType': documents.DataType.String |
Executar uma transformação de índice | database.replace_container (usar a política de indexação atualizada) |
Usar exames quando houver apenas índice de hash no caminho | definir o enable_scan_in_query=True e enable_cross_partition_query=True ao consultar os itens |
Próximas etapas
Tentando fazer um planejamento de capacidade para uma migração para o Microsoft Azure Cosmos DB? Você pode usar informações sobre o cluster de banco de dados existente para fazer isso.
- Se você sabe apenas o número de vCores e servidores do cluster de banco de dados existente, leia sobre como estimar unidades de solicitação com vCores ou vCPUs
- Se souber as taxas de solicitação típicas da carga de trabalho do banco de dados atual, leia sobre como estimar unidades de solicitação usando o planejador de capacidade do Azure Cosmos DB