Exclui em lote pares chave-valor de um namespace KV especificado com base em uma lista especificada de nomes de chaves. O tamanho máximo do corpo da solicitação é 100 MB.
Descrição da operação
Esta operação fornece a mesma funcionalidade que BatchDeleteKv, mas permite um corpo de solicitação maior. Se o corpo da solicitação for pequeno, use a operação BatchDeleteKv para reduzir o tempo de processamento no servidor. Esta operação deve ser chamada usando um SDK. Por exemplo, ao usar o SDK Golang, chame a função BatchDeleteKvWithHighCapacityAdvance.
func TestBatchDeleteWithHighCapacity() error {
// Initialize the configuration
cfg := new(openapi.Config)
cfg.SetAccessKeyId("xxxxxxxxx")
cfg.SetAccessKeySecret("xxxxxxxxxx")
cli, err := NewClient(cfg)
if err != nil {
return err
}
runtime := &util.RuntimeOptions{}.
// Construct the batch delete request for key-value pairs
namespace := "test_batch_put"
rawReq := BatchDeleteKvRequest{
Namespace: &namespace,
}
for i := 0; i < 10000; i++ {
key := fmt.Sprintf("test_key_%d", i)
rawReq.Keys = append(rawReq.Keys, &key)
}
payload, err := json.Marshal(rawReq)
if err != nil {
return err
}.
// If the payload is larger than 2 MB, call the high-capacity operation to delete the key-value pairs
reqHighCapacity := BatchDeleteKvWithHighCapacityAdvanceRequest{
Namespace: &namespace,
UrlObject: bytes.NewReader(payload),
}
resp, err := cli.BatchDeleteKvWithHighCapacityAdvance(&reqHighCapacity, runtime)
if err != nil {
return err
}
return nil
}.
Experimente agora
Testar
Autorização RAM
Parâmetros da solicitação
|
Parâmetro |
Tipo |
Obrigatório |
Descrição |
Exemplo |
| Namespace |
string |
Sim |
O nome do namespace especificado quando você chamou CreateKvNamespace. |
test_namespace |
| Url |
string |
Sim |
A URL de download que contém os pares chave-valor a serem excluídos em lote, como uma URL de download do OSS com permissões de leitura.
|
https://xxxobject.oss-cn-region.aliyuncs.com/9d91_xxxxxxxxxxx_158bb6e0f97c477791209bb46bd599f7 |
Elementos de resposta
|
Elemento |
Tipo |
Descrição |
Exemplo |
|
object |
Schema da resposta. |
||
| RequestId |
string |
O ID da solicitação. |
EEEBE525-F576-1196-8DAF-2D70CA3F4D2F |
| FailKeys |
array |
A lista de chaves que falharam ao ser excluídas. |
|
|
string |
O nome da chave que falhou ao ser excluída. |
test_key1 |
|
| SuccessKeys |
array |
A lista de chaves que foram excluídas com sucesso. |
|
|
string |
O nome da chave que foi excluída com sucesso. |
test_key1 |
Exemplos
Resposta de sucesso
JSON formato
{
"RequestId": "EEEBE525-F576-1196-8DAF-2D70CA3F4D2F",
"FailKeys": [
"test_key1"
],
"SuccessKeys": [
"test_key1"
]
}
Códigos de erro
|
Código de status HTTP |
Código de erro |
Mensagem de erro |
Descrição |
|---|---|---|---|
| 400 | InvalidAccount.Malformed | The specified account is invalid. | The account number is not entered correctly, for example, the input is empty. |
| 400 | InvalidNameSpace.Malformed | The specified namespace is invalid. | The bucket name is entered incorrectly, such as an empty string. |
| 400 | InvalidKey.Malformed | The specified key is invalid. | Key name input error, such as entering an empty string. |
| 400 | InvalidKey.ExceedsMaximum | The size of the key cannot exceed 512 bytes. | The length of the requested key is too large. |
| 400 | InvalidValue.ExceedsMaximum | The size of the value cannot exceed 2,000,000 bytes. | The value deposited is too large. |
| 403 | InvalidKey.ExceedsCapacity | The maximum capacity of a single namespace cannot exceed 1 GB. | The capacity of the storage space exceeds the limit. |
| 403 | Unauthorized.InvalidParameters | The specified authentication parameters are invalid. | Authentication parameter input error. |
| 403 | Unauthorized.InvalidTime | The specified authentication time is invalid. | The authentication time parameter you entered is invalid. Check the parameter value and try again. |
| 403 | Unauthorized.InvalidToken | Token authentication failed. | The token you entered is invalid. Please check and enter the correct token and try again. |
| 404 | InvalidAccount.NotFound | The specified account does not exist. | The specified account does not exist. |
| 404 | InvalidNameSpace.NotFound | The specified namespace does not exist. | |
| 404 | InvalidKey.NotFound | The specified key does not exist. | The specified key-value pair does not exist. |
| 406 | InvalidNameSpace.Duplicate | The specified namespace already exists. | Specified storage space |
| 406 | InvalidNameSpace.QuotaFull | The maximum number of namespaces is exceeded. | The number of storage spaces exceeds the capacity limit. |
| 429 | TooManyRequests | Too many requests are submitted. | Submissions are too frequent, please try again later |
| 429 | TooQuickRequests | Request for putting or deleting keys are frequently submitted. | The modification or deletion of key-value pairs is too frequent. |
Consulte Códigos de Erro para uma lista completa.
Notas de versão
Consulte Notas de Versão para uma lista completa.