When the solution matters*

4D Internacional


| 4D v11 SQL | 4D 2004 (versão anterior) | Download |

4D v11 SQL

Informação geral Produtos 4D Manutenção 4D Características Começando com 4D Recursos

Buscar por fórmula - cliente/servidor

 

Em 4D 2004, uma pesquisa por fórmula é executada do lado do cliente. Isto significa que cada registro deve passar sobre a rede para aplicar uma fórmula e determinar se será parte da seleção.

Quando a lógica da requisição lhe permite, 4D v11 SQL realizará perguntas diretamente no servidor para evitar cargas estranhas na rede. Só se devolve a seleção do lado do cliente, como em uma busca clássica.

Voltemos à fórmula para medir a distância utilizada no teste QUERY BY FORMULA (standalone).

 

QUERY BY FORMULA(Square root((((Abs($latitudeRef-[customer]latitude)
       /Radian )*6378)^2)+(((Abs($longitudeRef-[customer]longitude)
       /Radian )*6378)^2))<10)

 

Sob 4D 2004, a pesquisa é executada em 15.3 minutos, o que é um tempo inviável (e é por isso que si você assistiu a alguma formação 4D, vai se lembrar que os instrutores sempre recomendam não utilizar QUERY BY FORMULA em uma aplicação cliente/servidor!)

Em 4D v11 SQL, esta busca é executada em 5.5 segundos, tornando-se muito mais viável na maioria dos casos.

Esta é uma melhora de 165 vezes, sujeita a variáveis tais como o número de registros na tabela, como também a velocidade da rede, a latência, etc.

Esta otimização é possível quando uma busca não utiliza métodos dentro da fórmula. Esta é a razão pela qual a petição não foi encapsulada na função “Distance” como no teste independente.

Por outro lado, o uso de campos ou variáveis não traz nenhum problema. 4D Client envia automaticamente ao 4D Server o valor dos elementos utilizados em uma fórmula de maneira que possam ser executados corretamente.

Internacional | Empresa | Contatar 4D | Mapa do Site | © 4D, S.A. 2008 | Tamanho da fonte: [A] [A] [A] *Quando a solução é o que importa