Executando verificação de segurança...
2

Paginação eficiente - Diferença entre Cursor based pagination e Offset based pagination

Você sabe o que é cursor pagination? Sabe a diferença entre uma paginação baseada em offset e paginação baseada em cursor?

Muitos desenvolvedores utilizam apenas a técnica baseada em offset, sem nem mesmo saber que em vários cenários de grande volume de dados esta técnica pode ser desastrosa...

Descubra neste vídeo as diferenças entre paginação baseada em offset e baseada em cursor, e como cada uma pode impactar muito o desempenho das suas aplicações. Com exemplos práticos :)

Link do vídeo:
https://youtu.be/97sCrxvEgsY?si=o1iQdOw4gHPm7C83

Carregando publicação patrocinada...
2

Tópico muito interessante, aprendi muito com o video.

Como estou me familiarizando pela primeira vez com o Cursor based pagination, reuní essa e outras fontes no NotebookLM e montei essa tabela abaixo para me ajudar a comparar as duas opções. Espero que ajude outros =)

CaracterísticaPaginação Baseada em CursorPaginação Baseada em Offset
PerformanceGeralmente mais eficiente, especialmente para grandes conjuntos de dadosPode ser ineficiente para grandes conjuntos de dados
ConsistênciaMais consistente, mesmo com mudanças frequentes de dadosPode levar a linhas duplicadas ou ausentes se os dados forem alterados
ImplementaçãoMais complexaGeralmente mais fácil de implementar
Acesso Direto à PáginaNão é possívelPossível
Utilização de RecursosMais eficiente, usa menos memória e CPUMenos eficiente, pode consumir mais memória e CPU
Gerenciamento de EstadoRequer que o cliente rastreie e envie o cursorSem estado, o cliente só precisa fornecer o número da página e o tamanho

Em resumo, a paginação baseada em cursor é geralmente o método preferido para conjuntos de dados grandes e em mudança frequente, onde o desempenho e a consistência são cruciais, mesmo que exija uma implementação mais complexa.

A paginação baseada em offset é uma alternativa mais simples, adequada para conjuntos de dados menores ou situações em que o acesso direto à página é essencial.**

Fontes adicionais: https://planetscale.com/blog/mysql-pagination e https://medium.com/@oshiryaeva/offset-vs-cursor-based-pagination-which-is-the-right-choice-for-your-project-e46f65db062f

2

Wooow!!
Perfeita essa tabela que fez, muito muito pertinente e conseguiu resumir o que acabei levando 1h para expressar no vídeo :)

Iria até mesmo sugerir de você postar como um post a parte por aqui, nao sei se como resposta vai ter a devida atenção merecida.

Muito bom, muito obrigado por compartilhar!
Abracao