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

SQL Server 2017 en Linux

Vale, SQL Server 2017 corre en Linux, ¿me interesa? Sí, ¿por qué? Porque no hablamos simplemente de que corra un nuevo sistema operativo...sino que se pueden utilizar para despliegues rápidos en entornos escalables basados en docker, kubernetes, etc. Daremos un repaso a cómo aprovecharnos de los nuevos escenarios de despliegue en nuestras empresas, aunque sean tradicionalmente entornos Microsoft.
Leer más

¿Qué es Business Intelligence? datos únicos integrados (02)

En esta entrega buscamos profundizar en las definiciones de Business Intelligence, haciendo hincapié en la importancia de tener una versión única de la verdad, es decir, un solo almacén de datos consolidados capaz de responder a las preguntas de negocio. Por otro lado se busca establecer una diferencia entre el tipo de preguntas de negocio que podrá responder un sistema ERP contra las que podrá responder un sistema de BI.
Leer más

Hilando fino en SSAS multidimensional

El equipo de SolidQ ha estado buscando la mejor manera de implementar una jerarquía padre-hijo de cuentas contables con un operador unitario que tuviera un buen rendimiento, a pesar de la gran cantidad de datos a la que tenía que enfrentarse. Veremos cómo aplanar la jerarquía, cómo implementarlo con SSAS, con una alternativa MDX, cómo añadir ordenación a las cuentas basadas en otro atributo, Time Balance Average y algún otro truco de tuning.