Azure Cosmos DB para NoSQL: Java SDK v4 exemplos

APLICA-SE A: NoSQL

Importante

Para saber mais sobre Java SDK v4, consulte as notas de lançamento do Azure Cosmos DB Java SDK v4,o repositório Maven, o repositório Azure Cosmos DB Java SDK v4 e o guia de resolução de problemas Azure Cosmos DB Java SDK v4 para obter mais informações. Se está a utilizar uma versão mais antiga do que v4, consulte o guia Migrae para Azure Cosmos DB Java SDK v4 para ajudar a atualizar para v4.

Importante

Se não tiver uma subscrição do Azure, crie uma conta Azure gratuita antes de começar.

Você pode experimentar Azure Cosmos DB gratuitamente, sem uma assinatura Azure, e sem necessidade de compromisso. Em alternativa, pode criar uma conta de nível livre Azure Cosmos DB, com os primeiros 1000 RU/s e 25 GB de armazenamento gratuitamente. Também pode utilizar o emulador Azure Cosmos DB com um URI de https://localhost:8081. Para a chave a utilizar com o emulador, consulte pedidos de autenticação.

As aplicações de amostra mais recentes que realizam operações CRUD e outras operações comuns em recursos DB Azure Cosmos estão incluídas no repositório GitHub azure-cosmos-java-sql-api-amostras . Este artigo fornece:

  • Ligações para as tarefas em cada um dos ficheiros do projeto de Java de exemplo.
  • Ligações para o conteúdo de referência da API relacionada.

Pré-requisitos

Precisa do seguinte apra executar esta aplicação de exemplo:

  • Java Development Kit 8
  • Azure Cosmos DB Java SDK v4

Você pode opcionalmente usar Maven para obter os mais recentes binários Azure Cosmos DB Java SDK v4 para uso no seu projeto. O Maven adiciona automaticamente quaisquer dependências necessárias. Caso contrário, pode transferir diretamente as dependências listadas no ficheiro pom.xml e adicioná-las ao seu caminho de compilação.

<dependency>
	<groupId>com.azure</groupId>
	<artifactId>azure-cosmos</artifactId>
	<version>LATEST</version>
</dependency>

Executar os exemplos de aplicações

Clonar o repositório de exemplo:

$ git clone https://github.com/Azure-Samples/azure-cosmos-java-sql-api-samples.git

$ cd azure-cosmos-java-sql-api-samples

Pode executar as amostras utilizando um IDE (Eclipse, IntelliJ ou VSCODE) ou a partir da linha de comando utilizando o Maven.

Estas variáveis ambientais devem ser definidas

ACCOUNT_HOST=your account hostname;ACCOUNT_KEY=your account primary key

a fim de dar às amostras acesso de leitura/escrita à sua conta.

Para executar uma amostra, especifique a sua Classe Principal

com.azure.cosmos.examples.sample.synchronicity.MainClass

onde a amostra.synchronicity.MainClass pode ser

  • crudquickstart.sync.SampleCRUDQuickstart
  • crudquickstart.async.SampleCRUDQuickstartAsync
  • indexmanagement.sync.SampleIndexManagement
  • indexmanagement.async.SampleIndexManagementAsync
  • ressaltado.sync.SampleStoredProcedure
  • storedprocedure.async.SampleStoredProcedureAsync
  • mudar de alimentação. SampleChangeFeedProcessor (O Changefeed tem apenas uma amostra de async, sem amostra sincronizada.) ... etc...

Nota

Cada amostra é independente, configura-se automaticamente e limpa-se em seguida. As amostras emitem várias chamadas para criar uma CosmosContainer ou CosmosAsyncContainer. Cada vez que isto é feito, a sua subscrição é cobrada por 1 hora de utilização pelo escalão de desempenho da coleção criada.

Exemplos de base de dados

Os ficheiros de amostra CRUD da base de dados para sincronização e assíncos mostram como executar as seguintes tarefas. Para conhecer as bases de dados do Azure Cosmos DB antes de executar as seguintes amostras, consulte Trabalhar com bases de dados, contentores e artigos conceptuais.

Tarefa Referência da API
Criar uma base de dados CosmosClient.createDatabaseIfNotExists
CosmosAsyncClient.createDatabaseIfNotExists
Leia uma base de dados por ID CosmosClient.getDatabase
CosmosAsyncClient.getDatabase
Ler todas as bases de dados CosmosClient.readAllDatabases
CosmosAsyncClient.readAllDatabases
Eliminar uma base de dados CosmosDatabase.delete
CosmosAsyncDatabase.delete

Exemplos de coleção

Os ficheiros de amostras CRUD de recolha para sincronização e async mostram como executar as seguintes tarefas. Para conhecer as coleções DB do Azure Cosmos antes de executar as seguintes amostras, consulte Trabalhar com bases de dados, contentores e artigos conceptuais.

Tarefa Referência da API
Criar uma coleção CosmosDatabase.createContainerIfNotExists
CosmosAsyncDatabase.createContainerIfNotExists
Alterar um desempenho configurado de uma coleção CosmosContainer.replaceThroughput
CosmosAsyncContainer.replaceProvisionedThroughput
Obtenha uma coleção por ID CosmosDatabase.getContainer
CosmosAsyncDatabase.getContainer
Ler todas as coleções numa base de dados CosmosDatabase.readAllContainers
CosmosAsyncDatabase.readAllContainers
Delete a collection (Eliminar uma coleção) CosmosContainer.delete
CosmosAsyncContainer.delete

Exemplos de coleção de autoescala

Para saber mais sobre a autoescalação antes de executar estas amostras, dê uma olhada nestas instruções para permitir a autoescalação na sua conta e nas suas bases de dados e contentores.

Os ficheiros de amostra de base de dados de escala automática para sincronização e async mostram como executar a seguinte tarefa.

Tarefa Referência da API
Criar uma base de dados com produção máxima de autoescalada especificada CosmosClient.createDatabase
CosmosAsyncClient.createDatabase

Os ficheiros de recolha automática de amostras para sincronização e assínca mostram como executar as seguintes tarefas.

Tarefa Referência da API
Criar uma coleção com produção máxima de autoescala especificada CosmosDatabase.createContainerIfNotExists
CosmosAsyncDatabase.createContainerIfNotExists
Alterar a produção máxima de autoescala configurada de uma coleção CosmosContainer.replaceThroughput
CosmosAsyncContainer.replaceThroughput
Leia a configuração de produção de escala automática de uma coleção CosmosContainer.readThroughput
CosmosAsyncContainer.readThroughput

Exemplos de recolha de armazenamento analítico

Os ficheiros CRUD Samples de recolha de armazenamento analítico para sincronização e assínca mostram como executar as seguintes tarefas. Para conhecer as coleções DB da Azure Cosmos antes de executar as seguintes amostras, leia sobre a Azure Cosmos DB Synapse e a Analytical Store.

Tarefa Referência da API
Criar uma coleção CosmosDatabase.createContainerIfNotExists
CosmosAsyncDatabase.createContainerIfNotExists

Exemplos de documento

Os ficheiros de amostras crud documentais para sincronização e assínca mostram como executar as seguintes tarefas. Para conhecer os documentos DB da Azure Cosmos antes de executar as seguintes amostras, consulte Trabalhar com bases de dados, contentores e artigos conceptuais.

Tarefa Referência da API
Criar um documento CosmosContainer.createItem
CosmosAsyncContainer.createItem
Leia um documento por ID CosmosContainer.readItem
CosmosAsyncContainer.readItem
Consulta de documentos CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Substituir um documento CosmosContainer.replaceItem
CosmosAsyncContainer.replaceItem
Upsert um documento CosmosContainer.upsertItem
CosmosAsyncContainer.upsertItem
Eliminar um documento CosmosContainer.deleteItem
CosmosAsyncContainer.deleteItem
Substitua um documento por verificação ETag condicional CosmosItemRequestOptions.setIfMatchETag (sincronização)
CosmosItemRequestOptions.setIfMatchETag (async)
Ler documento apenas se este for alterado CosmosItemRequestOptions.setIfNoneMatchETag (sincronização)
CosmosItemRequestOptions.setIfNoneMatchETag (async)
Atualização parcial do documento CosmosContainer.patchItem
Atualização de documentos a granel Amostras a granel
Lote transacional amostras de lote

Exemplos de indexação

O ficheiro Recolha CRUD Samples mostra como executar as seguintes tarefas. Para aprender sobre a indexação em Azure Cosmos DB antes de executar as seguintes amostras, consulte políticas de indexação, tipos de indexação e artigos conceptuais de caminhos de indexação .

Tarefa Referência da API
Incluir caminhos de documentos especificados no índice IndexingPolicy.IncludedPaths
Excluir caminhos de documentos especificados do índice IndexingPolicy.ExcludedPaths
Criar um índice composto IndexingPolicy.setCompositeIndexes
Caminho composto
Criar um índice geoespacial IndexingPolicy.setSpatialIndexes
EspacialSpec
Tipo espacial

Para obter mais informações sobre a indexação, veja Políticas de indexação do Azure Cosmos DB.

Exemplos de consultas

Os ficheiros de amostras de consulta para sincronização e assínco mostram como fazer as seguintes tarefas utilizando a gramática de consulta SQL. Para saber mais sobre a referência de consulta SQL em Azure Cosmos DB antes de executar as seguintes amostras, consulte exemplos de consulta SQL para Azure Cosmos DB.

Tarefa Referência da API
Consultar todos os documentos CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Consultar igualdade com == CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Consultar desigualdade com != e NOT CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Consulta utilizando operadores de gama como >, ><= , <= CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Consultar com operadores de intervalo em relação a cadeias CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Consulta com ORDER BY CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Consulta com DISTINCT CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Consulta com funções agregadas CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Trabalhar com subdocumentos CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Consultar com Associações dentro de documentos CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Consulta com operadores de cordas, matemática e matrizes CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Consultar com SQL parametrizado com SqlQuerySpec CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Consultar com paginação explícita CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Consultar coleções particionadas em paralelo CosmosContainer.queryItems
CosmosAsyncContainer.queryItems

Exemplos de feed de alterações

O ficheiro Change Feed Processor Sample mostra como fazer as seguintes tarefas. Para aprender sobre a mudança de feed em Azure Cosmos DB antes de executar as seguintes amostras, consulte read Azure Cosmos DB change feed e Change feed processor.

Tarefa Referência da API
Funcionalidade básica de feed de alteração ChangeFeedProcessor.changeFeedProcessorBuilder
Leia o feed de mudança desde o início ChangeFeedProcessorOptions.setStartFromBeginning()

Exemplos de programação do lado do servidor

O ficheiro de amostra de procedimento armazenado mostra como fazer as seguintes tarefas. Para saber mais sobre a programação do lado do servidor em Azure Cosmos DB antes de executar as seguintes amostras, consulte procedimentos, gatilhos e funções definidas pelo utilizador.

Tarefa Referência da API
Criar um procedimento armazenado CosmosScripts.createStoredProcedure
Executar um procedimento armazenado CosmosStoredProcedure.execute
Excluir um procedimento armazenado CosmosStoredProcedure.delete

Passos seguintes

A tentar planear a capacidade de uma migração para a Azure Cosmos DB? Pode utilizar informações sobre o seu cluster de base de dados existente para o planeamento de capacidades.