Está en la página 1de 32

2019

LABORATORIO No.7
CONCURRENCIA Y BLOQUEOS DEL SMBD SQL SERVER
KAREN TATIANA HERNÁNDEZ
JOSÉ LUIS HERNÁNDEZ LOZANO
ANDREA KATHERINE HERNÁNDEZ LOZANO
LABORATORIO 7
4.1. Actividad actual de SQL Server.

Utilice SQL Server Management Studio para ver la siguiente información acerca de la actividad
actual de SQL Server.

4.1.1 Conexiones de usuario y bloqueos actuales.

4.1.2 Numero de procesos, estado, bloqueos y comandos.


4.1.2 En esta etapa se consultó si están corriendo las tres bases de datos.

4.1.3. Monitor de actividad


4.1.4. Informe de todas las transacciones de bloqueo.
4.2.1. MANEJO DE TRANSACCIONES

Elaborar 2 transacciones diferentes insertando, actualizando o eliminando registro de esta base


de datos, todas estas transacciones deben quedar abiertas, tomar impresione de pantalla de la
consulta de la variable que almacena las transacciones activas y copiar el código de las 2
transacciones como evidencia.

- No hay transacciones activas, todas se ejecutaron.


- Modelos de Transacciones.

TRANSACCIONES INSERT.

- Inserción de nuevo registro a EstadoEPS ‘ANDREA’


- Evidencia nuevo registro agregado. ‘ANDREA’

- Evidencia nuevo registro agregado a EPS. ‘DORADO’


TRANSACCIONES UPDATE

- Actualización de nombre

- Actualizaciones procesadas correctamente.


TRANSACCIONES DELETE

- Borrar Id=7 en EstadoEPS


- Evidencia registo IdEstadoEPS = 7

- Evidencia eliminación de registro IdEstadoEPS = 7


DELETE # 2

- Borrar EPS=16

- Evidencia eliminación
TRANSACCIONES ACTIVAS

- No hay transacciones activas

TRANSACCIONES ACTIVAS CON COMMIT


4.2.2. Abrir una consulta nueva en SQL Server 2008 R2 y escribir el siguiente comando COMMIT
TRANSACTION y verificar de nuevo la cantidad de transacciones activas y determinar que hace
este comando en la base de datos SecSalud.

4.2.3. Que sucede al hacer una consulta de todos los datos de la tabla EPS si anteriormente se
ejecuta el siguiente comando.
 Para insertar un valor en un campo clave de la tabla, se debe primero deshabilitar la
opción.
 Tras ejecutar el comando referenciado, se agrega una fila completa de datos a la tabla.
 Para la cancelación del comando anterior se debe usar el comando Rollback
transactions.

4.2.4. ¿Qué le falta a la siguiente transacción para que se efectúen los cambios en la base de
datos Secretaria de Salud?
Respuesta:

 Correcciones de comillas
 Corrección de nombre de la tabla en el script ‘tipoindetificacion’
 Habilitar la tabla EPS para modificaciones
 COMMIT TRANSACTION para finalizar la transacción

4.2.5. En el siguiente cuadro especificar para cada tipo de transacción si es implícita, explicita o
automática.

SCRIP TIPO DE TRANSACCIÓN


BEGIN TRANSACTION INSERT INTO TRANSACCIÓN EXPLICITA
CLIENTE (CEDULA, NOMBRE) VALUES
(1,’SENA’) COMMIT TRANSACTION
INSERT INTO CLIENTE (CEDULA, NOMBRE) TRANSACCION AUTOMATICA
VALUES (1,’SENA’)
INSERT INTO CLIENTE (CEDULA, NOMBRE) TRANSACCION IMPLICITA
VALUES (1,’SENA’) COMMIT TRANSACTION
4.3. Bloqueos.

4.3.1. Abra una nueva consulta.

Use la base de datos Secretaria de Salud En una nueva consulta ejecute sp_lock y revise los
resultados.

Abra informe de transacciones de bloqueo para verificar que no hay ningún bloqueo activo.
Clic derecho en su bd -> informe -> informe estándar -> Todas las transacciones de bloqueo.
4.3.2. Analizar el siguiente script.

Al ejecutar este script tener abierta las siguientes consultas: SELECT * FROM EPS
INFORME DE TODAS LAS TRANSACCIONES

INFORME DE TODAS LAS TRANSACCIONES DE BLOQUEO


SP_LOCK

¿Qué pasa con cada consulta? ¿Hay errores? Si es así, ¿Cómo se solucionarían?

- EL error se corrige con el comando Rollback transaction.

3.3 Ahora ejecute 3 transacciones diferentes de lectura y escritura.

3.3.1 transacción de solo lectura.


3.3.2. transacción de escritura de la tabla EPS.

- Nueva EPS agregada.


3.3.3. escritura y lectura de la tabla PERSONA

- Nueva persona agregada – Andrea Hernández


- Actualización de registro – cambio de nombre a Xiomara Duran.

- Cambio ejecutado.

Genere un informe de transacciones, bloqueos y ejecute el procedimiento sp_lock con las


siguientes consultas:
SELECT * FROM EPS SELECT * FROM Persona

HALLAZGOS

- En cada uno de los script faltaba finalizar la transacción con ROLLBACK, por lo cual
presentaban bloqueos.
INFORME DE TRANSACCIONES DE BLOQUEO

INFORME DE TRANSACCIONES
CORRECIÓN SCRIPT

USE SecSalud
BEGIN TRANSACTION
insert into EstadoEPS values ('TATIANA')
insert into EPS values ('QUINDIO',4)

USE SecSalud
BEGIN TRANSACTION
insert into Persona (idpersona,tipoidentificacion,nombre,
apellido,fechaNacimiento,sexo)
values (101,4,'ANDREA','HERNANDEZ',1990-09-11,'F')

use SecSalud
BEGIN TRANSACTION
update Persona set nombre='XIOMARA' where idPersona=100 -- actualizacion

USE SecSalud
BEGIN TRANSACTION
SELECT * FROM EstadoEPS

ROLLBACK TRANSACTION
VERIFICACION CON EL COMANDO

ANÁLISIS: Tras ejecutar las transacciones sin el ROLLBACK presenta bloqueo permanente.
JMETER
RESULTADOS DE LOS PLANES DE PRUEBAS

Se crean 11 planes de prueba con los requerimientos establecidos por el laboratorio

1. Plan de pruebas Nº1 (10 Hilos, 10 Segundos de subida, 5 peticiones)

2. Plan de pruebas # 2 (25 Hilos, 10 Segundos de Subida, 5 peticiones)


3. Plan de pruebas # 3 (50 Hilos, 10 Segundos de Subida, 5 peticiones)

4. Plan de pruebas # 4 (100 Hilos, 10 Segundos de Subida, 5 peticiones)


5. Plan de pruebas # 5 (250 Hilos, 10 Segundos de Subida, 5 peticiones)

6. Plan de pruebas # 6 (500 Hilos, 10 Segundos de Subida, 5 peticiones)


7. Plan de pruebas # 7 (1000 Hilos, 10 Segundos de Subida, 5 peticiones)

8. Plan de pruebas # 8 (1500 Hilos, 10 Segundos de Subida, 5 peticiones)


9. Plan de pruebas # 9 (2000 Hilos, 10 Segundos de Subida, 5 peticiones)

10. Plan de pruebas # 10 (3000 Hilos, 10 Segundos de Subida, 5 peticiones)


11. Plan de pruebas # 11 (4000 Hilos, 10 Segundos de Subida, 5 peticiones)

TABLA DE RESULTADOS
Plan Nº Periodo Nº de Nº de Desviación Rendimiento Media Mediana
de de de peticiones muestra / minuto
prueba hilos subida
en (s)
1 10 10 5 30 52548 3,958 69279 63961
2 25 10 5 75 53164 10,073 65679 57311
3 50 10 5 150 52882 19,8 70102 66088
4 100 10 5 300 53330 39,658 68018 62464
5 250 10 5 750 53147 98,942 68710 63964
6 500 10 5 1500 53214 197,893 69007 64817
7 1000 10 5 3000 53464 395,825 69522 65224
8 1500 10 5 4500 54406 594,071 71507 67531
9 2000 10 5 6000 54548 792,335 72505 68877
10 3000 10 5 9000 56899 1.189,931 76115 74078
11 4000 10 5 12000 52563 1.571,586 74102 71104

También podría gustarte