Ejem…. El comentario del otro día me sigue dando vueltas … Microsoft está haciendo bien su trabajo (productos cada vez más estables, productivos y efectivos), pero ¿realmente hacemos nosotros el nuestro?.Todos conocemos la penalización que sufren nuestros servidores SQL Server con el uso de cursores y funciones que provocan que se realicen procesos iterativos: Un firme defensor de la lucha contra los cursores es Miguel Egea: Miembro de la Brigada Anti-Cursores y blogger en GolemProject http://weblogs.golemproject.com/egea. ¿Habéis pensado también lo negativo que resulta el uso de “SELECT *”?

Seguro que si, es más, yo creo que todos lo sabemos y sin embarlo lo seguimos utilizando … Ahora me viene a la cabeza (no recuerdo donde lo he leido, si era en las news o en alguna url) que alguien comentó algún día la NECESIDAD de quitar el asterisco (*) del lenguaje T-SQL. Por descabellado que parezca: nos cargarmos en ANSI-SQL (que ya falta muy poco para acabar con el), hacemos más costosos los desarrollos (vaya tela con tener que escribir siempre las columnas) y lo más importante la compatibilidad hacia atrás (backward compatibility) se destroza. Hombre, yo creo que poniendo una opción de configuración SET (eso sí por defecto activa, el que quiera que la desactive), más de un servidor lo iba a agradecer … y más de un desarrollador se tiraría de los pelos para hacerla compatible con el nuevo estandard ANTI_SELECT_ASTERISCO.

Bueno que me enrollo, habeis visto dos ejemplos básicos que casi todos conocemos, y sin embargo un alto porcentaje de los problemas de rendimiento vienen derivados de esos ejemplos.

¿y qué pasa ahora con Yukon? pues que Microsoft nos pone mucho más fácil la posibilidad de crear cursores en la propia base de datos con .NET. Uhhmmmmm No quiero decir que esté en desacuerdo: NI POR ASOOOOOMO ! No nos equivoquemos ! SQL Server es un servidor de base de datos que trabaja muy eficientemente orientado a juegos de registros ( set-based programming) sin embargo la inclusión de CLR dentro de la base de datos va a hacer renacer viejos hábitos orientados a fila …

Microsoft es consciente de ello y seguro que tiene preparada mucha documentación y ejemplos para no dejarnos caer en la tentación, pero es la pregunta de la primera frase: ¿haremos bien nuestro trabajo? ¿Pasará igual que con el asterisco?

0 Shares:
Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

You May Also Like
Leer más

Introducción a Timeline Storyteller

Introducción a Timeline Storyteller. Cuando tratamos de transmitir información ya sea en una charla, reunión o ya en ámbitos de la vida personal, el modo en el que transmitimos la información es esencial para que los oyentes muestren interés y entiendan la finalidad de lo que estamos contando.

Carga de Slowly Changing Dimensions y tabla de Hechos con atributos de Tipo 2 (Parte 2 de 3)

Este es el segundo post de la serie en el que explicaremos como cargar nuestra tabla de Hechos a partir de una dimensión con atributos de Tipo 2, usando dos maneras diferentes, una de ellas será mediante un componente “Look Up” con caché parcial y la otra opción será usando un componente “Merge Join” con un “Conditional Split” para seleccionar el registro que se encuentra en el rango de fechas correcto. Para mas información sobre qué es un atributo de Tipo 2 y sobre como cargar la dimensión que usaremos en este ejemplo puedes consultar el primer post de la serie.