Regra de arquivamento e propriedades da regra de destruição
As regras para impedir que o processo de arquivamento consuma muitos recursos do sistema foram automatizadas. Você pode mudar manualmente o comportamento do sistema.
O processo de arquivamento usa um modelo de produtor e consumidor. Os registros são enfileirados para arquivamento na tabela Blocos de execução do trabalho de arquivamento [sys_archive_run_chunk] em lotes.
- O ArchiveProducerJob cria partes de registros sys_ids que precisam ser arquivadas. Cada bloco contém registros pertencentes a uma única regra de arquivamento. O número máximo de registros em um bloco é especificado pela propriedade glide.db.archive.chunk_size. O número máximo de registros para uma única regra em todos os blocos é especificado por glide.db.archive.max.rule.records.
- O produtor inicia 4 (padrão) consumidores do ArchiverJob. O número exato de consumidores é especificado por glide.db.archiving.max_consumer_workers.
- Os consumidores leem e processam partes de sys_ids. O número de blocos que cada consumidor processa é especificado por glide.db.archive.max.batches. Os blocos processados por cada consumidor podem ser de regras de arquivamento diferentes.
- Os consumidores repetem a leitura de partes de sys_ids até que não reste nenhum ou o limite de partes que um consumidor pode processar (especificado por glide.db.archive.max.batches) seja atingido. Depois disso, ele é encerrado e programa outro consumidor.
- Se um bloco permanecer no estado em execução por mais tempo do que o especificado em glide.db.archive.chunk.max.process.time, o sistema presumirá que o consumidor foi encerrado inesperadamente e mudará o status do bloco para erro. Isso não interrompe ou encerra nenhum consumidor em execução.
Nota:
As propriedades de arquivamento e destruição listadas na tabela não serão usadas se a tabela Blocos de execução do trabalho de arquivamento [sys_archive_run_chunk] for excluída.
Para controlar manualmente quantos registros a regra de arquivamento e destruir processa em um intervalo, você pode alterar essas configurações padrão adicionando as seguintes propriedades do sistema.
| Nome | Descrição | Tipo | Valor padrão |
|---|---|---|---|
| glide.db.archive.chunk_size | Número de identificadores exclusivos adicionados a cada registro na tabela Blocos de execução do trabalho de arquivamento [sys_archive_run_chunk]. O registro é formatado como valores CSV no campo de chaves do formulário Bloco de execução do trabalho de arquivamento (sys_archive_run_chunk.do). | Inteiro | 1000 |
| glide.db.archive.chunk.max.process.time | Número de milissegundos que um registro pode permanecer no estado Ativo na tabela Partes de execução do trabalho de arquivamento [sys_archive_run_chunk]. A hora é a diferença entre a hora do sistema e o valor do campo Iniciar na tabela Partes de execução do trabalho de arquivamento [sys_archive_run_chunk]. | Inteiro | 600000 |
| glide.db.archive.max.rule.records | Número máximo de registros em lote por consumidor, por regra. | Inteiro | 10000 |
| glide.db.archive.debug | Opção que habilita o registro em log detalhado ao copiar as definições de coluna da tabela original para a tabela de arquivamento. | verdadeiro | falso | falso |
| glide.db.archive.max.batches | Número de partes, que são registros da tabela Partes de execução do trabalho de arquivamento [sys_archive_run_chunk], processadas por um consumidor antes de ser encerrado e programado outro consumidor. | Inteiro | 10 |
| glide.db.archiving.max_consumer_works | O número máximo de consumidores simultâneos em todo o cluster. | Inteiro | 4 |