A Milvus introduziu o MMap para uma gestão de dados redefinida e uma maior capacidade de armazenamento
O Milvus é a solução mais rápida em bases de dados vectoriais de código aberto, atendendo a utilizadores com requisitos de desempenho intensivos. No entanto, a diversidade das necessidades dos utilizadores reflecte os dados com que trabalham. Alguns dão prioridade a soluções económicas e a um armazenamento expansivo em detrimento da velocidade. Compreendendo este espetro de exigências, a Milvus introduz a funcionalidade MMap, redefinindo a forma como lidamos com grandes volumes de dados, prometendo eficiência de custos sem sacrificar a funcionalidade.
O que é o MMap?
MMap, abreviatura de memory-mapped files, faz a ponte entre os ficheiros e a memória nos sistemas operativos. Esta tecnologia permite ao Milvus mapear grandes ficheiros diretamente no espaço de memória do sistema, transformando os ficheiros em blocos de memória contíguos. Esta integração elimina a necessidade de operações explícitas de leitura ou escrita, alterando fundamentalmente a forma como o Milvus gere os dados. Assegura um acesso sem falhas e um armazenamento eficiente para ficheiros de grandes dimensões ou situações em que os utilizadores necessitam de aceder aos ficheiros de forma aleatória.
Quem beneficia da MMap?
As bases de dados vectoriais exigem uma capacidade de memória substancial devido aos requisitos de armazenamento dos dados vectoriais. Com a funcionalidade MMap, o processamento de mais dados numa memória limitada torna-se uma realidade. No entanto, esta capacidade acrescida tem um custo de desempenho. O sistema gere a memória de forma inteligente, retirando alguns dados com base na carga e na utilização. Esse despejo permite que o Milvus processe mais dados com a mesma capacidade de memória.
Durante os nossos testes, observámos que, com uma memória ampla, todos os dados residem na memória após um período de aquecimento, preservando o desempenho do sistema. No entanto, à medida que o volume de dados aumenta, o desempenho diminui gradualmente. Por isso, recomendamos a funcionalidade MMap para utilizadores menos sensíveis a flutuações de desempenho.
Ativar o MMap no Milvus: uma configuração simples
A ativação do MMap no Milvus é extremamente simples. Basta modificar o ficheiro milvus.yaml
: adicionar o item mmapDirPath
à configuração queryNode
e definir um caminho válido como o seu valor.
Atingir o equilíbrio: desempenho, armazenamento e limites do sistema
Os padrões de acesso aos dados têm um impacto significativo no desempenho. O recurso MMap do Milvus otimiza o acesso aos dados com base na localidade. O MMap permite ao Milvus escrever dados escalares diretamente no disco para segmentos de dados acedidos sequencialmente. Dados de comprimento variável, como strings, são achatados e indexados usando uma matriz de offsets na memória. Esta abordagem garante a localidade de acesso aos dados e elimina a sobrecarga de armazenar cada dado de comprimento variável separadamente. As optimizações para índices vectoriais são meticulosas. O MMap é utilizado seletivamente para dados vectoriais enquanto mantém as listas de adjacência na memória, conservando uma memória significativa sem comprometer o desempenho.
Além disso, o MMap maximiza o processamento de dados, minimizando o uso de memória. Ao contrário das versões anteriores do Milvus, em que o QueryNode copiava conjuntos de dados inteiros, o MMap adopta um processo de streaming simplificado e sem cópias durante o desenvolvimento. Esta otimização reduz drasticamente a sobrecarga de memória.
Os resultados dos nossos testes internos mostram que o Milvus pode lidar eficientemente com o dobro do volume de dados quando o MMap é ativado.
O caminho a seguir: inovação contínua e melhorias centradas no utilizador
Embora a funcionalidade MMap esteja na sua fase beta, a equipa do Milvus está empenhada na melhoria contínua. As futuras actualizações irão aperfeiçoar a utilização da memória do sistema, permitindo que o Milvus suporte volumes de dados ainda mais extensos num único nó. Os utilizadores podem antecipar um controlo mais granular sobre a funcionalidade MMap, permitindo alterações dinâmicas às colecções e modos avançados de carregamento de campos. Estas melhorias proporcionam uma flexibilidade sem precedentes, permitindo aos utilizadores adaptarem as suas estratégias de processamento de dados a requisitos específicos.
Conclusão: redefinindo a excelência do processamento de dados com o Milvus MMap
O recurso MMap do Milvus 2.3 marca um salto significativo na tecnologia de processamento de dados. Ao atingir um equilíbrio delicado entre desempenho, custo e limites do sistema, o Milvus permite que os utilizadores lidem com grandes quantidades de dados de forma eficiente e económica. À medida que o Milvus continua a evoluir, permanece na vanguarda das soluções inovadoras, redefinindo os limites do que é possível alcançar na gestão de dados.
Fique atento a mais desenvolvimentos inovadores à medida que o Milvus continua a sua viagem em direção a uma excelência de processamento de dados sem paralelo.
- O que é o MMap?
- Quem beneficia da MMap?
- Ativar o MMap no Milvus: uma configuração simples
- Atingir o equilíbrio: desempenho, armazenamento e limites do sistema
- O caminho a seguir: inovação contínua e melhorias centradas no utilizador
- Conclusão: redefinindo a excelência do processamento de dados com o Milvus MMap
On This Page
Try Managed Milvus for Free
Zilliz Cloud is hassle-free, powered by Milvus and 10x faster.
Get StartedLike the article? Spread the word