Configurar arquivo online
Nesta página
Importante
Recurso Indisponível em Instâncias sem Servidor
Neste momento, as instâncias sem servidor não permitem essa funcionalidade. Para saber mais, consulte Limitações de instâncias sem servidor.
Visão geral
Você pode configurar o arquivamento dos dados em uma collection definindo uma regra para isso. A regra de arquivamento para uma:
Coleção de séries temporais é uma combinação de um tempo usado para determinar quando arquivar dados e um valor numérico representando o número de dias pelo qual o Atlas cluster armazena os dados.
A coleção padrão pode ser uma das seguintes:
Uma combinação de uma data que é utilizada para determinar quando arquivar dados e um valor numérico representando o número de dias que o Atlas cluster armazena os dados.
Uma query personalizada usada para selecionar os documentos a arquivar.
Para configurar seu Atlas cluster para arquivamento online:
Crie uma regra de arquivamento fornecendo o espaço de nomes da coleção e os critérios para selecionar dados para arquivar na coleção.
(Opcional) Especifique campos normalmente com queries para dados arquivados de partição.
Quando você configura um Arquivo Morto Online no cluster, o Atlas cria 2 instâncias de banco de dados federadas no cluster somente para o arquivo morto e para o cluster e o arquivamento.
Observação
Seu cluster do Atlas deve estar íntegro antes de iniciar o Online Archive. Por exemplo, se um nó estiver inativo, ele permanecerá no status PENDING
.
Acesso necessário
Para criar um Arquivo Online, você deve ter acesso Project Data Access Admin
ou superior ao projeto.
Para ver se um arquivo está disponível, você deve ter acesso ao Project Read Only
ou superior ao projeto.
Configurar o arquivamento online por meio do Atlas CLI
Observação
O arquivamento online não arquiva dados com menos de de 5 MiB após 7 dias. Durante 7 dias imediatamente após o Atlas criar um arquivo, o Atlas arquiva todos os dados. Após 7 dias, o Atlas arquiva os dados somente quando o tamanho dos dados atinge 5 MiB.
Para criar um arquivo online para um cluster utilizando o Atlas CLI, execute o seguinte comando:
atlas clusters onlineArchives create [options]
Para observar se um arquivo online específico está disponível usando o Atlas CLI, execute o seguinte comando:
atlas clusters onlineArchives watch <archiveId> [options]
Para saber mais sobre a sintaxe e parâmetros para os comandos anteriores, consulte a documentação do Atlas CLI para clusters do Atlas onlineArchives create e clusters do Atlas onlineArchives watch.
Configurar o Online Archive por meio da API
Observação
O arquivamento online não arquiva dados com menos de de 5 MiB após 7 dias. Durante 7 dias imediatamente após o Atlas criar um arquivo, o Atlas arquiva todos os dados. Após 7 dias, o Atlas arquiva os dados somente quando o tamanho dos dados atinge 5 MiB.
Para configurar um arquivamento online a partir da API, envie uma solicitação POST
para o ponto de extremidade OnlineArchives.
Observação
Se você utilizar os critérios do DATE
, deverá especificar o campo date
como parte das chaves de partição.
Se o cluster já tiver um Atlas Online Archive Active
com a mesma regra de arquivamento para o mesmo banco de dados e coleção, a operação falhará. No entanto, se o Atlas Online Archive existente estiver em Paused
ou Deleted
estado, o novo Atlas Online Archive será criado e seu status será definido como Active
. Para saber mais sobre a sintaxe e as opções, consulte API.
Configurar o Online Archive por meio da interface do usuário
Observação
O arquivamento online não arquiva dados com menos de de 5 MiB após 7 dias. Durante 7 dias imediatamente após o Atlas criar um arquivo, o Atlas arquiva todos os dados. Após 7 dias, o Atlas arquiva os dados somente quando o tamanho dos dados atinge 5 MiB.
Para configurar um Online Archive, em sua interface de usuário do Atlas :
No Atlas, VáGo para a Clusters página do seu projeto.
Se ainda não tiver sido exibido, selecione a organização que contém seu projeto no menu Organizations na barra de navegação.
Se ainda não estiver exibido, selecione o projeto desejado no menu Projects na barra de navegação.
Se ainda não estiver exibido, clique em Clusters na barra lateral.
A página Clusters é exibida.
Go Acesse a Online Archive página do seu cluster.
Clique no nome do seu cluster.
Clique na aba Online Archive.
A página Online Archive é exibida.
Crie um Archiving Rule fornecendo as seguintes informações.
Especifique o namespace da coleção, que inclui o nome do banco de dados, o separador de ponto (
.
) e o nome da coleção (isto é,<database>.<collection>
), no campo Namespace.Não é possível modificar o namespace depois que o arquivo online é criado.
Selecione a região do provedor de nuvem onde você deseja armazenar seus dados arquivados.
Dica
Recomendamos que você selecione a mesma região do seu cluster, se possível, pois o custo de transferência de dados poderá ser maior se você escolher uma região diferente.
O Atlas mostra as regiões do provedor de nuvem correspondentes ao local onde seu cluster está hospedado. No Atlas, para clusters espalhados por várias nuvens, são exibidas as regiões do provedor de nuvem com a prioridade mais alta. O Atlas mostra um ao lado da região que corresponde à região exata ou aproximada onde seu cluster está hospedado.
Para clusters Atlas implantados no AWS, você pode selecionar uma das seguintes regiões:
Regiões Data FederationRegiões da AWSVirginia, USA
us-east-1
Oregon, EUA
us-west-2
São Paulo, Brasil
sa-east-1
Irlanda
eu-west-1
Londres, Inglaterra
eu-west-2
Frankfurt, Alemanha
eu-central-1
Tokyo, Japan
ap-northeast-1
Mumbai, Índia
ap-south-1
Cingapura
ap-southeast-1
Sydney, Austrália
ap-southeast-2
Montreal, Canadá
ca-central-1
Para os Atlas clusters distribuídos no Azure, você pode selecionar uma região do Azure somente se não houver outros Online Archives no cluster que estejam usando um provedor de nuvem diferente. Se um Online Archive existente no cluster usar a Amazon Web Services ou Google Cloud Platform para armazenar dados arquivados, você só poderá selecionar regiões da Amazon Web Services ou do Google Cloud Platform para novos Online Archives nesse cluster.
Observação
Para um cluster distribuído no Azure, se você tiver Arquivos Online existentes que usam Amazon Web Services ou Google Cloud Platform e excluí-los, deverá aguardar cinco dias antes de criar um novo Arquivo Online que use o Azure. Nesse período de cinco dias, qualquer tentativa de criar um novo Online Archive continuará sendo padrão para o provedor de nuvem que você selecionou originalmente.
Para clusters do Atlas implantados no Azure, você pode selecionar uma das seguintes regiões:
Regiões Data FederationRegiões do AzureVirginia, USA
US_EAST_2
Países Baixos
EUROPE_WEST
Para clusters do Atlas implementados na Google Cloud Platform, você pode selecionar uma região da Google Cloud Platform somente se não houver outros Online Archives no cluster que estejam usando um provedor de nuvem diferente. Se um Online Archive existente no cluster usar a Amazon Web Services ou o Azure para armazenar dados arquivados, você só poderá selecionar regiões da Amazon Web Services ou Azure para novos Online Archives nesse cluster.
Observação
Para um cluster implementado na Google Cloud Platform, se você tiver Arquivos Online existentes que usam Amazon Web Services ou Azure e excluí-los, deverá aguardar cinco dias antes de criar um novo Arquivo Online que use Google Cloud Platform. Nesse período de cinco dias, qualquer tentativa de criar um novo Online Archive continuará sendo padrão para o provedor de nuvem que você selecionou originalmente.
Para clusters do Atlas implementados na Google Cloud Platform, você pode selecionar uma das seguintes regiões:
Regiões Data FederationRegiões do Google CloudBélgica
europe-west1
Iowa, USA
us-central1
Observação
Após o Atlas criar o arquivo on-line, você não poderá modificar a região de armazenamento.
Especifique os critérios para selecionar documentos para arquivar para o tipo de coleção que você deseja arquivar.
Para uma coleção padrão, especifique os critérios para selecionar documentos para arquivar na guia Date Match ou Custom Criteria na Interface de Usuário do Atlas.
Para selecionar documentos da coleção usando uma combinação de campo de data e número de dias:
Especifique um campo de data já indexado dos documentos na coleção. Para especificar um campo aninhado, use a notação de ponto.
Especifique o número de dias para manter os dados no cluster do Atlas.
Escolha o formato de data do campo de data especificado.
Se você escolher qualquer um dos seguintes formatos, o valor do campo de data especificado deverá ser o TipoBSON
long
:EPOCH_SECONDS
EPOCH_MILLIS
EPOCH_NANOSECONDS
Importante
Você não pode modificar o campo de data depois que o arquivo online for criado.
Para selecionar documentos da coleção usando um filtro personalizado, especifique um filtro JSON válido para executar. O Atlas utiliza o filtro personalizado especificado com o db.collection.find(filter) comando. Você não pode usar o argumento de documento vazio (
{}
) para retornar todos os documentos. Você pode usar operadores do MongoDB Atlas , como $expr , para aproveitar todos os operadores de agregação , conforme mostrado nos exemplos a seguir.Observação
Os exemplos a seguir pressupõem que todos os documentos incluam campos
bucket_end_date
com valores de data e hora. Nos exemplos seguintes, o Atlas arquiva todos os documentos que não incluem um campobucket_end_date
e todos os documentos onde obucket_end_date
não é um valor de data/hora.Exemplo
Neste exemplo de filtro personalizado, quando a data atual excede a data no campo
bucket_end_date
nos documentos, o Atlas subtrai trinta dias (especificados em milissegundos) da data atual e, em seguida, arquiva os dados após esses muitos dias, horas e minutos.{ "$expr": { "$lte": [ "$bucket_end_date", { "$subtract": [ "$$NOW", 2592000000 ] } ] } } Neste exemplo de filtro personalizado , quando a data atual excede a data dentro de um
objectId
, o Atlas subtrai trinta dias (especificados em milissegundos) da data atual e, em seguida, arquiva os dados após esses muitos dias, horas e minutos.{ "$expr": { "$lte": [ {"$toDate": "$_id"}, { "$subtract": [ "$$NOW", 2592000000 ] } ] } } Se você usar $expr no filtro personalizado, às vezes o Atlas cluster pode não conseguir usar um índice para arquivamento de dados.
Observação
$NOW
é compatível apenas com clusters Atlas que executam o MongoDB 4.2 ou posterior.Para arquivar documentos em uma coleção de séries temporais , marque a caixa de seleção This is a Time-Series Collection e especifique o seguinte:
Nome do campo que contém a data em cada documento da série temporal . Isso deve corresponder ao
timeField
na coleção de séries temporais . Para especificar um campo aninhado, use a notação de ponto de ponto. Você não pode modificar o campo de hora depois que o arquivo online for criado.Número de dias para manter os dados no Atlas cluster.
Formato de data do campo de data especificado. O valor do campo de data deve estar no formato ISODate .
Observação
O Atlas executa uma query de suficiência de índice para determinar a eficiência do processo de arquivamento. Se o número de documentos digitalizados para o número de documentos devolvidos for 10 ou mais, o resultado da query acionará um
Index Sufficiency Warning
. Esse aviso indica que você tem índices insuficientes para um processo de arquivamento eficiente. Para arquivos baseados em dados, você deve indexar o campo de data. Para critérios personalizados que usam uma expressão, o Atlas pode primeiro converter um valor antes de avaliá-lo em relação à query.
Especifique quantos dias você deseja armazenar dados no arquivo on-line e uma janela de tempo quando deseja que o Atlas execute o tarefa de arquivamento.
(Opcional) Especifique um Deletion Age Limit.
Por padrão, o Atlas não exclui dados arquivados. No entanto, se você especificar o Deletion Age Limit, você poderá especificar entre
7
a9125
dias (25 anos) para manter os dados arquivados. O Atlas exclui os dados arquivados após o número de dias especificados aqui. Essa regra de expiração de dados entra em vigor24
horas depois de você definir Deletion Age Limit.Aviso
Após o Atlas excluir os dados, você não poderá recuperar os dados.
(Opcional) Especifique um Schedule Archiving Window.
Por padrão, o Atlas executa periodicamente uma query para arquivar dados. No entanto, você pode ativar o Schedule Archiving Window para programar explicitamente a janela de tempo durante a qual você deseja que o Atlas arquive dados. Você pode especificar o seguinte:
Frequência. Você pode optar por executar a tarefa todos os dias, em um dia específico da semana ou em uma data específica a cada mês. Se você quiser agendar a tarefa de arquivamento de dados no dia 29, 30 ou 31 de cada mês, o Atlas não executará a tarefa de arquivamento nos meses que não têm essas datas (por exemplo, fevereiro).
Janela de tempo, em horas. Selecione o período de tempo durante o qual você deseja que o Atlas execute o trabalho de arquivamento de dados. Você deve especificar um mínimo de duas horas. Se um trabalho em execução não é concluído durante a janela de tempo especificada, o Atlas continua executando o trabalho até que ele seja concluído.
Especifique os dois campos consultados com mais frequência na sua coleção para criar partições no seu arquivo on-line.
Observação
O arquivo deve ter pelo menos um campo de partição.
Insira até dois campos de consulta mais comuns da coleção nos campos Second most commonly queried field e Third most commonly queried field , respectivamente. Para especificar campos aninhados, utilize a notação de ponto. Não inclua aspas (""
) em torno de campos aninhados que você especifica usando a notação de pontos.
Aviso
Não é possível especificar os nomes de campo que contêm pontos (.
) para particionamento.
Os campos especificados são usados para dividir seus dados arquivados. As partições são semelhantes às pastas. O campo de data está na primeira posição da partição por padrão para os critérios do Date Match. Você pode mover outro campo para a primeira posição da partição se você consultar frequentemente por esse campo.
A ordem dos campos listados no caminho é importante da mesma forma que nos índices compostos. Os dados no caminho especificado são particionados primeiro pelo valor do primeiro campo e, em seguida, pelo valor do próximo campo e assim por diante. O Atlas suporta consultas nos campos especificados utilizando as partições.
Por exemplo, suponha que você esteja configurando o arquivo online para a coleção do movies
no banco de dados do sample_mflix
. Se o campo arquivado for o campo de data released
, que você moveu para a terceira posição, o primeiro campo consultado for title
e o segundo campo consultado for plot
, sua partição terá a seguinte aparência:
/title/plot/released
O Atlas cria partições primeiro para o campo title
, seguido pelo campo plot
e então o campo released
. O Atlas utiliza as partições para consultas nos seguintes campos:
o campo
title
,o campo
title
e o campoplot
,o campo
title
e o campoplot
e o camporeleased
.
O Atlas também pode utilizar as partições para suportar uma consulta nos campos title
e released
. No entanto, nesse caso, o Atlas não seria tão eficiente no suporte à consulta quanto seria se a consulta estivesse apenas nos campos title
e plot
. As partições são analisadas em ordem; se uma consulta omite uma partição específica, o Atlas é menos eficiente em fazer uso de quaisquer partições que se seguem a isso. Como uma consulta no title
e no released
omite plot
, o Atlas usa a partição title
de forma mais eficiente do que a partição released
para oferecer suporte a essa consulta.
O Atlas não pode usar a estratégia de particionamento para suportar eficientemente consultas em campos não especificados aqui. Além disso, o Atlas não pode utilizar as partições para suportar consultas que incluem os seguintes campos sem o campo title
:
o campo
plot
,o campo
released
, ouos campos
plot
ereleased
.
Insira até dois campos de consulta mais comuns nos documentos nos campos Most commonly queried field e Second most commonly queried field , respectivamente. Para especificar campos aninhados, utilize a notação de ponto de ponto. Não inclua aspas (""
) em torno de campos aninhados que você especifica usando a notação de ponto.
Os campos especificados são usados para dividir seus dados arquivados. As partições são semelhantes às pastas. A ordem dos campos listados no caminho é importante da mesma forma que nos índices compostos. Os dados no caminho especificado são particionados primeiro pelo valor do primeiro campo e, em seguida, pelo valor do próximo campo. O Atlas suporta consultas nos campos especificados utilizando as partições.
Por exemplo, suponha que você esteja configurando o arquivo online para a coleção do movies
no banco de dados de dados do sample_mflix
. Se genres
o seu campo e seu segundo campo consultado for title
, sua partição terá a seguinte aparência:
/genres/title
O Atlas cria partições primeiro para o campo genres
, seguido pelo campo title
. O Atlas utiliza as partições para consultas nos seguintes campos:
o campo
genres
,o campo
genres
e o campotitle
.
O Atlas também pode utilizar as partições para suportar uma consulta no campo title
somente. No entanto, nesse caso, o Atlas não seria tão eficiente no suporte à consulta quanto seria se a consulta estivesse apenas no campo genres
ou nos campos genres
e title
. As partições são analisadas em ordem; se uma query omitir uma partição específica, o Atlas será menos eficiente ao usar quaisquer partições que se seguem a isso. Como uma consulta no title
omite genres
, o Atlas não usa a partição genres
para oferecer suporte a essa consulta. Além disso, o Atlas é menos eficiente no uso das partições para suportar uma consulta no campo title
seguido pelo campo genres
.
O Atlas não pode usar as partições para suportar consultas em campos não especificados aqui.
Insira até dois campos de consulta mais comuns da coleção nos campos Second most commonly queried field e Third most commonly queried field , respectivamente. Para especificar campos aninhados, utilize a notação de ponto. Não inclua aspas (""
) em torno de campos aninhados que você especifica usando a notação de pontos.
Aviso
Não é possível especificar os nomes de campo que contêm pontos (.
) para particionamento.
Os campos especificados são usados para dividir seus dados arquivados. As partições são semelhantes às pastas. O campo de data está na primeira posição da partição por padrão para os critérios do Date Match. Você pode mover outro campo para a primeira posição da partição se você consultar frequentemente por esse campo.
A ordem dos campos listados no caminho é importante da mesma forma que nos índices compostos. Os dados no caminho especificado são particionados primeiro pelo valor do primeiro campo e, em seguida, pelo valor do próximo campo e assim por diante. O Atlas suporta consultas nos campos especificados utilizando as partições.
Por exemplo, suponha que você esteja configurando o arquivo online para a coleção do movies
no banco de dados do sample_mflix
. Se o campo arquivado for o campo de data released
, que você moveu para a terceira posição, o primeiro campo consultado for title
e o segundo campo consultado for plot
, sua partição terá a seguinte aparência:
/title/plot/released
O Atlas cria partições primeiro para o campo title
, seguido pelo campo plot
e então o campo released
. O Atlas utiliza as partições para consultas nos seguintes campos:
o campo
title
,o campo
title
e o campoplot
,o campo
title
e o campoplot
e o camporeleased
.
O Atlas também pode utilizar as partições para suportar uma consulta nos campos title
e released
. No entanto, nesse caso, o Atlas não seria tão eficiente no suporte à consulta quanto seria se a consulta estivesse apenas nos campos title
e plot
. As partições são analisadas em ordem; se uma consulta omite uma partição específica, o Atlas é menos eficiente em fazer uso de quaisquer partições que se seguem a isso. Como uma consulta no title
e no released
omite plot
, o Atlas usa a partição title
de forma mais eficiente do que a partição released
para oferecer suporte a essa consulta.
O Atlas não pode usar a estratégia de particionamento para suportar eficientemente consultas em campos não especificados aqui. Além disso, o Atlas não pode utilizar as partições para suportar consultas que incluem os seguintes campos sem o campo title
:
o campo
plot
,o campo
released
, ouos campos
plot
ereleased
.
Escolha campos que contenham apenas caracteres suportados em Amazon Web Services. Para saber mais sobre os caracteres a serem evitados, consulte Criação de nomes de chaves de objeto. O Atlas ignora e não arquiva documentos que contenham caracteres não suportados.
Escolha campos que não contêm dados polimórficos. O Atlas determina o tipo de dados de um campo de partição amostrando 10 documentos da coleção. O Atlas não arquivará um documento se o valor de campo especificado em um documento não corresponder aos valores em outros documentos na mesma coleção.
Escolha os campos que você consulta com frequência e ordene-os do campo mais consultado na primeira posição para o campo menos consultado na última posição. Por exemplo, se você frequentemente consultar o campo de data, deixe o campo de data na primeira posição. Mas se você consulta com frequência em outro campo, esse campo deve estar na primeira posição.
Observação
Para Arquivos On-line criados antes de 2023 de junho, o MongoDB não recomenda string
campos de tipo com alta cardinalidade como um campo de consulta para Arquivos On-line. Para campos do tipo string
com alta cardinalidade, o Atlas cria um grande número de partições. Isso não se aplica aos Arquivos Online criados após 2023 junho . Para saber mais, leia a publicação no MongoDB Blog .
O Atlas suporta os seguintes tipos de atributo de partição:
date
double
int
long
objectId
string
boolean
Para saber mais sobre os tipos de atributo de partição suportados, consulte Tipos de Atributo de Partição.
Observação
Embora as partições melhorem o desempenho da query, as queries que não contêm esses campos exigem uma digitalização completa da collection de todos os documentos arquivados, o que levará mais tempo e aumentará seus custos. Para saber mais sobre como as partições aprimoram as queries no Atlas Data Federation, veja Estrutura de dados no S3.
Clique em Next para rever e confirmar as definições do arquivo online. Você pode revisar as seguintes configurações de regras de arquivamento:
O nome do banco de dados e da coleção
O nome do provedor de nuvem e a região do provedor de nuvem
O nome do campo de data (somente para Date Match)
O número de dias para manter os dados no Atlas cluster (somente para Date Match)
O número de dias após os quais excluir os dados arquivados
A frequência e a janela de tempo para arquivamento de dados
A query personalizada a ser usada para identificar dados a serem arquivados (somente para Custom Criteria)
Os campos de partição
Clique em Back para editar estas configurações, se necessário.
Copie e execute a query exibida em sua shell do mongosh
para visualizar os documentos que correspondem aos critérios na regra definida na etapa 5. Você pode executar explain na query para verificar se ela utiliza um índice. Avance para a próxima etapa para criar o índice se os campos não forem indexados. Se os campos já estiverem indexados, pule para a etapa 11.
(Opcional) Copie e execute a consulta exibida em seu para criar o índice mongosh
exigido. Isso garante que seus dados sejam indexados para um desempenho ideal.
Verifique e confirme sua regra de arquivamento.
Clique em Begin Archiving na aba Confirm an online archive.
Clique em Confirm na janela Begin Archiving.
Observação
Depois que seu documento estiver em fila para arquivamento, você não poderá mais editar o documento. Consulte Restaurar Dados Arquivados para mover os dados arquivados de volta para o Atlas cluster em tempo real.
Limitações
Você pode criar até 50 arquivos online por cluster e até 20 podem ser ativos por cluster. Note as seguintes limitações:
Você pode configurar vários arquivos on-line no mesmo namespace, mas apenas um pode estar ativo a qualquer momento.
Não é possível criar vários arquivos on-line nos mesmos campos da mesma coleção.
Não é possível acessar seu arquivo online durante os seguintes cenários:
Uma interrupção total da região primária do seu cluster.
Uma interrupção do AWS S3, onde seus dados arquivados são armazenados.
Você não pode usar uma regra de arquivamento para mais de uma coleção.
Observação
Se o seu objetivo for arquivar dados de várias coleções, você deverá criar uma regra de arquivamento para cada coleção.
Não é possível arquivar dados abaixo do tamanho de 5 MiB após 7 dias. Durante 7 dias imediatamente após o Atlas criar um arquivo, o Atlas arquiva todos os dados. Após 7 dias, o Atlas arquiva os dados somente quando o tamanho dos dados atinge 5 MiB.
Evite atualizar ou inserir documentos que atendam à condição de arquivamento quando o Atlas estiver arquivando dados. Caso contrário, o Atlas pode capturar um snapshot inconsistente dos dados durante a execução do arquivamento. Se ocorrerem atualizações, a versão do documento que é arquivada será incerta.