Webinar: Índices Columnares y Tablas en Memoria SQL Server
Vložit
- čas přidán 5. 09. 2024
- Webinar sobre Índices Columnares y Tablas en Memoria SQL Server.
Siguenos en nuestras redes sociales
/ sqlcomunidad
/ visoalgt
/ victhorcardenas
/ vh_cardenas
Si buscas capacitación adicional:
Consultas con SQL Server
visoal.thinkif...
Desarrollo de Base de Datos con SQL Server
visoal.thinkif...
Administración de Base de Datos con SQL Server
visoal.thinkif...
Todo muy bien explicado y todo, pero que pasa en tablas optimizadas con llave foránea y da error de que no se puede crear una tabla no optimizada cuando tiene una llave foránea haciendo referencia a una tabla optimizada? y el alter no funciona porque para crearlo tiene que existir dicha tabla optimizada y peor aún que pasa si una base de datos tiene casi todas las tablas con alguna llave foránea? iría toda la base de datos optimizada casi, eso son muchos índices y traería problemas de ejecución a la base de datos?
Esto es un problema de versiones, desde SQL Server 2016, se han eliminado varias limitaciones de OLTP en memoria, lo que hace que esta característica sea más útil. Una de las limitaciones eliminadas es la capacidad de crear una clave externa en tablas optimizadas para memoria, que es muy importante para garantizar la integridad de los datos dentro de estas tablas.
@@visoalgt pero entonces habría que usar otro tipo de índice, porque toda una base entera optimizada es completamente lo contrario a lo que se quiere hacer que es mejorar el rendimiento y muchos índices es el efecto contrario. Yo por un momento me pensé y si hago las tablas sin llaves foráneas y las hago optimizadas, ya posterior a eso hacer la integridad de los alter con las llaves foráneas, no lo he probado, pero me dejaría hacer la llave foránea después de haber creado las tablas optimizadas? O no me dejaría hacer las llaves foráneas después?
Hola, primero que nada gracias por tus aportes
1.-entiendo que las tablas hash crean una llave compuesta de las diferentes variables o columnas que le asigne, esto es realmente mas eficiente que un indice nonclusterizado?
2.-Tengo en el entendido que al instalar una instancia de SQL server le asignas los recursos asignados a la BD,
los recursos que consumen las tablas temporales son los recursos que reserva la instancia o lo restante del server?
3.- El paralelismo( funcion MAXDOP = 2) solo funciona al crear indices columna-res?
Una cosa mas si no es mucho pedir, harás algún vídeo sobre Hints o tendrás algún documento que me recomiendes?
Excelente video
Saludos Jose, en cuanto a tus preguntas las respuestas son:
1. La implementación de tablas hash en SQL server se hace con indices hash que son indices en memoria, al estar en memoria son mas eficientes que un índice no agrupado de nivel de fila.
2. Los recursos que usa el SQL server son configurables todo el tiempo, de manera predeterminan una instancia usa toda la memoria disponible del servidor por lo que es bueno configurar un límite de memoria para no comprometer recursos del sistema operativo, también es configurable la ubicación en los discos duros de las diferentes bases de datos, hay discos más rápidos que otros y por distribución de cargas de trabajo es buena práctica distribuir las bases de datos en diferentes discos, muchos objetos temporales se crean en la base de datos TempDB y no en la base de datos en uso, es importante monitorear y administrar la base de datos TempDB
3. El paralelismo funciona todo el tiempo no solo en los indices.
4. Trabajaré en un video explicando los hint inner join.
Que tan beneficioso es tener indices columnares para procesos de inser, delete y update en una base de datos bien transacional, lo pregunto, porque tengo precesisamente ese problema y ya hemos hecho mejoras a nivel de indices por fila.
Quedo atento a tus comentarios.
Cordialmente.
Si la tabla tiene mucho movimiento yo me quedaría con indices de nivel de fila, los indices columnares benefician a consultas complejas.
solo exciste en sql 2016? porque yo estoy usando sql 2014 y el servidor es 2008R2
Los procedimientos almacenados se ejecutan en cualquier version de SQL Server, debe existir alguno instrucción especifica que hay que revisar dentro del procedimiento, pero el problema puede ser que no sea de versiones.
Hola, ¿Si hago un rename de la tabla perderé la tabla en memoria con todos sus componentes? y ademas los CONSTRAINT se puede utilizar en esas tablas?
No, la tabla se deja renombrar como una tabla común de SQL Server y se mantiene en memoria
una consulta mi servidor des 32 gb de ram y el sql consume 28gb actual al poner tabla en memoria no seria mas perjudicial?
Si, hay que hacer tunning a tu base de datos y luego aumentar los recursos al servidor, hecho esto si aun necesitas mejorar tus consultas se podría implementar tablas en memoria.
Esto se puede a partir de que version de sql server?
a partir de SQL 2012
La base de datos por favor, muchas gracias.
La base de datos es parte de un material proporcionado en el curso www.udemy.com/desarrollo-de-bases-de-datos-con-sql-server-70-762/ por lo que no se proporciona por esta via.
Favor la base de datos,gracias.
La base de datos es parte de un material proporcionado en el curso www.udemy.com/desarrollo-de-bases-de-datos-con-sql-server-70-762/ por lo que no se proporciona por esta via.
Saludo, donde puedo descargar la base de datos del video para Practicar, Muchas Gracias.
La base de datos es parte de un material proporcionado en el curso www.udemy.com/desarrollo-de-bases-de-datos-con-sql-server-70-762/ por lo que no se proporciona por esta via.
Interesante el concepto de tabla-en-memoria, pero que aburridisimo tu explicacion ... hablas en pausas ... como que estas leyendo lo que explicas... pero de todas maneras se te agradece tu colaboracion.
Mil disculpas, que siento que no te gustara mi explicación, me esforzare más la próxima vez para escribir código y hablar al mismo tiempo, y que sea de tu agrado.
Mil disculpas .. tu tienes pelotas para hacer esto y se ve que eres profesional y certificado. Espero que lo tomes como una critica nomás.
No, nada que disculpar, gracias a ti por ver el video y voy a tratar de mejorar, algunos videos me salen mejor que otros, Gracias!
YaTu Sabes ponlo en velocidad 1.5 o 2, y evita hacer ese tipo de comentarios