Teorema CAP, não chame seu banco de dados de CPU AP e agora vamos começar a falar sobre latência. Vamos lá! Bom, como vimos naquele cenário na aula anterior, Data Center 1, Data Center 2, dois bancos de dados com a comunicação interrompida, degradada em dois grupos de usuários, nós vamos perceber que na prática sistemas multi data center, sejam data centers privados ou de nuvem pública, são geralmente projetados com replicação assíncrona e como consequência dessa assincronia, eles não serão linearizáveis. Então, abre mão deste conceito de consistência. Porém, a razão desta escolha, frequentemente, é latência devido à longa distância. devido a longa distância. Então, redes de longa distância trazem grande latência e por essa razão a replicação é assíncrona. Então, esse é o motivo dessa decisão. Ok, temos um fechamento aqui daquele cenário de replicação entre dois data centers, dois grupos de usuários. Vamos avançar um pouco mais neste tema. Ok, nós vamos perceber que, então, muitos sistemas não são consistentes no sentido CAP consistente de linearização e também não serão necessariamente CAP disponíveis, como a gente viu. Mas vamos considerar o seguinte, banco de dados relacional. O banco de dados relacional também pode ser chamado de banco de dados replicado com um único líder, que é a instância, o nó primário do nosso banco de dados relacional. Então vamos imaginar o seguinte, o banco de dados relacional. Então, vamos imaginar o seguinte. O banco de dados relacional de distância única, se tiver uma falha de rede em relação aos clientes, os clientes não poderão escrever nesse banco. Mesmo que esse cliente consiga ler de uma réplica de leitura, ou seja, aquele note que geralmente no relacional nós chamamos de stand-by, como ele não vai conseguir escrever, então, todo banco de dados desse tipo de configuração, ou seja, configuração de líder único, que é a implementação da maior parte dos relacionais, que tem o nó primário mais o nó de leitura, o stand-by, não cabe como CAP disponível. E esse tipo de configuração, na verdade, é percebida pela gente no mercado e até mesmo comercializada como altamente disponível. Então, aqui a gente retorna naquele tópico da aula anterior, em que disponibilidade da vida real não corresponde à disponibilidade no CAP. Ok. Então, se não é CAP disponível, o AP, então, obrigatoriamente, ele éente, CP, que nós vamos relacionar sempre banco relacional com consistência. Se nós tivermos no nosso aplicativo uma configuração de ter essas leituras do stand-by e essa replicação for assíncrona, que é o padrão na maioria dos bancos de dados, então essa leitura fica atrás, fica defasada. Ou seja, a leitura também perde a linearização e aí não é capa consistente. Então nós temos um nem-nem, nem-cp, nem-ap.