Mostrando entradas con la etiqueta SQL Server 2014. Mostrar todas las entradas
Mostrando entradas con la etiqueta SQL Server 2014. Mostrar todas las entradas

jueves, 12 de junio de 2014

Rendimiento tempdb mejorado en SQL Server 2014

Desde tiempos inmemoriales, hay un dicho que dice: “Usa siempre que puedas tablas temporales porque esas tablas viven en RAM”. A veces lo he oido con variables de tabla, pero la “esencia” del dicho es que puedes mejorar el rendimiento de lógica de negocio en por ejemplo procedimientos almacenados, creando objetos “temporales”. Nada mas lejos de la realidad :)
La realidad es que una tabla temporal o una variable de tabla, finalmente acaba escribiendose en disco…pero en los discos donde residen los ficheros de tempdb. Es decir, que si, que una tabla temporal o variable de tabla SI genera presión de E/S. ¡Sorpresa!
La buena noticia es que ese famoso “dicho” en SQL Server 2014 ya no es mentira del todo :).
CONTINUAR LEYENDO…

jueves, 5 de junio de 2014

Particionado de tablas en SQL Server 2014

Un nuevo post sobre SQL Server 2014, esta vez centrado en hablar sobre mejoras que aparecen sobre particionado de tablas en SQL Server 2014.
Tradicionalmente el particionado de datos no ha sido muy de mi agrado por las implicaciones de mantenimiento que se tenian asociadas. Tareas como reindexar, mover particiones entre tablas, actualizar estadísticas,…no eran tarea sencilla en entornos con carga 24x7 en el momento en el que particionabas una tabla. Ni que decir tiene que en SQL Server 2005 particionar llevaba aparejado un grave problema de rendimiento en el momento en que una query “tocaba” más de una partición…
Cada edición de SQL Server mejoraba algun aspecto (mejoras en nº de hilos entre particiones, operadores optimizados para descartar particiones,…) pero siempre quedaba en la balanza de “contras”, el mantenimiento de las tablas particionadas.
Con SQL Server 2014 la cosa ha mejorado bastante, hasta el punto de que ya no me da tanto “reparo” el promover el particionado de datos en grandes volúmenes de información, dado que ahora los inconvenientes ya están bastante diluidos como para que se puedan poner en la balanza y evitar particionar.
Continua leyendo aqui…

martes, 26 de noviembre de 2013

SQL Server In-memory OLTP engine

Con la cada vez mas cercana salida a RTM de la próxima versión de SQL Server 2014, aparece un nuevo motor relacional. Su anterior nombre en clave “Hekaton” ha sido sustituido por uno que no da lugar a dudas “In-Memory OLTP”. Es un nuevo motor relacional optimizado para datos residentes en memoria y cargas de trabajo tipo OLTP. Téngase presente que este motor surge como la motivación en Microsoft, de llegar a aumentar 100 veces el rendimiento de SQL Server en entornos puramente OLTP.
El motor en memoria incluido en SQL Server 2014, al contrario de lo que ofrecen otros fabricantes se encuentra completamente integrado en el producto y por tanto no se trata de un sistema distinto. Se trata de un motor relacional completamente transaccional y persistente, que se utiliza exáctamente igual que el motor on-disk (mediante T-SQL) y que a simple vista, se encuentra completamente integrado en el producto, posibilitando una aparente transparencia a la hora de utilizarlo.
Aunque se trata de un motor completa y radicalmente diferente al actual, ambos motores se comunican perfectamente y se permite por ejemplo realizar consultas que toquen objetos (tablas por ejemplo) de tipo on-disk e in-memory de forma transparente.

image
Diagrama de comunicación entre el motor in-memory (aka “Hekaton” o “in-memory”) y SQL Components (aka on-disk)

Continuar leyendo…