Introdução aos níveis de consistência
GaussDB(for MySQL) fornece dois níveis de consistência para atender aos requisitos em diferentes cenários.
- Consistência eventual (padrão)
- Consistência da sessão
Restrições
- Para configurar o nível de consistência, a versão do kernel da instância do GaussDB(for MySQL) deve ser 2.0.28.1 ou posterior.
- Para usar a consistência da sessão, a versão do kernel da instância de proxy deve ser 2.7.4.0 ou posterior.
Consistência eventual
Depois que uma instância de proxy é criada, as solicitações de operações SELECT são roteadas para diferentes nós com base em seus pesos de leitura. Como há um atraso de replicação entre o nó primário e cada réplica de leitura e o atraso de replicação varia para diferentes réplicas de leitura, o resultado retornado por cada instrução SELECT pode ser diferente quando você executa repetidamente uma instrução SELECT em uma sessão. Neste caso, apenas a consistência eventual é garantida.
Consistência da sessão
Para eliminar inconsistências de dados causadas por consistência eventual, a consistência da sessão é fornecida. A consistência da sessão garante que o resultado retornado por cada instrução SELECT em uma sessão seja os dados que foram atualizados após a última solicitação de gravação.
As instâncias de proxy registram o número de sequência de log (LSN) de cada nó e sessão. Quando os dados em uma sessão são atualizados, uma instância de proxy registra o LSN do nó primário como um LSN de sessão. Quando uma solicitação de leitura chega posteriormente, o proxy do banco de dados compara o LSN da sessão com o LSN de cada nó e encaminha a solicitação para um nó cujo LSN seja pelo menos igual ao LSN da sessão. Isso garante a consistência da sessão.
Na consistência da sessão, se houver um atraso significativo de replicação entre o nó primário e as réplicas de leitura e o LSN de cada réplica de leitura for menor que o LSN da sessão, as solicitações de operações SELECT serão roteadas para o nó primário. Nesse caso, as cargas no nó primário são pesadas e o desempenho da instância sofre.