As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Usando políticas de ciclo de vida de dados com o Amazon Serverless OpenSearch
Uma política de ciclo de vida de dados para uma coleção de séries temporais do Amazon OpenSearch Serverless determina a vida útil dos dados nessa coleção. OpenSearch O Serverless retém os dados pelo período de tempo que você configura.
Você pode configurar uma política de ciclo de vida de dados separada para cada índice de cada coleção de séries temporais em seu. Conta da AWS OpenSearch O Serverless retém documentos em índices durante, no mínimo, o período de retenção que você configura na política. Em seguida, ele os exclui automaticamente com base no melhor esforço, normalmente dentro de 48 horas ou 10% do período de retenção, o que for maior.
Somente coleções de séries temporais oferecem suporte às políticas de ciclo de vida dos dados. Elas não são compatíveis com coleções de pesquisa ou pesquisa vetorial.
Tópicos
Políticas de ciclo de vida dos dados
Em uma política de ciclo de vida dos dados, você especifica uma série de regras. A política de ciclo de vida de dados permite gerenciar o período de retenção de dados associados a índices ou coleções que correspondam a essas regras. Essas regras definem o período de retenção dos dados em um índice ou grupo de índices. Cada regra consiste em um tipo de recurso (index
), um período de retenção e uma lista de recursos (índices) aos quais o período de retenção se aplica.
Você define o período de retenção com um dos seguintes formatos:
-
"MinIndexRetention": "24h"
— O OpenSearch Serverless retém os dados do índice do período especificado em horas ou dias. Você pode definir esse período para24h
a3650d
. -
"NoMinIndexRetention": true
— O OpenSearch Serverless retém os dados do índice indefinidamente.
No exemplo de política a seguir, a primeira regra especifica um período de retenção de 15 dias para todos os índices da coleção marketing
. A segunda regra especifica que todos os nomes de índice que começam com log
na coleção finance
não têm período de retenção definido e serão mantidos indefinidamente.
{ "lifeCyclePolicyDetail": { "type": "retention", "name": "
my-policy
", "policyVersion": "MTY4ODI0NTM2OTk1N18x
", "policy": { "Rules": [ { "ResourceType":"index", "Resource":[ "index/marketing
/*" ], "MinIndexRetention": "15d" }, { "ResourceType":"index", "Resource":[ "index/finance
/log*" ], "NoMinIndexRetention": true } ] }, "createdDate": 1688245369957, "lastModifiedDate": 1688245369957 } }
No exemplo de regra de política a seguir, o OpenSearch Serverless retém indefinidamente os dados em todos os índices de todas as coleções da conta.
{ "Rules": [ { "ResourceType": "index", "Resource": [ "index/*/*" ] } ], "NoMinIndexRetention": true }
Permissões obrigatórias
As políticas de ciclo de vida do OpenSearch Serverless usam as seguintes permissões AWS Identity and Access Management (IAM). Você pode especificar as condições do IAM para restringir os usuários a políticas de ciclo de vida dos dados associadas a coleções e índices específicos.
-
aoss:CreateLifecyclePolicy
– criar uma política de ciclo de vida dos dados. -
aoss:ListLifecyclePolicies
– listar todas as políticas de ciclo de vida dos dados na conta atual. -
aoss:BatchGetLifecyclePolicy
: visualize uma política de ciclo de vida de dados associada a um nome de conta ou política. -
aoss:BatchGetEffectiveLifecyclePolicy
: visualize uma política de ciclo de vida de dados para um determinado recurso (index
é o único recurso compatível). -
aoss:UpdateLifecyclePolicy
: modifique uma determinada política de ciclo de vida de dados e altere sua configuração ou recurso de retenção. -
aoss:DeleteLifecyclePolicy
– excluir uma política de ciclo de vida dos dados.
A política de acesso baseada em identidade a seguir permite que um usuário exiba todas as políticas de ciclo de vida dos dados e atualize as políticas com o padrão de recursos collection/application-logs
.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "aoss:UpdateLifecyclePolicy" ], "Resource": "*", "Condition": { "StringEquals": { "aoss:collection": "
application-logs
" } } }, { "Effect": "Allow", "Action": [ "aoss:ListLifecyclePolicies", "aoss:BatchGetLifecyclePolicy" ], "Resource": "*" } ] }
Precedência das políticas
Pode haver situações em que as regras das políticas de ciclo de vida se sobreponham, dentro ou entre as políticas. Quando isso acontece, uma regra com um nome de recurso ou padrão mais específico para um índice substitui uma regra com um nome de recurso ou padrão mais geral para qualquer índice que seja comum às duas regras.
Por exemplo, na política a seguir, duas regras se aplicam a um índice index/sales/logstash
. Nessa situação, a segunda regra tem precedência porque index/sales/log*
é a correspondência mais longa para index/sales/logstash
. Portanto, o OpenSearch Serverless não define um período de retenção para o índice.
{ "Rules":[ { "ResourceType":"index", "Resource":[ "index/
sales
/*", ], "MinIndexRetention": "15d" }, { "ResourceType":"index", "Resource":[ "index/sales
/log*", ], "NoMinIndexRetention": true } ] }
Sintaxe da política
Forneça uma ou mais regras. Essas regras definem as configurações do ciclo de vida dos dados para seus índices sem OpenSearch servidor.
Cada regra contém os seguintes elementos: Você pode fornecer MinIndexRetention
ou NoMinIndexRetention
em cada regra, mas não em ambas.
Elemento | Descrição |
---|---|
Tipo de atributo | O tipo de recurso ao qual a regra se aplica. A única opção compatível com políticas de ciclo de vida de dados é index |
Recurso | Uma lista de nomes e/ou padrões de recursos. Os padrões consistem em um prefixo e um curinga (* ), que permitem que as permissões associadas se apliquem a vários recursos. Por exemplo, index/ . |
MinIndexRetention | O período limitado, em dias (d ) ou horas (h ), para reter o documento no índice. O limite mínimo é 24h e o máximo é3650d . |
NoMinIndexRetention | Setrue , o OpenSearch Serverless retém documentos indefinidamente. |
Veja os seguintes exemplos:
{ "Rules": [ { "ResourceType": "index", "Resource": [ "index/
autoparts-inventory
/*" ], "MinIndexRetention": "20d" }, { "ResourceType": "index", "Resource": [ "index/auto*
/gear
" ], "MinIndexRetention": "24h" }, { "ResourceType": "index", "Resource": [ "index/autoparts-inventory
/tires
" ], "NoMinIndexRetention": true } ] }
Criação de políticas de ciclo de vida de dados (AWS CLI)
Para criar uma política de ciclo de vida de dados usando as operações da API OpenSearch Serverless, use o comando. CreateLifecyclePolicy Esse comando aceita tanto políticas em linha quanto arquivos .json. As políticas em linha devem ser codificadas como uma string JSON com escape.
A solicitação a seguir cria uma política de ciclo de vida dos dados:
aws opensearchserverless create-lifecycle-policy \ --name
my-policy
\ --type retention \ --policy "{\"Rules\":[{\"ResourceType\":\"index\",\"Resource\":[\"index/autoparts-inventory
/*\"],\"MinIndexRetention\": \"81d\"},{\"ResourceType\":\"index\",\"Resource\":[\"index/sales
/orders*
\"],\"NoMinIndexRetention\":true}]}"
Para fornecer a política em um arquivo JSON, use o formato --policy
file://
my-policy
.json
Visualizar políticas de ciclo de vida de dados
Antes de criar uma coleção, talvez você queira pré-visualizar as políticas de ciclo de vida dos dados existentes na sua conta para ver qual delas tem um padrão de recurso que corresponda ao nome da coleção. A ListLifecyclePoliciessolicitação a seguir lista todas as políticas de ciclo de vida de dados em sua conta:
aws opensearchserverless list-lifecycle-policies --type retention
A solicitação retorna informações sobre todas as políticas de ciclo de vida dos dados configuradas. Para visualizar as regras de padrões definidas em uma política específica, encontre as informações sobre políticas no conteúdo do elemento lifecyclePolicySummaries
na resposta. Observe o name
final type
desta política e use essas propriedades em uma BatchGetLifecyclePolicysolicitação para receber uma resposta com os seguintes detalhes da política:
{ "lifecyclePolicySummaries": [ { "type": "retention", "name": "my-policy", "policyVersion": "MTY2MzY5MTY1MDA3Ml8x", "createdDate": 1663691650072, "lastModifiedDate": 1663691650072 } ] }
Para limitar os resultados às políticas que contenham coleções ou índices específicos, você pode incluir filtros de recursos:
aws opensearchserverless list-lifecycle-policies --type retention --resources "index/
autoparts-inventory
/*"
Para ver informações detalhadas sobre uma política específica, use o BatchGetLifecyclePolicycomando.
Atualização de políticas de ciclo de vida de dados
Quando você modifica uma política de ciclo de vida dos dados, todas as coleções associadas são afetadas. Para atualizar uma política de ciclo de vida de dados no console OpenSearch sem servidor, expanda Políticas de ciclo de vida de dados, selecione a política a ser modificada e escolha Editar. Faça suas alterações e escolha Salvar.
Para atualizar uma política de ciclo de vida de dados usando a API OpenSearch Serverless, use o comando. UpdateLifecyclePolicy É necessário incluir uma versão da política na solicitação. É possível recuperar a versão da política usando os comandos ListLifecyclePolicies
ou BatchGetLifecyclePolicy
. A inclusão da versão mais recente da política garante que você não anule inadvertidamente uma alteração feita por outra pessoa.
A solicitação a seguir atualiza uma política de ciclo de vida dos dados com um novo documento JSON de política:
aws opensearchserverless update-lifecycle-policy \ --name
my-policy
\ --type retention \ --policy-versionMTY2MzY5MTY1MDA3Ml8x
\ --policy file://my-new-policy.json
Pode haver alguns minutos de atraso entre a atualização da política e o momento em que os novos períodos de retenção são aplicados.
Como excluir políticas de ciclo de vida dos dados
Quando você exclui uma política de ciclo de vida de dados, ela não se aplica mais a nenhum índice correspondente. Para excluir uma política no console OpenSearch sem servidor, selecione a política e escolha Excluir.
Você também pode usar o DeleteLifecyclePolicycomando:
aws opensearchserverless delete-lifecycle-policy --name
my-policy
--type retention