Escolar Documentos
Profissional Documentos
Cultura Documentos
N° DE FICHA 1881788
SENA
2019
INTRODUCCIÓN
El rendimiento de un servidor. Una supervisión eficaz implica tomar instantáneas
periódicas del rendimiento actual para aislar procesos que causan problemas y
recopilar datos de forma continua a lo largo del tiempo para realizar el seguimiento
de las tendencias de rendimiento. Microsoft SQL Server y el sistema operativo
Microsoft Windows 2008 R2 proporcionan herramientas que le permiten ver las
condiciones actuales de la base de datos y realizar un seguimiento del rendimiento
a medida que éstas cambian. El objetivo de supervisar Bases de Datos, es evaluar
el rendimiento de un Sistema Manejador de Base de Datos (SMBD), para responder
a las transacciones realizadas por los usuarios que solicitan datos a través de un
Sistema Computacional.
La Evaluación de una Base de Datos, es una de las tareas más importantes de un
Administrador de Base de Datos. Este profesional es el encargado de analizar
constantemente el funcionamiento del SMBD, para optimizar el uso de los recursos,
como CPU, Memoria, Disco y Red, para ver su desempeño. El análisis constante
de un SMBD, permite ver su desempeño en todo momento. Si se detecta que las
transacciones no son respondidas con la rapidez que se necesita o se pierden
datos, el Administrador de la Base de Datos, debe aplicar las medidas correctivas
para solucionar las fallas, analizando su comportamiento a través de herramientas
gráficas provistas por el fabricante de la aplicación.
La estructura del informe está organizada de la siguiente forma: Supervisión de un
Sistema Administrador de Base de Datos. Explica es el objetivo de supervisar un
Sistema Administrador de Base de Datos, como optimizar la supervisión y que
herramientas se pueden utilizar para analizar su funcionamiento. Para la detección
de fallas en el funcionamiento de un Sistema Administrador de Base de Datos, se
entregan recomendaciones para encontrar donde se encuentra la falla, identificando
donde se generan cuellos de botellas o alta demanda de un recurso como CPU,
Memoria, Disco o Red. Se detallan las herramientas de supervisión que nos provee
Microsoft.
1. Manejo de transacciones, bloqueos y control de concurrencia de la practica
(laboratorio 10_ base datos)
Desarrollar puntos laboratorio 10:
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.
R/ el resultado es:
4.2.3. Que sucede al hacer una consulta de todos los datos de la tabla EPS si
anteriormente se ejecuta el siguiente comando:
BEGIN TRANSACTION INSERT
INTO EPS (ideps, nombre, estadoeps)
VALUES (15,’confisena’,1) '
Para la cancelación de la transacción anterior ¿qué comando se debe utilizar?.
R/ sale un error: Cannot insert explicit value for identity column in table 'EPS' when
IDENTITY_INSERT is set to OFF.
Esto ocurre porque sql server no permite insertar datos a llaves primarias de forma
normal:
hay utilizar el comando, para que deje insertar datos de forma de inserción explicita
en la tabla a una pk: el comando a utilizar es: SET IDENTITY_INSERT EPS
Ejemplo:
BEGIN TRANSACTION
SET IDENTITY_INSERT EPS ON
INSERT INTO EPS (ideps, nombre, estadoeps)
VALUES (15,'confisena',1)
4.2.4. Que le falta a la siguiente transacción para que se efectúen los cambios en la
base de datos Secretaria de Salud.
BEGIN TRANSACTION
INSERT INTO persona (idPersona, tipoidentificacion, nombre, apellido,
fechaNacimiento, sexo)
VALUES (1112548, 1, 'Pedro', 'Garcia', 1982-01-27, 'M');
INSERT INTO EPS (nombre, estadoeps)
VALUES ('confinacional',4);
BEGIN TRANSACTION
SET IDENTITY_INSERT EPS ON
INSERT INTO Persona (idPersona, tipoidentificacion, nombre,
apellido, fechaNacimiento, sexo)
VALUES (111245548, 1, 'Pedro', 'Garcia', 1982-01-27, 'M')
INSERT INTO EPS (ideps, nombre, estadoeps)
VALUES (16,'confiacional',4)
Transacciones explícitas
Por el contrario, las Transacciones explícitas son las que se define en el código T-
SQL. Hay que indicar cuando se inician (BEGIN TRANSACTION) y cuando finalizan
(COMMIT TRANSACTION), y pueden albergar un conjunto de instrucciones dentro
de la misma transacción.
Cuando se produce el COMMIT, se hacen efectivos los cambios en los ficheros de
datos (.mdf y .ndf). Mientras no se realiza el COMMIT las sentencias de los cambios
se guardan en el log de transacciones (.log), que gracias a este es posible revertir
los cambios si fuese necesario..
Automática
Es el modo de administración de transacciones predeterminado de SQL Server
Database Engine (Motor de base de datos de SQL Server). Cada instrucción
Transact-SQL se confirma o se revierte cuando finaliza. Si una instrucción termina
correctamente, se confirma; si encuentra un error, se revierte.
Una conexión a una instancia de Motor de base de datos funciona en modo de
confirmación automática siempre que no se suplante el modo predeterminado
mediante transacciones explícitas o implícitas.
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.
4.3. Bloqueos.
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.
2.0 Concurrencia, transacciones, accesos y bloqueos. Manejo de Jmetter.
2.1 Tipos de Concurrencia de Transacciones
Optimista: Deja realizar modificaciones de los datos y se persisten (commitado).
Cuando se van a persistir se verifica que no se han modificado por otras
transacciones simultáneamente; en cuyo caso produce un error.
Pesimista: Para los datos modificados, realizar un bloqueo de los mismos.
Impendiendo que otras transacciones realicen cambios de esos datos.
2.2 Tipos de Nivel de Aislamiento de Transacción
READ UNCOMMITTED: Leen valores modificados por otras transacciones no
persisitidos (commitados).
READ COMMITTED: No dejan leer valores modificados por otras transacciones
no persisitidos (commitados). READ COMMITTED al releer datos que se han
comitado por otra transacción durante la ejecución de la propia; obtiene valores
diferentes.
READ_COMMITTED_SNAPSHOT: Evita el problema del READ COMMITED.
Crea un estado en la base de datos; de esta manera la transacción lee los datos
referidos a ese estado. No impide que otras transacciones modifiquen los datos
leidos por la nuestra.
REPEATABLE READ: Evita el problema del READ COMMITED. REPEATABLE
READ evita que otra transacción modifique los datos modificados por nuestra
transacción. Dado que los datos leídos; pueden depender de lo realizado en la otra
transacción.
SERIALIZABLE: REPEATABLE READ que además se extiende para inserciones.
Otra grafica tipo spline que permite ver en una secuencia mas lineal, la concurrencia
de las transacciones medidas por el Jmeter.