1. TugaTech » Software » Noticias de Software
  Login     Registar    |                      
Siga-nos

Microsoft loves phyton

A Microsoft anunciou uma novidade que promete agitar a comunidade de desenvolvimento Python que trabalha com SQL Server. A empresa revelou a primeira versão de testes do mssql-python, um driver próprio que, segundo a gigante tecnológica, deixa para trás o padrão da indústria, o pyodbc, em termos de desempenho, segurança e consistência.

O pyodbc tem sido, durante anos, a escolha principal para os programadores que necessitam de ligar as suas aplicações em Python ao Microsoft SQL Server, muito devido à sua estabilidade e comunidade ativa. No entanto, a Microsoft acredita ter criado uma alternativa superior, construída de raiz a pensar nas arquiteturas modernas.

A aposta na performance e consistência

Numa publicação detalhada no seu blogue, a Microsoft explica que o mssql-python foi desenvolvido com foco em desempenho, segurança, gestão de memória e suporte multiplataforma. A grande diferença reside na sua arquitetura, que utiliza uma camada agnóstica de plataforma em C++ denominada Direct Database Connectivity (DDBC).

Esta abordagem é uma alternativa ao Driver Manager, a tecnologia usada por drivers como o pyodbc. Segundo a empresa, o DDBC evita os comportamentos inconsistentes que os programadores por vezes encontram ao trabalhar em diferentes sistemas operativos. Ao interagir diretamente com o driver ODBC nativo do SQL Server, o DDBC oferece um backend consistente, com menos sobrecarga nas chamadas de função, sem dependências externas e com um controlo mais rigoroso sobre as ligações e o uso de memória.

Os números do confronto: mssql-python vs. pyodbc

Para comprovar as suas alegações, a Microsoft realizou uma série de benchmarks comparando os dois drivers num computador com Windows 11 Pro, processador Intel Core i7 e 32GB de RAM, ligado a uma base de dados Azure SQL. Os resultados são impressionantes.

O mssql-python demonstrou ser significativamente mais rápido em todas as principais operações:

  • Operações Core SQL (SELECT, INSERT, UPDATE, DELETE): Entre 2 a 4 vezes mais rápido.

  • Queries Complexas (Join, Nested): De 3,6 a 4 vezes mais rápido.

  • Operações de Fetch (One & Many): Cerca de 3,6 a 3,7 vezes mais rápido.

  • Procedimentos e Transações: Aproximadamente 2,1 a 2,6 vezes mais rápido.

  • Inserções em Lote (Batch Inserts): Um ganho impressionante de 8,6 vezes.

  • 1000 Ligações Concorrentes: Até 16,5 vezes mais rápido que o pyodbc.

É importante notar que estes testes foram realizados pela Microsoft e os resultados podem variar em cenários de utilização real.

Como experimentar e o que esperar no futuro

Atualmente, o mssql-python encontra-se em fase de "preview" e o projeto é mantido pela Microsoft no GitHub. O driver já suporta Windows, macOS e algumas distribuições de Linux como Debian, Ubuntu e RHEL, com planos para adicionar suporte a Alpine e SUSE Linux no futuro.

A Microsoft está também a trabalhar para facilitar a migração de projetos existentes de pyodbc para o novo driver, a realizar mais testes de stress e a adicionar suporte para operações de Bulk Copy (BCP).

Para os programadores que queiram testar esta nova ferramenta, a instalação pode ser feita através de um simples comando: pip install mssql-python




Aplicações do TugaTechAplicações TugaTechDiscord do TugaTechDiscord do TugaTechRSS TugaTechRSS do TugaTechSpeedtest TugaTechSpeedtest TugatechHost TugaTechHost TugaTech