Está en la página 1de 15

P2

5701
ADMINISTRACION DE BASE DE DATOS |
TECNOLOGICO DE ESTUDIOS SUPERIORES DE
ECATEPEC

DATOS PRACTICA 2

Matricula – 201510544 Descripcion


Nombre del Alumno – López
Morales Juan Carlos. Para esta práctica emplearán la base de datos que
Grupo – 5701. Se instala por default: adventuresworks.
Nombre del Alumno – En caso de no tenerla buscarla en internet e
Administracion de Base De Instalarla.
Datos.
Nombre Del Profesor – En la nota principal de la practica se menciona que se requiere la
Abraham Jorge Jimenez Alfaro. instalacion de la base de datos ADVENTURESWORK

Carrera – Ingenieria en Adventure works cycles es el nombre de una empresa ficticia que se
sistemas computacionales. dedica a la fabricación y venta de bicicletas. La base de datos de
Periodo – 2020-2. ejemplo "adventureworks" trata de reflejar la estructura (tablas,
índices, procedimientos almacenados, etc...) Que necesitaría una
https://docs.microsoft.com/es- aplicación real que sirviese para gestionar esa empresa. El ejemplo
es/sql/samples/adventurework incluye de todo: fabricación, ventas, compras, gestión de producto,
s-install-configure?view=sql- gestión de clientes, recursos humanos, comercio electrónico... Y
server-ver15&tabs=ssms también existe la posibilidad de descargar ejemplos de uso para la
parte de business intelligence y almacenes de datos. Es un ejemplo
https://github.com/Microsoft/s muy completo que sirve para aprender diseño y uso de bases de
ql-server- datos, pero también se puede usar como base para crear aplicaciones
samples/releases/tag/adventur de todo tipo que utilicen esta estructura de datos como
eworks almacenamiento subyacente. Es un gran recurso de aprendizaje.

En la siguiente parte explico En la parte de la izquierda se agregan algunos link donde se puede
comose descarga la base de descargar el script de la base de datos o en su defecto un BACKUP de
datos y como se instala en el la misma,
sistema SQL SERVER

Del repositorio de github


descargaremos el siguiente el
paquete comprimido de la
imagen 1.0
Imagen 1.0 Link de descarga

Practica 2 | ADMINISTRACION DE BASE DE DATOS


P2 5701
ADMINISTRACION DE BASE DE DATOS | TECNOLOGICO DE
ESTUDIOS SUPERIORES DE ECATEPEC

La ubicación del archivo sera la que se muestra en la imagen 1.1 (es recomendable dejarlo en una ubicación
conocida ya que esa sera la direccion que SQL Server buscara para importar los datos en las tablaas de exel.)

Imagen 1.1Ubicacion de los archivos.

Para la parte de la instalacion ingresaremos a SQL, esta instalación presenta algunas dificultades que
conviene conocer: Desde elegir el archivo apropiado hasta definir ciertas rutas necesarias para la correcta
carga de datos(para esta seccion se realizo la correcta ubicación del paquete), o poner SQL Server
Management Studio en modo SQL CMD, un modo especial de funcionamiento que le permite realizar algunas
operaciones extra necesarias (como acceder al sistema de archivos).

En primer lugar arrastramos el archivo llamado instawdb.sql a SQL Server Management Studio y buscamos la
siguiente linea:

Imagen 1.2 línea de comandos en SQL.

Esta linea describe la ruta de las tablas en exel que contiene los datos correspondientes ,la ubicaremos en la
ruta que elijamos, en este caso es la anterior como se muestra en la imagen 1.2.

A continuacion ingresaremos a SQL en modo SQLCMD , SQLCMD es una utilidad para el manejo de bases de
datos relacionales (SGBD) basado en el lenguaje Transact-SQL mediante la línea de comandos.

Practica 2 | ADMINISTRACION DE BASE DE DATOS


P2 5701
ADMINISTRACION DE BASE DE DATOS | TECNOLOGICO DE
ESTUDIOS SUPERIORES DE ECATEPEC

Imagen 1.3 SQLCMD de comandos en SQL.

Utilizando la línea de comandos sqlcmd, usted puede:

- Mandar instrucciones T-SQL a la base de datos SQL Server.

- Crear scripts y procedimientos.

De esta forma ingresamos el apartado Query de


SQL Server Management Studio y elegimos el apartado
SQLCMD Mode como se muestra en la Imagen 1.3.

Teniendo los dos pasos anteriores ya aplicados


Procederemos a ejecutar el SCRIPT , par esto damos click
En el boton EXECUTE como se muestra en la figura 1.4 :

Imagen 1.4 Ejecutar línea de comandos SQL.

Si todo salio bien y se siguieron correctamente lo los pasos anteriores, SQL despues de algunos momentos
SQL nos mandara el siguiente mensaje como se muestra en la imagen 1.5.

Imagen 1.5 Query Finalizada con éxito.

Recuperar metadatos de objetos


Cada objeto que se crea en una instancia tiene una vista correspondiente para recuperar
información acerca de todos los objetos de ese tipo. La mayoría de las vistas de metadatos de
objeto contienen un ID, el nombre del objeto, y la fecha/hora en que se creó el objeto.
Recuperar información acerca de los objetos de la base de datos

1.- Ejecute el siguiente script y revise los resultados de cada declaración SELECT.

SELECT * FROM sys.databases


SELECT * FROM sys.schemas
SELECT * FROM sys.objects
SELECT * FROM sys.tables

Practica 2 | ADMINISTRACION DE BASE DE DATOS


P2 5701
ADMINISTRACION DE BASE DE DATOS | TECNOLOGICO DE
ESTUDIOS SUPERIORES DE ECATEPEC

SELECT * FROM sys.columns


SELECT * FROM sys.identity_columns
SELECT * FROM sys.foreign_keys
SELECT * FROM sys.foreign_key_columns
SELECT * FROM sys.default_constraints
SELECT * FROM sys.check_constraints
SELECT * FROM sys.indexes
SELECT * FROM sys.index_columns
SELECT * FROM sys.triggers
SELECT * FROM sys.views
SELECT * FROM sys.procedures

Los resultados de las consultas anteriores las enumero a continuación.

Consulta 1 SELECT * FROM sys.databases

Consulta 1 SELECT * FROM sys.schemas

Practica 2 | ADMINISTRACION DE BASE DE DATOS


P2 5701
ADMINISTRACION DE BASE DE DATOS | TECNOLOGICO DE
ESTUDIOS SUPERIORES DE ECATEPEC

Consulta 1 SELECT * FROM sys.objects

Consulta 1 SELECT * FROM sys.tables

Consulta 1 SELECT * FROM sys.columns

Consulta 1 SELECT * FROM sys.identity_columns

Consulta 1 SELECT * FROM sys.foreign_keys

Practica 2 | ADMINISTRACION DE BASE DE DATOS


P2 5701
ADMINISTRACION DE BASE DE DATOS | TECNOLOGICO DE
ESTUDIOS SUPERIORES DE ECATEPEC

Consulta 1 SELECT * FROM sys.foreign_key_columns

Consulta 1 SELECT * FROM sys.default_constraints

Consulta 1 SELECT * FROM sys.check_constraints

Consulta 1 SELECT * FROM sys.indexes

Consulta 1 SELECT * FROM sys.index_columns

Practica 2 | ADMINISTRACION DE BASE DE DATOS


P2 5701
ADMINISTRACION DE BASE DE DATOS | TECNOLOGICO DE
ESTUDIOS SUPERIORES DE ECATEPEC

Consulta 1 SELECT * FROM sys.triggers

Consulta 1 SELECT * FROM sys.views

Consulta 1 SELECT * FROM sys.procedures

Practica 2 | ADMINISTRACION DE BASE DE DATOS


P2 5701
ADMINISTRACION DE BASE DE DATOS | TECNOLOGICO DE
ESTUDIOS SUPERIORES DE ECATEPEC

Diagnósticos de bases de datos


La información de diagnóstico con la que un DDBA trabaja generalmente para una base de datos se
divide en tres grupos: tamaño, indexación y ejecución de la consulta.
Recuperar Tamaños de bases de datos y objetos
1.- Ejecute la siguiente secuencia de comandos y revise los resultados de cada declaración
SELECT

2.- Ejecute el siguiente script y revise los resultados de cada declaración SELECT

Consulta 1 SELECT * FROM sys.partitions

Consulta 1 SELECT * FROM sys.allocation_units

Consulta 1 SELECT object_name(a.object_id), c.name, SUM(rows) rows,


SUM(total_pages) total_pages, SUM(used_pages) used_pages,
SUM(data_pages) data_Pages
FROM sys.partitions a
INNER JOIN sys.allocation_units b ON a.hobt_id = b.container_id
INNER JOIN sys.indexes c ON a.object_id = c.object_id and a.index_id = c.index_id
GROUP BY object_name(a.object_id), c.name
ORDER BY object_name(a.object_id), c.name Practica 2 | ADMINISTRACION DE BASE DE DATOS
P2 5701
ADMINISTRACION DE BASE DE DATOS | TECNOLOGICO DE
ESTUDIOS SUPERIORES DE ECATEPEC

Índices
La solidez de la indexación dentro de una base de datos puede hacer la diferencia entre una
aplicación que tiene buen rendimiento y una que tiene mal rendimiento. Hacer un seguimiento de la
frecuencia con que se utiliza un índice, ayuda o bien a determinar si se puede eliminar el índice para
salvar la sobrecarga de mantenimiento, o si usted necesita dividir el índice en un grupo separado de
discos. Además, el seguimiento y control de la fragmentación de índices puede significar la
diferencia entre si SQL Server selecciona el índice para satisfacer una consulta o si el camino
elegido es menos óptimo.

Recuperar Estadísticas de índice


1.- Ejecute la siguiente secuencia de comandos y revise los resultados

Consulta 1 SELECT * FROM sys.dm_db_index_operational_stats(NULL,NULL,NULL,NULL)

Consulta 1 SELECT * FROM sys.dm_db_index_physical_stats(NULL,NULL,NULL,NULL,NULL)

2.- Ejecute la siguiente secuencia de comandos y revise los resultados


SELECT * FROM sys.dm_db_index_usage_stats

Practica 2 | ADMINISTRACION DE BASE DE DATOS


P2 5701
ADMINISTRACION DE BASE DE DATOS | TECNOLOGICO DE
ESTUDIOS SUPERIORES DE ECATEPEC

Determinar los índices a crear


1.- Ejecute la siguiente secuencia de comandos y revise los resultados

SELECT * FROM sys.dm_db_missing_index_details

SELECT * FROM sys.dm_db_missing_index_group_stats

SELECT * FROM sys.dm_db_missing_index_groups

Practica 2 | ADMINISTRACION DE BASE DE DATOS


P2 ADMINISTRACION DE BASE DE DATOS | TECNOLOGICO DE
ESTUDIOS SUPERIORES DE ECATEPEC
5701

2.- Ejecute el siguiente script de agregación y revise los resultados

SELECT * FROM (
SELECT user_seeks * avg_total_user_cost * (avg_user_impact * 0.01)
AS index_adventage, migs.*
FROM sys.dm_db_missing_index_group_stats migs) AS migs_adv
INNER JOIN sys.dm_db_missing_index_groups AS mig
ON migs_adv.group_handle = mig.index_group_handle
INNER JOIN sys.dm_db_missing_index_details As mid
ON mig.index_handle = mid.index_handle
ORDER BY migs_adv.index_adventage

3.- Ejecute el siguiente código para forzar un índice perdido contra la base de datos AdventureWorks

SELECT City, PostalCode


FROM Person.Address
WHERE City IN ('Seattle','Atlanta')

Practica 2 | ADMINISTRACION DE BASE DE DATOS


P2 5701
ADMINISTRACION DE BASE DE DATOS | TECNOLOGICO DE
ESTUDIOS SUPERIORES DE ECATEPEC

SELECT City, PostalCode,AddressLine1


FROM Person.Address
WHERE City= 'Atlanta'

SELECT City, PostalCode,AddressLine1


FROM Person.Address
WHERE City LIKE 'Atlan%'

4 . Ejecutar el script de agregación de nuevo y examine los resultados

SELECT * FROM (
SELECT user_seeks * avg_total_user_cost * (avg_user_impact * 0.01)
AS index_adventage, migs.*
FROM sys.dm_db_missing_index_group_stats migs) AS migs_adv
INNER JOIN sys.dm_db_missing_index_groups AS mig
ON migs_adv.group_handle = mig.index_group_handle
INNER JOIN sys.dm_db_missing_index_details As mid
ON mig.index_handle = mid.index_handle
ORDER BY migs_adv.index_adventage

Practica 2 | ADMINISTRACION DE BASE DE DATOS


P2 5701
ADMINISTRACION DE BASE DE DATOS | TECNOLOGICO DE
ESTUDIOS SUPERIORES DE ECATEPEC

5.- Ejecute el siguiente script para ejecutar repetidamente una declaración SELECT y revise los
nuevos resultados de la secuencia de comandos de agregación

SELECT City, PostalCode,AddressLine1


FROM Person.Address
WHERE City LIKE 'Atlan%'
GO 100

SELECT * FROM (
SELECT user_seeks * avg_total_user_cost * (avg_user_impact * 0.01)
AS index_adventage, migs.*
FROM sys.dm_db_missing_index_group_stats migs) AS migs_adv
INNER JOIN sys.dm_db_missing_index_groups AS mig
ON migs_adv.group_handle = mig.index_group_handle
INNER JOIN sys.dm_db_missing_index_details As mid
ON mig.index_handle = mid.index_handle
ORDER BY migs_adv.index_adventage

Practica 2 | ADMINISTRACION DE BASE DE DATOS


P2 5701
ADMINISTRACION DE BASE DE DATOS | TECNOLOGICO DE
ESTUDIOS SUPERIORES DE ECATEPEC

Estadísticas de ejecución de consultas


Las DMV más frecuentemente usadas devuelven información acerca que se están ejecutando dentro de una
instancia.

Practica 2 | ADMINISTRACION DE BASE DE DATOS


P2 5701
ADMINISTRACION DE BASE DE DATOS | TECNOLOGICO DE
ESTUDIOS SUPERIORES DE ECATEPEC

Practica 2 | ADMINISTRACION DE BASE DE DATOS

También podría gustarte