PHP - Por que o novo driver SQLSRV é mais lento que o antigo driver mssql?
Eu tenho muitos componentes usando o antigo driver mssql do PHP. Eu quero mudar para o novo driver SQLSRV pela Microsoft, mas minhas consultas são muito mais lentas.
Eu tenho muitos processos de manipulação de 400.000 linhas.
Aqui estão meus testes com40 000 linhas :
testOldDriver_mssql = Linhas 40000: 1 segundotestNewDriver_nonPDO = Linhas 40000: 7 segundostestNewDriver_PDO = Linhas 40000: 4 segundosAqui meu maior processo (+480.000 linhas):
testOldDriver_mssql = Linhas 484856: 27 segundostestNewDriver_nonPDO = Linhas 484856: 120 segundostestNewDriver_PDO = Linhas 484856: 47 segundostestPDO_ODBC = Linhas 484856: 24 segundosO novo driver é definitivamente mais lento? Ou estou perdendo alguma coisa?
Editar 1:
Por "driver antigo" refiro-me à biblioteca obsoleta do MSSQL (consulte php.net/mssql).
O novo driver é aquele feito diretamente pela Microsofthttp://www.microsoft.com/en-us/download/details.aspx?id=20098)
Minha consulta é
SELECT * FROM myTable
WHERE pdvSaisie IN
(SELECT number FROM pdvs WHERE nom LIKE 'ZUEE %')
e usando um diretoquery()
(não prepare e mesmo resultado se eu usar uma declaração preparada).
Editar 2:
Adicionado teste PDO / ODBC. Surpresa, é mais rápido: o