CD-Raft: Reducing the Latency of Distributed Consensus in Cross-Domain Sites

O artigo propõe o CD-Raft, um protocolo Raft otimizado para reduzir significativamente a latência de consenso em sites de domínios cruzados através da minimização do tempo de ida e volta (RTT) e do posicionamento estratégico do nó líder, garantindo consistência forte e demonstrando reduções de latência média e de cauda em testes empíricos.

Yangyang Wang, Ziqian Cheng, Yucong Dong, Zichen Xu

Publicado Thu, 12 Ma
📖 5 min de leitura🧠 Leitura aprofundada

Each language version is independently generated for its own context, not a direct translation.

Imagine que você tem uma rede de escritórios espalhados por diferentes cidades (ou até países) e todos eles precisam manter um registro de contabilidade perfeitamente sincronizado. Se um escritório em São Paulo anota uma venda, os escritórios no Rio, em Nova York e em Tóquio precisam saber disso imediatamente para que ninguém tente vender o mesmo produto duas vezes.

O problema é que a internet entre essas cidades não é instantânea. Leva tempo para a mensagem viajar (chamado de "latência"). Se o sistema for lento, o cliente espera, o sistema trava e a experiência fica ruim.

É aqui que entra o CD-Raft, a solução proposta neste artigo. Vamos explicar como funciona usando analogias do dia a dia.

1. O Problema: A "Corrida de Correspondência" Lenta

Antes do CD-Raft, os sistemas usavam um protocolo chamado Raft. Imagine que o Raft funciona assim:

  • Você (o cliente) manda uma carta para o Chefe (o líder do sistema).
  • O Chefe recebe a carta, copia para seus ajudantes e espera que a maioria deles confirme que recebeu.
  • Só depois de receber todos os "OKs", o Chefe diz: "Tudo certo, pode prosseguir".

Onde está o gargalo?
Se você está em um país e o Chefe está em outro, a carta vai e volta duas vezes antes mesmo de ser processada pelos ajudantes. É como se você tivesse que enviar uma carta para o chefe, esperar ele responder, e só então ele pudesse enviar para os outros. Em tempos de "Big Data" e Inteligência Artificial, onde os dados são gigantes (como modelos de IA de 7 bilhões de parâmetros), essa espera é enorme.

2. A Solução: O CD-Raft (O "Chefe Regional" e o "Chefe Global")

Os autores criaram o CD-Raft para resolver essa lentidão. Eles mudaram a hierarquia da empresa:

  • Antes: Havia apenas um Chefe Global.
  • Agora (CD-Raft): Existe um Chefe Global e vários Chefes Regionais (um para cada cidade/país).

A Estratégia do "Retorno Rápido" (Fast Return)

Esta é a mágica principal. Vamos ver como funciona quando você envia um pedido:

  1. O Pedido: Você envia o pedido para o Chefe Global (que pode estar longe).
  2. A Divisão: O Chefe Global não espera tudo terminar para te responder. Ele imediatamente manda o pedido para os Chefes Regionais de todas as cidades.
  3. O Trabalho Paralelo:
    • O Chefe Regional da sua cidade (onde você está) começa a organizar os ajudantes locais.
    • O Chefe Regional da cidade do Chefe Global também organiza os ajudantes dele.
    • Eles fazem isso ao mesmo tempo.
  4. O Truque: Assim que o Chefe Regional da sua cidade confirma que a maioria dos ajudantes locais recebeu a informação, ele te responde imediatamente: "Pronto! Está salvo aqui!".
    • Você não precisa esperar o Chefe Global confirmar com os outros países.
    • O Chefe Global continua trabalhando nos bastidores para garantir que os outros países também tenham os dados, mas você já recebeu sua confirmação.

Analogia: É como pedir um pizza. Em vez de esperar o dono da pizzaria (longe) confirmar com todos os entregadores antes de te dizer "sua pizza está pronta", o entregador da sua rua confirma que recebeu o pedido da cozinha e já te avisa. A cozinha continua enviando a pizza para as outras filiais, mas você já sabe que a sua está garantida.

3. A Estratégia do "Chefe no Lugar Certo" (Posição Otimizada)

O segundo grande avanço é inteligente: o sistema não escolhe o Chefe Global aleatoriamente. Ele calcula matematicamente onde colocar o Chefe Global para que a soma total das distâncias seja a menor possível.

  • Analogia: Imagine que você tem clientes em todo o Brasil. Se você colocar o escritório central em Manaus, a maioria dos clientes do Sudeste terá que esperar muito. O CD-Raft analisa onde estão a maioria dos pedidos e coloca o Chefe Global na cidade que minimize o tempo de viagem para todos. Se o tráfego de pedidos mudar, ele pode até mudar o escritório central para um lugar melhor.

4. Segurança: E se algo der errado?

Você pode se perguntar: "Se o Chefe Regional da minha cidade responde rápido, e a internet cai, os dados somem?"

Não. O sistema é projetado para ser à prova de falhas (disaster tolerance):

  • Para confirmar um dado, é necessário que a maioria dos ajudantes em pelo menos duas cidades diferentes tenham o registro.
  • Se uma cidade inteira cair (como se o escritório local pegasse fogo), o sistema ainda funciona porque a outra cidade tem a cópia.
  • O sistema garante que, mesmo com falhas, ninguém perca dados e ninguém leia informações desatualizadas.

5. O Resultado na Prática

Os autores testaram esse sistema em uma simulação real com servidores em quatro cidades chinesas (Beijing, Xangai, Guangzhou e Guiyang).

  • Redução de Tempo: O CD-Raft foi 33% mais rápido na média e quase 50% mais rápido nos casos piores (quando a rede está muito lenta) comparado ao sistema antigo.
  • Estabilidade: Funciona bem mesmo quando há muitos pedidos de leitura e escrita ao mesmo tempo, ou quando há conflitos de dados.

Resumo Final

O CD-Raft é como transformar uma burocracia lenta, onde você precisa de carimbos de vários países para fazer uma transação simples, em um sistema eficiente onde o funcionário local já te dá o "OK" enquanto o escritório central continua processando o resto nos bastidores.

Isso permite que sistemas de Inteligência Artificial e bancos de dados globais funcionem muito mais rápido, mesmo quando os servidores estão espalhados pelo mundo todo, sem perder a segurança dos dados.