Chame a operação DeleteVectors com o Go SDK V2 para excluir dados vetoriais com base em chaves específicas. Esta é uma operação irreversível; portanto, proceda com cautela.
Permissões
Por padrão, uma conta Alibaba Cloud tem todas as permissões. Usuários ou funções do Resource Access Management (RAM) não possuem permissões por padrão. A conta Alibaba Cloud ou um administrador deve conceder permissões por meio de uma política do RAM ou de uma política de bucket.
|
API |
Ação |
Descrição |
|
DeleteVectors |
|
Exclui dados vetoriais. |
Definição do método
func (c *VectorsClient) DeleteVectors(ctx context.Context, request *DeleteVectorsRequest, optFns ...func(*oss.Options)) (*DeleteVectorsResult, error)
Parâmetros da solicitação
|
Parâmetro |
Tipo |
Descrição |
|
ctx |
context.Context |
Contexto da solicitação. |
|
request |
*DeleteVectorsRequest |
Parâmetros da solicitação, incluindo nome do bucket, nome do índice e lista de chaves de vetor. Para obter mais informações, consulte DeleteVectorsRequest. |
|
optFns |
...func(*Options) |
(Opcional) Parâmetros de configuração no nível da operação. Para obter mais informações, consulte Options. |
Valores de retorno
|
Parâmetro |
Tipo |
Descrição |
|
result |
*DeleteVectorsResult |
Valor retornado. Para obter mais informações, consulte DeleteVectorsResult. |
|
err |
error |
Mensagem de erro. Retorna nil se a operação for bem-sucedida. |
Código de exemplo
package main
import (
"context"
"flag"
"log"
"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss"
"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss/credentials"
"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss/vectors"
)
var (
region string
bucketName string
accountId string
)
func init() {
// Define command-line parameters.
flag.StringVar(®ion, "region", "", "The region in which the vector bucket is located.")
flag.StringVar(&bucketName, "bucket", "", "The name of the vector bucket.")
flag.StringVar(&accountId, "account-id", "", "The Alibaba Cloud account ID.")
}
func main() {
// Parse command-line parameters.
flag.Parse()
// Verify required parameters.
if len(bucketName) == 0 {
flag.PrintDefaults()
log.Fatalf("invalid parameters, bucket name required")
}
if len(region) == 0 {
flag.PrintDefaults()
log.Fatalf("invalid parameters, region required")
}
if len(accountId) == 0 {
flag.PrintDefaults()
log.Fatalf("invalid parameters, accountId required")
}
// Create a configuration and set the credential provider, region, and account ID.
cfg := oss.LoadDefaultConfig().
WithCredentialsProvider(credentials.NewEnvironmentVariableCredentialsProvider()).
WithRegion(region).
WithAccountId(accountId).
// To enable public access, set this to false or remove this line.
WithUseInternalEndpoint(true)
// Create a Vectors client.
client := vectors.NewVectorsClient(cfg)
// Build the request to delete vector data.
request := &vectors.DeleteVectorsRequest{
Bucket: oss.Ptr(bucketName),
IndexName: oss.Ptr("index"),
Keys: [ ]string{
"key1", "key2", // A list of vector keys to delete.
},
}
// Execute the operation to delete vector data.
result, err := client.DeleteVectors(context.TODO(), request)
if err != nil {
log.Fatalf("failed to delete vectors %v", err)
}
// Print the operation result.
log.Printf("delete vectors result:%#v\n", result)
}
Referências
Para ver o código de exemplo completo sobre exclusão de dados vetoriais, consulte delete_vectors.go.