Utilizar a compactação de registos
Este artigo mostra-lhe como utilizar a funcionalidade de compactação de registos nos Hubs de Eventos. Para compreender os detalhes da compactação de registos, veja Compactação de Registos.
Neste artigo, siga estes passos principais:
- Criar um tópico compactado do Hub de Eventos/Kafka.
- Publicar eventos num hub de eventos compactado.
- Consumir eventos de um hub de eventos compactado.
Nota
A funcionalidade de compactação de registos não é suportada no escalão Básico .
Criar um hub de eventos compactado/tópico do Kafka
Esta secção mostra-lhe como criar um hub de eventos compactado com portal do Azure e um modelo do Azure Resource Manager (ARM).
Pode criar um hub de eventos compactado com o portal do Azure ao seguir estes passos.
- Navegue para o espaço de nomes dos Hubs de Eventos.
- Na página Espaço de Nomes dos Hubs de Eventos, selecione Hubs de Eventos no menu esquerdo.
- Na parte superior da janela, selecione + Hubs de Eventos.
- Escreva um nome para o hub de eventos e especifique a contagem de partições. Uma vez que estamos a criar um hub de eventos compactado, selecione a política de compactação como compactação e forneça o valor pretendido para o tempo de retenção de tombstone.
- Selecione criar e criar o hub de eventos compactado.
Acionar a compactação
O serviço hubs de eventos determina quando a tarefa de compactação de um determinado hub de eventos compactado deve ser executada. O hub de eventos compactado atinge o limiar de compactação quando existe um número considerável de eventos ou o tamanho total de um determinado registo de eventos aumenta significativamente.
Publicar evento num tópico compactado
A publicação de eventos num hub de eventos compactado é igual à publicação de eventos num hub de eventos normal. Como a aplicação cliente, só precisa de determinar a chave de compactação, que definiu com a chave de partição.
Utilizar o SDK dos Hubs de Eventos (AMQP)
Com o SDK dos Hubs de Eventos, pode definir a chave de partição e publicar eventos, conforme mostrado abaixo:
var enqueueOptions = new EnqueueEventOptions
{
PartitionKey = "Key-1"
};
await producer.EnqueueEventAsync(eventData, enqueueOptions);
Utilizar o Kafka
Com o Kafka, pode definir a chave de partição quando criar a ProducerRecord
, conforme mostrado abaixo:
ProducerRecord<String, String> record = new ProducerRecord<String, String>(TOPIC, "Key-1" , "Value-1");
Quotas e limites
Limite | Básica | Standard | Premium | Dedicada |
---|---|---|---|---|
Tamanho do hub de eventos compactado | N/D | 1 GB por partição | 250 GB por partição | 250 GB por partição |
Para outras quotas e limites, veja Quotas e limites dos Hubs de Eventos.
Consumir eventos de um tópico compactado
Não são necessárias alterações no lado do consumidor para consumir eventos de um hub de eventos compactado. Assim, pode utilizar qualquer uma das aplicações de consumidor existentes para consumir dados de um hub de eventos compactado.
Passos seguintes
- Para obter informações conceptuais sobre como funciona a compactação de registos, veja Compactação de registos.