O que há de novo no MongoDB 5.0?
A versão principal mais recente do MongoDB, v5.0, foi lançada em 13 de julho de 2021. Esta iteração do banco de dados orientado a documentos adiciona novos recursos e melhorias, bem como uma cadência de lançamento revisada para versões futuras.
Dados da série temporal
Uma das adições de recursos do título é o suporte de primeira classe para dados de série temporal. Embora alguns desenvolvedores já tenham construído suas próprias ferramentas de série temporal em torno do MongoDB, ter tipos de dados de série temporal nativamente disponíveis ajudará muito mais a começar.
Uma “ série temporal ” refere-se a qualquer tipo de dado em que os registros são criados sequencialmente em diferentes pontos no tempo. Casos de uso comuns incluem fluxos de medição de sensor e registros de histórico de transações, em que cada registro corresponde diretamente a um momento específico.
Novas coleções de série temporal fornecem um armazenamento de dados especial que é otimizado para dados com essas características. Os valores serão compactados em uma estrutura de esquema exclusiva quando persistidos no disco, fornecendo melhor indexação, uso de armazenamento mais eficiente e carga reduzida do servidor. Você pode definir a granularidade dos dados de tempo para segundos, minutos ou horas. Também é possível expirar dados automaticamente após um determinado número de segundos.
db. createCollection ("medições", {timeseries: {timeField: "timestamp", granularidade: "minutos"}, expireAfterSeconds: 3600});
O snippet acima define uma coleção de série temporal chamada medidas. Sua granularidade é definida em minutos. Os documentos da coleção serão excluídos automaticamente após uma hora.
Publicidade
O MongoDB 5.0 também fornece suporte integrado para consultar e manipular dados de séries temporais. Você pode extrair médias móveis baseadas no tempo que rastreiam tendências temporais com o mínimo de código próprio.
db. measurements. aggregate ([{$ project: {date: {$ dateToParts:}}, $ group: {_id: {time: {hour: "$ date. hour", minuto: "$ data. minuto "}}, médiaMedida: {$ avg:" medição "}}}]);
Supondo uma coleção de série temporal com carimbo de data / hora e campos de medição, o comando agregado acima produziria algo assim:
{" _id & quot ;: {" hora & quot ;: {" hora & quot ;: 12, " mês & quot ;: 30}, " medição média & quot ;: 1,5}, " _id & quot ;: {" hora & quot ;: {" hora & quot ;: 12, " mês & quot ;: 45}, " medição média & quot ;: 2,7}}
Os registros são agrupados por seu carimbo de data / hora usando uma projeção. Os valores de medição de cada grupo são calculados em média no campo de medição média.
Resharding ao vivo
Um dos maiores desafios do escalonamento horizontal do MongoDB é sua abordagem de fragmentação. A escolha da chave de fragmento correta é crítica para o desempenho do seu cluster, mas anteriormente era uma operação unilateral. Depois de definir a chave, não será possível alterá-la, ficando sem forças se você tomar a decisão errada no primeiro dia. O próprio MongoDB descreveu a seleção de chave de fragmento como um “ salto de paraquedas unidirecional ” melhor resolvido com a criação de um novo cluster.
O MongoDB 5.0 finalmente põe fim aos pesadelos essenciais dos fragmentos. Se errar, você pode reindexar suas coleções usando uma nova chave de fragmento. O MongoDB cuidará de toda a migração para você, sem causar nenhum tempo de inatividade do banco de dados. Isso torna muito mais fácil escapar de um desempenho inferior causado pela configuração incorreta do shard.
Controle de versão e versões
O MongoDB 5.0 traz melhorias significativas à prova de futuro. O banco de dados ganhou uma API com controle de versão que permite evitar alterações interrompidas conforme você atualiza para novas versões.
Publicidade
Você poderá atualizar para versões futuras sem modificar o código do seu aplicativo. Tudo funcionará perfeitamente, desde que a nova versão ofereça suporte à versão de API que você deseja. Isso significa que seu aplicativo está mais desacoplado da versão do banco de dados subjacente, para que você possa fazer upgrade para novas versões do MongoDB antes sem correr o risco de quebrar o código.
Acompanhando essa mudança, está uma nova programação de lançamento. O MongoDB começará a fornecer versões futuras mais rapidamente, com um “ Lançamento rápido ” saindo a cada trimestre. Essas serão versões semânticas menores, sem alterações significativas, fornecendo novos recursos em um ciclo acelerado. A cada ano, um novo lançamento principal chegará, agregando os lançamentos rápidos e potencialmente quebrando a compatibilidade com versões anteriores.
O novo modelo de lançamento permite que você acesse recursos emergentes mais rapidamente, sem afetar a estabilidade geral do MongoDB. Se você não quiser atualizar a cada trimestre, pode permanecer no ramo de lançamento principal e manter a cadência anual. Os lançamentos rápidos serão oficialmente suportados apenas no serviço Atlas gerenciado do MongoDB. Eles estarão disponíveis para usuários auto-hospedados como compilações de desenvolvimento opcionais.
MongoDB sem servidor
O MongoDB também lançou uma prévia de suas novas instâncias do Atlas sem servidor. Atlas é a oferta oficial de banco de dados como serviço da empresa para plataformas de nuvem populares.
Com a implantação sem servidor, você obterá provisionamento automático dos recursos corretos para sua carga de trabalho atual. A plataforma se adapta automaticamente às novas demandas, para que você não precise dimensionar manualmente sua infraestrutura. Você só será cobrado pelo que usar.
O Atlas sem servidor é gerenciado pelo MongoDB. Ele usa a versão mais recente do banco de dados com suporte para atualizações automáticas. A criação de instâncias sem servidor permite acessar novos clusters MongoDB sem configurá-los você mesmo. Você escolhe um provedor de nuvem, cria um novo banco de dados e se conecta a partir do seu aplicativo.
Resumo
O MongoDB 5.0 estende o banco de dados com mais recursos que aumentam sua versatilidade. Ele também fortalece sua posição como uma plataforma nativa da nuvem que está disponível em uma variedade de soluções gerenciadas, agora incluindo opções sem servidor.
Publicidade
Além das mudanças no título, há uma seleção saudável de melhorias e aprimoramentos do ecossistema. Um novo MongoDB Shell simplifica a interação do desenvolvedor com bancos de dados, oferecendo destaque de sintaxe e preenchimento automático. Novos SDKs também ajudam a integrar o MongoDB com mais linguagens de programação e estruturas, incluindo Unity, Flutter e Kotlin.
No que diz respeito à segurança, o suporte expandido para criptografia de nível de campo do lado do cliente permite criptografar dados que residem em bancos de dados de várias nuvens. As melhorias na rotação de certificados facilitam as trocas x509 sem tempo de inatividade, reduzindo o impacto dos procedimentos de endurecimento de rotina.
O MongoDB 5.0 está disponível agora através do Atlas, provedores de nuvem pública e como uma solução de código aberto auto-hospedada. Existem pacotes oficiais para Amazon Linux, Debian, RedHat, SUSE, Ubuntu e Windows, bem como uma imagem Docker para ambientes em contêineres.
Nenhum comentário