Prueba gratis la herramienta que analiza el rendimiento de tus consultas

Prueba gratis la herramienta que analiza el rendimiento de tus consultas

En SolidQ estamos a punto de lanzar una nueva herramienta y queremos darte la oportunidad de que la pruebes antes que nadie. Su nombre en clave es TSQL-CSI-DW y es ni mas ni menos que el datawarehouse de análisis de rendimiento de tus consultas. La idea es sencilla: activas una traza de eventos extendidos con el template que te diremos, y nosotros lo procesamos dentro de un Datawarehouse para que lo explotes tú desde un PowerBI que te expondremos para ello.

(más…)

Generación de código para proyectos de base de datos

Generación de código para proyectos de base de datos

En ingeniería de software, hace bastantes años que Microsoft nos hizo un gran aporte con las herramientas de gestion de proyectos de base de datos a través de Visual Studio. Gracias a ello, los administradores y desarrolladores de BBDD podemos utilizar Visual Studio para gestionar el ciclo de vida de las BBDD en entornos corporativos, permitiéndonos hacer el mismo seguimiento y evolución con nuestras BBDD al que están acostumbrados los equipos de desarrollo cuando hablamos de aplicaciones. Ya sabes…integración continua, despliegues con tests unitarios,….

Al hilo de esto, en un proyecto bastante grande en el que estoy metido últimamente ha surgido la necesidad de generar automáticamente ciertas partes de código, y dado que es un proyecto siguiendo una metodología de desarrollo Agil con Scrum y Visual Studio con proyectos de BBDD, he podido aprovechar una de las características que siempre me han gustado mas de Visual Studio…las plantillas de generación de código T4.

(más…)

Query_hash + eventos extendidos = captura de waitstats granular

Query_hash + eventos extendidos = captura de waitstats granular

Cuando hablamos de waitstats lo primero que viene a la mente la mayoría de los DBA, en función de cuantos años lleven usándolos, es el comando DBCC SQLPERF(waitstats) o la DMV sys.dm_os_wait_stats. En ocasiones la captura de esta información de forma global tiene mucho sentido, para obtener por ejemplo una “foto” de las esperas que afectan a nuestra instancia de forma global. Sin embargo, en otros casos lo que nos interesa es conocer las esperas que afectan a una parte muy concreta de nuestra carga y es ahí donde los eventos extendidos junto a un filtrado por firma de consulta (query_hash) nos ofrece el mejor resultado.

(más…)

Temporal tables en SQL Server 2016

Temporal tables en SQL Server 2016

La llegada de SQL Server 2016 trae numerosas nuevas funcionalidades para ayudarnos con las necesidades propias de aplicaciones empresariales. Una necesidad bastante habitual consiste en disponer de un histórico de ciertas tablas para, en el futuro, poder comprobar su contenido en distintos momentos del tiempo.

Con este requerimiento de tipo “multidimensional” es fácil pensar en que si ya disponemos de un DW (Data Warehouse) éste sería el lugar donde acudir cuando necesitamos dicha información. Esto puede presentar varios problemas, entre ellos que necesitamos primero que nuestra organización utilice un DW que contemple esta información. Otro problema es que para la carga del DW habitualmente se realizan procesos ETL que transforman los datos por lo que puede que no podamos restituir la información a su estado original.

(más…)

Problema con Expresión CASE en Predicados WHERE: Análisis de un Plan de Ejecución raro y la importancia de conocer el motor de SQL Server

Problema con Expresión CASE en Predicados WHERE: Análisis de un Plan de Ejecución raro y la importancia de conocer el motor de SQL Server

Cuando damos clases de SQL Server un aspecto al que los clientes – y a veces alumnos – quitan importancia a la parte de interioridades del motor de SQL Server. En mi puesto, en muchas ocasiones debo convencer a decisores sobre la formación a impartir a sus empleados; con mucha frecuencia tratan de evitar aspectos que se consideran internos del producto y que pueden verse como “de junta de trócola” y “para frikis”. En SolidQ siempre queremos que se imparta ese contenido, pero hoy día donde el argumento de más ponderación es el coste del servicio, muchos clientes intentan evitar contenidos formativos a los que no se les vea “retorno inmediato”. No quiero hacer de esta publicación una crítica o análisis de la formación especializada en España, pero debo indicar que cuando estaba pensando en la motivación de este post, la asociación entre interioridades de SQL Server, conocimiento que “quizás te sirva a medio plazo” y la educación especializada me vino directamente a la cabeza. También es posible que sea un problema mío de no saber convencer al cliente de la importancia del contenido presupuestado(más…)

Articulo publicado en la revista DotNetMania nº98

Ya puedes leernos de nuevo en el número de diciembre de 2012 de la revista DotNetMania http://www.dotnetmania.com/

En una serie de 4 artículos, hablaremos Enrique Catalá y Enrique Puig sobre “Buenas prácticas de codificación para capas de acceso a datos de aplicaciones”. En esa serie de 4 artículos vamos a desmenuzar las distintas posibilidades que tenemos a la hora de enfrentarnos al desarrollo de capas de acceso a datos.

(más…)