Modificando Tabelas Ativas Globais Usando APIs
Em uma tabela Ativa Global, o esquema da tabela não pode ser alterado.
Não é possível adicionar novos campos ou remover campos existentes de uma tabela Ativa Global. A alteração do limite de capacidade de leitura ou do limite de capacidade de gravação em uma tabela Ativa Global aplica as alterações somente à região em que a alteração é iniciada. No entanto, alterar a capacidade de armazenamento ou alterar o valor TTL padrão no nível da tabela aplica as alterações a todas as regiões de réplica da tabela.
Modificando uma tabela Ativa Global
Os usuários podem usar a solicitação de tabela existente (TableRequest()) para atualizar o seguinte em uma tabela Ativa Global:
- read-units: Altere o valor de read-units de uma réplica de tabela regional
- unidades de gravação: Altere o valor de unidades de gravação de uma réplica de tabela regional
- modo de capacidade: Altere o modo de capacidade (de sob demanda para provisionado ou vice-versa) de uma réplica de tabela regional.
- tamanho da tabela: altere a capacidade de armazenamento da tabela em todas as réplicas regionais.
Alterando os limites da tabela (unidades de leitura, unidades de gravação e capacidade de armazenamento) de uma réplica de tabela regional. A capacidade de armazenamento é alterada em todas as réplicas regionais.
TableLimits limits = new TableLimits(40, 10, 5);
TableRequest treq = new TableRequest().setTableName( "<table_name>" ).setTableLimits(limits);
TableResult tres = handle.tableRequest(treq);
/* wait for completion of the operation */
tres.waitForCompletion(handle, 60000, 1000);
Alterando o modo de capacidade de uma réplica de tabela regional de provisionada para a capacidade sob demanda:
// Call the constructor to only set storage limit (for on-demand)
TableLimits limits = new TableLimits(10);
TableRequest treq = new TableRequest().setTableName("<table_name>").setTableLimits(limits);
TableResult tres = serviceHandle.tableRequest(treq);
tres.waitForCompletion(serviceHandle, 50000,3000);
Você também pode adicionar uma réplica regional de uma tabela Ativa Global existente usando
AddReplicaRequest()
./* add replica ca-toronto-1 */
System.output.println("Adding replica: " + region);
AddReplicaRequest addRepReq = new AddReplicaRequest()
.setTableName(tableName)
.setReplicaName(region);
res = handle.addReplica(addRepReq);
res.waitForCompletion(handle, 90000, 1000);
System.output.println("Added replica: " + region);
System.output.println("Table:\n" + JsonUtils.prettyPrint(res));
Você pode eliminar uma réplica regional de uma tabela Ativa Global existente usando
DropReplicaRequest()
. Quando todas as réplicas regionais são eliminadas, a tabela Ativo Global torna-se uma tabela única./* drop replica ca-montreal-1 */
System.output.println("\nDropping replica: " + region);
DropReplicaRequest dropRepReq = new DropReplicaRequest()
.setTableName(tableName)
.setReplicaName(region);
res = handle.dropReplica(dropRepReq);
res.waitForCompletion(handle, 60000, 500);
System.output.println("Dropped replica: " + region);
Observação:
Consulte Eliminando réplicas de tabelas pai-filho para entender a dependência ao eliminar uma réplica de uma tabela pai.Modificando Tabelas Ativas Globais Usando APIs
Copyright ©2024,
Oracle e/ou suas empresas afiliadas.