Exemplos do SDK do Azure Cosmos DB for NoSQL para Python
APLICA-SE A: NoSQL
Soluções de exemplo que fazem operações CRUD e outras operações comuns em recursos do Azure Cosmos DB são incluídas na main/sdk/cosmos
pasta do repositório GitHub azure/azure-sdk-for-python . Este artigo fornece:
- Ligações para as tarefas em cada um dos ficheiros do projeto de exemplo do Python.
- Ligações para o conteúdo relacionado de referência da API.
Pré-requisitos
- Uma conta do Azure Cosmos DB. As suas opções são:
- Dentro de uma assinatura ativa do Azure:
- Crie uma Conta gratuita do Azure ou use sua assinatura existente
- Créditos mensais do Visual Studio
- Nível gratuito do Azure Cosmos DB
- Sem uma assinatura ativa do Azure:
- Experimente 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
python
executável no seuPATH
. (Para mais informações, consulte o Política de suporte de versão Python dos SDKs do Azure.) - Visual Studio Code.
- Extensão do Python para o Visual Studio Code.
- Git.
- Azure Cosmos DB para NoSQL SDK para Python
Exemplos de base de dados
O exemplo database_management.py Python mostra como executar 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, consulte o artigo conceitual Trabalhando com bancos de dados, contêineres e itens .
Task | Referência da API |
---|---|
Criar uma base de dados | CosmosClient.create_database |
Ler uma base de dados por ID | CosmosClient.get_database_client |
Consultar as bases de dados | CosmosClient.query_databases |
Listar bases de dados para uma conta | CosmosClient.list_databases |
Eliminar uma base de dados | CosmosClient.delete_database |
Exemplos de contentor
O exemplo container_management.py Python mostra como executar as seguintes tarefas usando métodos DatabaseProxy. Para saber mais sobre as coleções do Azure Cosmos DB antes de executar os exemplos a seguir, consulte o artigo conceitual Trabalhando com bancos de dados, contêineres e itens .
Task | Referência da API |
---|---|
Consulta para 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 por sua ID | database.get_container_client |
Gerenciar a taxa de transferência provisionada do contêiner | container.replace_throughput |
Eliminar um contentor | database.delete_container |
Exemplos de itens
Os exemplos document_management.py e change_feed_management.py Python mostram como executar as seguintes tarefas usando métodos ContainerProxy. Para saber mais sobre os itens do Azure Cosmos DB antes de executar os exemplos a seguir, consulte o artigo conceitual Trabalhando com bancos de dados, contêineres e itens .
Task | Referência da API |
---|---|
Criar itens em um contêiner | container.create_item |
Ler um item pelo seu ID | container.read_item |
Ler todos os itens em um contêiner | container.read_all_items |
Consultar um item pelo seu ID | container.query_items |
Substituir um item | container.replace_item |
Upsert um item | container.upsert_item |
Eliminar um item | container.delete_item |
Obter o feed de mudança de itens em um contêiner | container.query_items_change_feed |
Exemplos de indexação
O exemplo index_management.py Python mostra como executar as tarefas a seguir. Para saber mais sobre indexação no Azure Cosmos DB antes de executar os exemplos a seguir, consulte os artigos conceituais de políticas de indexação, tipos de indexação e caminhos de indexação.
Task | Referência da API |
---|---|
Excluir um item específico da indexação | documentos.Diretiva de indexação. Excluir |
Usar indexação manual com itens específicos indexados | documentos. IndexingDirective.Include |
Excluir caminhos da indexação | Definir caminhos a serem excluídos na propriedade IndexingPolicy |
Utilizar índices de intervalo em cadeias | Defina a política de indexação com índices de intervalo no tipo de dados de cadeia de caracteres. 'kind': documents.IndexKind.Range , 'dataType': documents.DataType.String |
Realizar uma transformação de índice | base de dados. replace_container (use a política de indexação atualizada) |
Utilizar análises quando só existe um índice de hash no caminho | definir o enable_scan_in_query=True e enable_cross_partition_query=True ao consultar os itens |
Próximos passos
Tentando fazer o planejamento de capacidade para uma migração para o Azure Cosmos DB? Você pode usar informações sobre seu cluster de banco de dados existente para planejamento de capacidade.
- Se tudo o que você sabe é o número de vCores e servidores em seu cluster de banco de dados existente, leia sobre como estimar unidades de solicitação usando vCores ou vCPUs
- Se você souber as taxas de solicitação típicas para sua carga de trabalho de banco de dados atual, leia sobre como estimar unidades de solicitação usando o planejador de capacidade do Azure Cosmos DB