No video
Creación y Mantenimiento de Indices en el SQL Server
Reunión virtual de la comunidad de base de datos para Guatemala, donde tratamos el tema de Creación y Mantenimiento de Indices en el SQL Server
𝐒𝐢𝐠𝐮𝐞𝐧𝐨𝐬 𝐞𝐧 𝐧𝐮𝐞𝐬𝐭𝐫𝐚𝐬 𝐫𝐞𝐝𝐞𝐬 𝐬𝐨𝐜𝐢𝐚𝐥𝐞𝐬
/ sqlserverlatam
/ visoalgt
/ victhorcardenas
/ vh_cardenas
𝐒𝐢 𝐛𝐮𝐬𝐜𝐚𝐬 𝐜𝐚𝐩𝐚𝐜𝐢𝐭𝐚𝐜𝐢𝐨́𝐧 𝐚𝐝𝐢𝐜𝐢𝐨𝐧𝐚𝐥:
𝐂𝐨𝐧𝐬𝐮𝐥𝐭𝐚𝐬 𝐜𝐨𝐧 𝐒𝐐𝐋 𝐒𝐞𝐫𝐯𝐞𝐫
www.udemy.com/...
𝐃𝐞𝐬𝐚𝐫𝐫𝐨𝐥𝐥𝐨 𝐝𝐞 𝐁𝐚𝐬𝐞 𝐝𝐞 𝐃𝐚𝐭𝐨𝐬 𝐂𝐨𝐧 𝐒𝐐𝐋 𝐒𝐞𝐫𝐯𝐞𝐫
www.udemy.com/...
𝐀𝐝𝐦𝐢𝐧𝐢𝐬𝐭𝐫𝐚𝐜𝐢𝐨́𝐧 𝐝𝐞 𝐁𝐚𝐬𝐞 𝐝𝐞 𝐃𝐚𝐭𝐨𝐬
www.udemy.com/...
Пікірлер: 32
Súper vídeo. Sigue compartiendo más cosas así
Gracias maestro. Muy muy interesante
@visoalgt
Жыл бұрын
Saludos!
Primero que nada déjeme felicitarlo por hacer tan amena la clase y por explicar tan claro, también quiero agradecerle por compartir sus altos conocimientos. Sólo me queda una duda, ¿cuándo corresponde usar un índice agrupado y cuándo uno no agrupado? Alguien me podría ayudar con esa duda?
@visoalgt
Жыл бұрын
Indice agrupado solo puede existir uno y este indica el ordenamiento sobre el que se basa toda la tabla, los demás deben ser índices no agrupados. Los índices se crean en función de las consultas que cree y la idea es mejorar la velocidad de estas.
El mantenimiento comienza en el minuto 36:15 Cuando es recomendable usar REBUILD o REORGANIZE 48:38
@visoalgt
Жыл бұрын
Si la desfragmentación es > 5% pero < = 30% se aconseja Reorganizar, si es
Acabe de comprar tu curso de Administracion en tu web !
@vhcardenas
3 жыл бұрын
Muchas gracias! Estoy a las ordenes cualquier consulta, por alli te llegar un correo con la info de contacto.
Ing victor consulta da cursos en linea ya que en el video veo participación de alumnos.
Muy bueno el video. Esta disponible esa base de datos para hacer la practica y poder apreciar mejor todo lo que se hizo en mi pc? Muchisimas Gracias.
Muy buen material hermano, saludos. Quizás sea trivial la respuesta a mi pregunta pero...Existe alguna especie de "guía" que ayude en el análisis sobre que campos elegir para nuestros indices? Quiero decir, que tipo de dato es ideal para nuestro indice (ésto, en el entendido que no todos los campos/tipos se pueden indizar) . Y, si necesito un indice compuesto (2 campos o más) como elegir el orden de los campos en el indice debe incorporar. Cual sería el criterio a considerar?
@visoalgt
2 жыл бұрын
Lo que se necesita para determinar los índices es un análisis de las consultas que se realizan, cuáles son las de mayor demanda y campos de que tablas usan, en base a esto crear los índices, en cuanto eficiencia es mejor indizar campos numéricos sobre los de texto en la medida de lo posible.
@robherto6260
2 жыл бұрын
@@visoalgt Interesante. Tengo un caso dónde he diseñado un índice que sirve a consultas, las cuales se basan primero en un intervalo de tiempo y demás campos de tipo cadena subsecuentemente. Esperaba que al ejecutar el query de consulta, SQL tomara el índice creado por mi pero extrañamente para mí, me sugiere un índice que comienza por un campo de tipo texto. De aquí mi duda sobre el orden de los campos incluidos en el índice
excelente explicacion, estoy pensando si un campo es tipo datetime tambien es candidato para indexar porque es uno de los campos que se usa mucho como filtro en las query asi que seguramente a estos campos les viene bien ser indices o me equivoco?
@visoalgt
2 жыл бұрын
Si un campo de fecha puede ser indizado y puede resultar muy efectivo para las consutlas con parametros de tiempo
Estimado son muy útiles tus videos. Quiero consultarte algo: al hacer un CheckDB quisiera que los resultados me los guarde en un archivo de texto. será posible ? DBCC CHECKDB ('miBase')
@visoalgt
Жыл бұрын
-- Activar las opciones avanzadas y es necesario para configurar xp_cmdshell EXEC sp_configure 'show advanced options', '1' RECONFIGURE -- esto habilita xp_cmdshell EXEC sp_configure 'xp_cmdshell', '1' RECONFIGURE --Crear una tabla Create table test (codigo int not null identity(1,1), texto varchar(max) ) --Insertarle datos a la tabla Insert into test (texto) EXEC('master..xp_cmdshell ''ISQL -E -Q"dbcc checkdb(master)"''')
Que pasa si tengo demasiados índices Hipotéticos y los elimino, afecta el performance de mis consultas o es recomendable dejarlos. Saludos
@visoalgt
Жыл бұрын
Seguramente hay consultas que se benefician de los indices actuales, lo que habría que investigar es los indices que no se usan y esos si, eliminarlos.
Hola Victor. como estas? Victor. hacer una reorganización o recrear nuevamente mi índice me puede dañar la tabla si este no terminara de correr hasta el final? saludos. agradecido de antemano. debo comentar que mi tabla tiene 20 millones de registros, tiene aprox 10 índices y el % de fragmentacion esta por encima de 90. que me aconsejas.
@visoalgt
2 жыл бұрын
Dañar la tabla al punto de no leerla no, pero si volver lentas las consultas, es como ponerse a arreglar nuestro dormitorio y dejarlo a medias, mas desarreglado que como estaba inicialmente.
@issues300
2 жыл бұрын
@@visoalgt muchas gracias victor.
Buenas tardes profesor, estoy llevando a cabo el curso de administración de base de datos en sql server que dicta, y tengo problemas para conectar e segundo equipo vitual con el primero, no me reconoce el domain name para conectarlo. como podrias resolverlo ? desde ya gracias
@visoalgt
2 жыл бұрын
Escribame por favor en el portal donde lo esta recibiendo para contestarle por esa via. normalmente el problema que indica es por estar mal configurada la dirección del DNS en los equipos.
hola en cual de los tres cursos de udemy esta este tema??? y el agente de Sql Server y el matenimiento??
@visoalgt
Жыл бұрын
Es el de Administración de SQL Server
@wolfgrimm4779
Жыл бұрын
@@visoalgt Muchas gracias
me gustaría por favor que me facilitara ese script
@kuki240
3 жыл бұрын
select s.name as 'Schema',t.name as 'table',i.name as 'index', DDIPS.avg_fragmentation_in_percent, DDIPS.page_count from sys.dm_db_index_physical_stats(DB_ID(),null,null,null,null) as DDIPS INNER JOIN sys.tables t on t.object_id = DDIPS.object_id INNER JOIN sys.schemas s on t.schema_id = s.schema_id INNER JOIN sys.indexes i on i.object_id = DDIPS.object_id and DDIPS.index_id = i.index_id WHERE DDIPS.database_id = DB_ID() and i.name is not null and DDIPS.avg_fragmentation_in_percent > 0 ORDER BY DDIPS.avg_fragmentation_in_percent desc
@vadinho85
3 жыл бұрын
@@kuki240 Gracias por compartir!!!
Esta aburrido, no entendi. gracias x nada