qdrant-sliding-time-window
Ajuda seu agente a gerenciar dados que mudam com o tempo no Qdrant. É útil para manter apenas informações recentes, como em feeds de notícias.
O que ela faz
Esta ferramenta ajuda a gerenciar dados que mudam com o tempo, como posts de redes sociais ou notícias. Ela garante que apenas informações recentes sejam fáceis e rápidas de encontrar, enquanto dados mais antigos podem ser acessados de forma mais lenta ou removidos.
Quando usar
- ✓Quero buscar apenas posts recentes em uma rede social.
- ✓Preciso que notícias antigas sejam removidas automaticamente.
- ✓Quero organizar logs de sistema mantendo apenas os últimos meses.
Exemplo do que pedir para a IA
“Como faço para que meu sistema de busca de notícias mostre apenas as notícias da última semana?”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
A ferramenta organiza os dados em 'janelas' de tempo. Ela pode mover dados antigos para um local mais lento ou excluí-los, mantendo os dados recentes sempre acessíveis rapidamente.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add github/awesome-copilot --skill qdrant-sliding-time-windowOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/github/awesome-copilot/main/skills/qdrant-scaling/scaling-data-volume/sliding-time-window/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Escalando com Janela Deslizante de Tempo
Use quando apenas dados recentes precisam de busca rápida -- posts de redes sociais, artigos de notícias, tickets de suporte, logs, vagas de emprego. Dados antigos se tornam irrelevantes ou podem tolerar acesso mais lento.
Três estratégias: rotação de shard (recomendado), rotação de coleção (quando a configuração por período difere) e filtrar e deletar (mais simples, para limpeza contínua).
Rotação de Shard (Recomendado)
Use quando: os dados têm limites naturais de tempo (diário, semanal, mensal). Preferido porque as consultas abrangem todos os períodos de tempo em uma única requisição, sem fan-out no nível da aplicação. Sharding definido pelo usuário
- Crie uma coleção com sharding definido pelo usuário habilitado
- Crie uma chave de shard por período de tempo (ex:
2025-01,2025-02, ...,2025-06) - Ingesta dados na chave de shard do período atual
- Quando um novo período começar, crie uma nova chave de shard e redirecione as escritas
- Delete a chave de shard mais antiga fora da janela de retenção
- Deletar uma chave de shard recupera todos os recursos instantaneamente (sem fragmentação, sem sobrecarga do otimizador)
- Pré-crie a chave de shard do próximo período antes da rotação para evitar interrupção na escrita
- Use
shard_key_selectorno momento da consulta para buscar apenas períodos específicos para eficiência - Chaves de shard podem ser colocadas em nós específicos para tiering hot/cold
Rotação de Coleção (Troca de Alias)
Use quando: você precisa de configuração de coleção por período (ex: diferentes configurações de quantização ou armazenamento). Aliases de coleção
- Crie uma coleção por período de tempo, aponte um alias de escrita para a mais nova
- Consulte todas as coleções ativas em paralelo, mescle os resultados no lado do cliente
- Quando um novo período começar, crie a nova coleção e troque o alias de escrita Trocar coleção
- Remova a coleção mais antiga fora da janela
Trade-off vs rotação de shard: permite diferenças de configuração por coleção, mas requer fan-out no nível da aplicação e mais sobrecarga operacional.
Filtrar e Deletar
Use quando: os dados chegam continuamente sem limites claros de tempo, ou você quer a configuração mais simples.
- Armazene um payload
timestampem cada ponto, crie um índice de payload nele Índice de payload - Filtre para a janela desejada no momento da consulta usando a condição
rangeFiltro de intervalo - Periodicamente delete pontos expirados usando delete-by-filter Deletar pontos
- Execute a limpeza durante horários de menor movimento em lotes (10k-50k pontos) para evitar bloqueios do otimizador
- Deletes não são gratuitos: pontos marcados para exclusão degradam a busca até que o otimizador compacte os segmentos
- Não recupera disco instantaneamente (compactação é assíncrona)
Tiers Hot/Cold
Use quando: dados recentes precisam de busca rápida em RAM, dados mais antigos devem permanecer pesquisáveis com menor desempenho.
- Rotação de shard: coloque a chave de shard atual em nós de armazenamento rápido, mova chaves de shard mais antigas para nós mais baratos via posicionamento de shard. Todas as consultas ainda passam por uma única coleção.
- Rotação de coleção: mantenha a coleção atual em RAM (
always_ram: true), mova coleções mais antigas para vetores mmap/em disco. Quantização
O Que NÃO Fazer
- Não use filtrar e deletar para séries temporais de alto volume com milhões de deletes diários (use rotação em vez disso)
- Não se esqueça de indexar o campo de timestamp (filtros de intervalo sem índice causam varreduras completas)
- Não use rotação de coleção quando a rotação de shard seria suficiente (complexidade de fan-out desnecessária)
- Não remova uma chave de shard ou coleção antes de verificar se o período dela está totalmente fora da janela de retenção
- Não pule a pré-criação da chave de shard ou coleção do próximo período (falhas de escrita durante a rotação são difíceis de recuperar)
Perguntas frequentes
Qual a melhor forma de organizar dados por tempo?
A rotação de 'shard' é geralmente recomendada, pois permite buscas rápidas em todos os períodos sem complicação extra.
O que acontece com os dados antigos?
Eles podem ser movidos para um armazenamento mais lento ou excluídos completamente, dependendo da sua necessidade.
É seguro remover dados antigos?
Sim, a ferramenta oferece métodos seguros para excluir dados antigos, garantindo que os dados importantes permaneçam acessíveis.
Detalhes
Descrição original do autor
Guides sliding time window scaling in Qdrant. Use when someone asks 'only recent data matters', 'how to expire old vectors', 'time-based data rotation', 'delete old data efficiently', 'social media feed search', 'news search', 'log search with retention', or 'how to keep only last N months of data'.
repo: github/awesome-copilot
Popularidade
- Estrelas no GitHub
- 40 mil
- Posição no ranking
- #5310
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
acquire-codebase-knowledge
Ajuda seu agente a entender e documentar um projeto de código existente. É útil para novas pessoas entrarem no projeto ou para ter uma visão geral da arquitetura.
github/awesome-copilot
acreadiness-assess
Faz seu agente avaliar a prontidão de um projeto para IA e gerar um relatório. É útil para entender o quão bem um projeto está preparado para usar ferramentas de IA.
github/awesome-copilot
acreadiness-generate-instructions
Ajuda seu agente a criar instruções para ferramentas de IA baseadas em uma avaliação. É útil para melhorar a forma como a IA interage com o código e fecha lacunas identificadas.
github/awesome-copilot
acreadiness-policy
Faz seu agente ajudar a definir ou aplicar políticas para avaliação de projetos de IA. É útil para padronizar a forma como os projetos são avaliados e garantir conformidade.
github/awesome-copilot
Skills parecidas
clickhouse-io
Ajuda seu agente a otimizar consultas e esquemas no banco de dados ClickHouse. Ele aplica as melhores práticas para cargas de trabalho analíticas de alta performance. Use quando consultas analíticas demoram muito.
affaan-m/ECC
scientific-db-pubmed-database
Ajuda seu agente a buscar artigos científicos na área biomédica. É útil para pesquisas que precisam de informações médicas específicas.
affaan-m/ECC
scientific-db-uspto-database
Permite ao agente consultar dados oficiais de patentes e marcas registradas dos EUA. É útil para pesquisas de propriedade intelectual.
affaan-m/ECC