Instituto Tecnológico Superior de Alvarado

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 19

Instituto Tecnológico Superior

De Alvarado
Ing. En Sistemas Computacionales

GRUPO: Único CUATRIMESTRE: 6º

PRESENTA: Alejandro Pérez García

CATEDRÁTICO: MCA. Alfonso Rosas


Escobedo

MATERIA: Lenguaje y Autómatas 2

____________________________________________
ALVARADO, VER.
28/03/2020

INTRODUCCIÓN
El espacio en disco es fundamental en las bases de datos para almacenar
grandes cantidades de datos de forma permanente.
Algunas de las razones por las cuales se almacenan las bases de datos en
memorias secundarias es por el gran tamaño de las bases de datos para ser
guardadas en la memoria principal.
Otra de las causas para utilizar la memoria secundaria es porque suele ser más
barata que la memoria primaria..
Los índices son objetos de esquema que son lógica y físicamente independiente
de los datos de los objetos con los que están asociados. Por lo tanto, un índice se
puede quitar o creado sin afectar físicamente a la tabla para el índice.
El algoritmo de ALTAS debe contemplar la comprobación de que el registro a dar
de alta no existe previamente. Una baja es la acción de eliminar un registro de un
archivo. La baja de un registro puede ser lógica o física. Una baja lógica supone el
no borrado del registro en el archivo.
Si se le cae un índice, las aplicaciones siguen funcionando. Sin embargo, el
acceso de los datos previamente indexado puede ser más lento.
Unidad 3.- Configuración y administración del espacio en
disco

3.1. Definición de espacio de Almacenamiento.

Las bases de datos suelen ser creadas para almacenar grandes cantidades de
datos de forma permanente. Por lo general, los datos almacenados en éstas
suelen ser consultados y actualizados constantemente.
La mayoría de las bases de datos se almacenan en las llamadas memorias
secundarias, especialmente discos duros, aunque, en principio, pueden emplearse
también discos ópticos, memorias flash, etc.
Las razones por las cuales las bases de datos se almacenan en memorias
secundarias son:
 En general, las bases de datos son demasiado grandes para entrar en la
memoria principal.
 La memoria secundaria suele ser más barata que la memoria primaria
(aunque esta última tiene mayor velocidad).
 La memoria secundaria es más útil para el almacenamiento de datos
permanentemente, puesto que la memoria primaria es volátil.
En cuanto al respaldo de las bases de datos, suelen emplearse tanto discos duros,
como cintas magnéticas, discos ópticos o similares.
Las técnicas empleadas para almacenar bases de datos son sumamente
importantes para la velocidad de acceso y recuperación de datos. Las técnicas
dependen del tipo de almacenamiento, el uso que se le da o se le dará a la base
de datos, la estructura de la misma, el SGBD empleado, etc.
Esta dependencia no significa necesariamente que haya que cambiar la estructura
de la base de datos si se cambian las técnicas empleadas. Las técnicas de
almacenamiento son independientes de la base de datos, pero, de todas maneras,
las mejores técnicas muchas veces pueden determinarse viendo la estructura de
la base de datos, entre otras características.
Los encargados de elegir estas técnicas son los diseñadores y administradores de
bases de datos, y dependen también de las capacidades del SGBD. En general, el
SGBD ofrece diferentes opciones y técnicas para organizar los datos.
La idea es que los encargados de la base de datos encuentren las técnicas
idóneas, o sea, aquellas que permitan la mayor velocidad posible de acceso a los
datos. Una mala decisión en esta área puede resultar en una menor velocidad de
acceso a la base de datos, o en un uso excesivo del espacio de almacenamiento,
o incluso, puede aumentar la velocidad de consulta de una base de datos, pero
disminuir la velocidad de actualización de la misma.

3.2 Definición y creación del espacio asignado para cada base de


datos.

Las bases de datos se almacenan en ficheros o archivos. Existen diferentes


formas de organizaciones primarias de archivos que determinan la forma en que
los registros de un archivo se colocan físicamente en el disco y, por lo tanto, cómo
se accede a éstos.
Las distintas formas de organizaciones primarias de archivos son:
1. Archivos de montículos (o no ordenados): esta técnica coloca los registros
en el disco sin un orden específico, añadiendo nuevos registros al final del
archivo.
2. Archivos ordenados (o secuenciales): mantiene el orden de los registros
con respecto a algún valor de algún campo (clave de ordenación).
3. Archivos de direccionamiento calculado: utilizan una función de
direccionamiento calculado aplicada a un campo específico para determinar
la colocación de los registros de disco.
4. Arboles B: se vale de la estructura de árbol para las colocaciones de
registros.
Existe una segunda forma de acceder a los datos llamada organización
secundaria o estructura de acceso auxiliar. Estas permiten que los accesos a los
registros de un archivo basado en campos alternativos, sean más eficientes que
los que han sido utilizados para la organización primaria de archivos.
El DBMS asigna espacio de almacenamiento a las bases de datos cuando los
usuarios introducen create database o alter database. El primero de los comandos
puede especificar uno o más dispositivos de base de datos, junto con la cantidad
de espacio en cada uno de ellos que será asignado a la nueva base de datos.
Si se utiliza la palabra clave default o se omite completamente la cláusula on , el
DBMS pone la base de datos en uno o más de los dispositivos predeterminados
de base de datos especificados en master..sysdevices
Para especificar un tamaño (en este ejemplo, 4MB) para una base de datos que
se va a almacenar en una ubicación predeterminada, utilice on default = size de
esta forma:
create database newpubs on default = 4
Para situar la base de datos en dispositivos específicos, dé el nombre del
dispositivo o dispositivos en que desea almacenarla. Como la sintaxis indica,
puede solicitar que se almacene en más de un dispositivo de base de datos, con
una cantidad de espacio diferente en cada uno. Todos los dispositivos
mencionados en create database deben estar enumerados en sysdevices .En
otras palabras, deben haberse inicializado con disk init .
La instrucción siguiente crea la base de datos newdb y asigna 3MB en mydata y
2MB en newdata . Como en el ejemplo anterior, la base de datos y el diario de
transacciones no se separan:
create database newdb on mydata = 3, newdata = 2

A menos que cree una base de datos pequeña o que no sea crucial, sitúe siempre
el diario en un dispositivo de base de datos aparte.
Si la cantidad de espacio solicitada a un dispositivo específico de base de datos
no está disponible, el DBMS crea la base de datos con tanto espacio como sea
posible en cada dispositivo y muestra un mensaje informando el espacio asignado
en cada uno. (Esto no se considera un error.) Si hay menos espacio del mínimo
necesario para una base de datos en el dispositivo especificado (o en el
predeterminado, si no se especifica un nombre), el comando create database falla.

3.3 Asignación de cuotas de espacio para usuarios

Por defecto ningún usuario tiene cuota en los Tablespaces y se tienen tres
opciones para poder proveer a un usuario de una cuota Sin límite, que permite al
usuario usar todo el espacio disponible de un Tablespace.
Por medio de un valor, que puede ser en kilobytes o megabytes que el usuario
puede usar. Este valor puede ser mayor o menor que el tamaño del Tablespace
asignado a él.
Por medio del privilegio UNLIMITED TABLESPACE, se tiene prioridad sobre
cualquier cuota dada en un Tablespace por lo que tienen disponibilidad de todo el
espacio incluyendo en SYSTEM y SYSAUX.
No se recomienda dar cuotas a los usuarios en los Tablespaces SYSTEM y
SYSAUX, pues tipicamente sólo los usuarios SYS y SYSTEM pueden crear
objetos en éstos. Tampoco dar cuotas en los Tablespaces Temporal o del tipo
Undo.

Ejemplo de la creación de usuario


CREATE USER nombre
IDENTIFIED BY contraseña
[DEFAULT TABLESPACE nombreTableSpace]
[TEMPORARY TABLESPACE nombreTemp]
[QUOTA INT {K|M} | UNLIMITED ON nombreTableSpace]
[PROFILE perfil]
[PASSWORD EXPIRE]
[ACCOUNT {LOCK | UNLOCK}]

CREATE USER: Nos permite especificar el nombre del usuario


IDENTIFIED BY: Nos permite especificar su contraseña
DEFAULT TABLESPACE: Definimos el tablespace por defecto. Si no se especifica
se asigna USERS. Para crear un nuevo tablespace.
TEMPORARY TABLESPACE: Definimos el tablespace temporal. Si no
especificamos ninguno se asigna TEMP.
QUOTA: Espacio que el usuario podrá utilizar en el sistema. Si no se especifica el
espacio por defecto es 0 con lo cual el usuario no podrá crear nada.
PROFILE: Permite especificar el perfil por defecto. Si no se especifica se asigna
DEFAULT. Es utilizado para controlar el acceso a los recursos, por ejemplo, el
número de sesiones concurrentes, uso de CPU, etc.
PASSWORD EXPIRE: Especifica que la contraseña asignada al usuario expirará,
de esta forma, el propio usuario o el DBA deberá asignar una nueva antes de
acceder al sistema.
ACCOUNT LOCK/UNLOCK: Podemos decidir si el usuario tendrá la cuenta
bloqueada o no de forma inicial.

3.4 Espacios para objetos de la base de datos.

Los DBMS se basan en archivos para almacenar datos, y estos archivos, o


conjuntos de datos, residen en medios de almacenamiento, o dispositivos. Una
buena parte del trabajo del DBA implicará la planificación para el almacenamiento
real de la base de datos.
Algunas tecnologías de almacenamiento son más adecuadas que otras. Sin
embargo, la naturaleza mecánica de la unidad de disco los hace más vulnerables
al fracaso de los componentes de otro equipo. Además, las formas en que las
unidades de disco son utilizados por las bases de datos pueden hacer que la
gestión del almacenamiento impredecibles, como la barra lateral "Modern DBMS
de uso de disco“ Puede usarse RAID para mejorar la seguridad de los datos.

El rendimiento de la base de datos depende de la entrada y salida a disco. La


cantidad de datos almacenados es mayor que nunca antes, y los datos se
almacenados por más tiempo.

Algunos DBMS permiten al tamaño de los archivos temporales de expandirse y


contraerse de forma automática. Dependiendo del tipo y la naturaleza de las
operaciones de base de datos en proceso, esta fluctuación puede provocar picos
de uso del disco.

El crecimiento de la capacidad de almacenamiento aumenta aún más la


complejidad de la gestión de datos y bases de datos. Muchas organizaciones
están implementando nuevas tecnologías de almacenamiento, tales como
almacenamiento en red (NAS) y redes de área de almacenamiento (SAN), para
ayudar a controlar la cantidad cada vez mayor de almacenamiento necesario para
los usos modernos. La gestión del almacenamiento en el entorno dinámico de hoy
es una tarea difícil DBA.

Hay muchos problemas de almacenamiento que deben ser resueltos antes de que
un DBA pueda crear una base de datos. Uno de los temas más importantes es la
cantidad de espacio para permitir la base de datos.
El cálculo espacial debe tener en cuenta no sólo tablas, índices, sino también, y
dependiendo del DBMS, el registro de transacciones. Cada una de estas
entidades probablemente requerirá un archivo separado o conjunto de datos, para
el almacenamiento persistente.

El DBA debe separar en diferentes discos a los archivos para:

 Mejorar el rendimiento
 Separar índices de datos
 Aislar los logros en otro disco
3.5 Roles

Finalmente, los Roles, que son simplemente un conjunto de privilegios que se


pueden otorgar a un usuario o a otro Rol. De esa forma se simplifica el trabajo del
DBA en esta tarea.
Por default cuando creamos un usuario desde el Enterprise Manager se le asigna
el permiso de connect, lo que permite al usuario conectarse a la BD y crear sus
propios objetos en su propio esquema. De otra manera, debemos asignarlos en
forma manual.

Para crear un Rol y asignarlo a un usuario se hace de la siguiente manera:


SQL> CREATE ROLE appl_dba;
Opcionalmente, se puede asignar una clave al Rol:
SQL> SET ROLE appl_dba IDENTIFIED BY app_pwd;
Para asignar este Rol a un usuario:
SQL> GRANT appl_dba TO jperez;
Otro uso común de los roles es asignarle privilegios a nivel de Objetos, por
ejemplo, en una Tabla de Facturas en donde sólo queremos que se puedan hacer
Querys e Inserts:
SQL> CREATE ROLE consulta;
SQL> GRANT SELECT,INSERT on analista.factura TO consulta;
Y finalmente asignamos ese rol con este “perfil” a distintos usuarios finales:
SQL> GRANT consulta TO ahernandez;

Nota: Existen algunos roles predefinidos, tales como:


CONNECT, CREATE SESSION, CREATE TABLE, CREATE VIEW, CREATE
SYNONYM, CREATE SEQUENCE, CREATE DATABASE LINK, CREATE
CLUSTER,
ALTER SESSION, RESOURCE, CREATE PROCEDURE, CREATE SEQUENCE,
CREATE TRIGGER, CREATE TYPE, CREATE CLUSTER, CREATE INDEXTYPE,
CREATE OPERATOR SCHEDULER, CREATE ANY JOB, CREATE JOB,
EXECUTE ANY CLASS, EXECUTE ANY PROGRAM, MANAGE SCHEDULER,
etc.
DBA: Tiene la mayoría de los privilegios, no es recomendable asignarlo a usuarios
que no son administradores.
SELECT_CATALOG_ROLE: No tiene privilegios de sistema, pero tiene cerca de
1600 privilegios de objeto.
Para consultar los roles definidos y los privilegios otorgados a través de ellos,
utilice las vistas:
SQL> select * from DBA_ROLES;
SQL> select * from DBA_ROLE_PRIVS order by GRANTEE;

Importancia al momento de crear una base de datos


Es importante que a la hora de crear una BD el DBA configure y asigne el espacio
de disco que ocupara la BD para que así no haya complicaciones en caso de que
la cantidad de información almacenada sea en volumen muy grande y llegara a
faltar espacio en el disco para ese volumen de información, así como la
importancia de tener bien administrada la BD ya que de no ser así pueden existir
errores que causarían el colapso de dicha BD.

Porque el administrador debe contemplar la configuración y administración


del espacio
El DBA debe de contemplar estos aspectos ya que de lo contrario no estaría bien
el BD ya que no se tiene considerado el espacio de disco que se ocupara y en
dado caso que se requiera más espacio no se podría tener más espacio ya que en
un principio no se consideró ni la configuración ni la administración del espacio en
disco, se tendría que volver a generar un BD con las especificaciones necesarios
para empresa causando pérdidas de dinero y tiempo para dicha empresa.
Unidad 4.- Operación y mantenimiento

4.1 Archivos log del SGBD

Cuando trabajas frente al ordenador, navegas en tu tablet u operas una página


web desde un servidor, tienen lugar numerosos procesos que pasan inadvertidos
ante cualquier usuario. En caso de que se presenten problemas, se produzcan
errores o quieras conocer exactamente qué acciones ejecutan los sistemas
operativos o los diferentes programas o servicios, puedes acceder a los llamados
archivos log, en español ficheros de registro. Estos “logs” son gestionados por
prácticamente todas las aplicaciones, servidores, bases de datos y sistemas de
manera automática y permiten controlar (de forma centralizada) todos los
procesos relevantes.
En general, los ficheros log no suelen evaluarse frecuentemente, pues cumplen
una función similar a la de un registrador de vuelo que es inspeccionado solo en
caso de emergencia. Como consecuencia del registro detallado de datos de los
logs, estos son una fuente primordial a la hora de analizar errores de programa o
del sistema, así como para determinar el comportamiento de los usuarios. Esto no
solo resulta interesante para los fabricantes de software, sino también para
propietarios de páginas web, quienes pueden acceder a información interesante
desde los archivos de registro del servidor web.

4.2 Definición de los modos de operación de un SGBD (alta, baja,


recovery) y comandos de activación

La vida de todo archivo comienza cuando se crea y acaba cuando se borra.


Durante su existencia es objeto de constante procesamiento, que con mucha
frecuencia incluye acciones de consulta o búsqueda y de actualización. En el caso
de la estructura archivos, entenderemos como actualización, además de las
operaciones, vistas para vectores y listas enlazadas, de introducir nuevos datos
(altas) o de eliminar alguno existente (bajas), la modificación de datos ya
existentes, (operación muy común con datos almacenados). En esencia, es la
puesta al día de los datos del archivo.
Una operación de alta en un archivo consiste en la adición de un nuevo registro.
En un archivo de empleados, un alta consistirá en introducir los datos de un nuevo
empleado. Para situar correctamente un alta, se deberá conocer la posición donde
se desea almacenar el registro correspondiente: al principio, en el interior o al final
de un archivo.
El algoritmo de ALTAS debe contemplar la comprobación de que el registro a dar
de alta no existe previamente. Una baja es la acción de eliminar un registro de un
archivo. La baja de un registro puede ser lógica o física. Una baja lógica supone el
no borrado del registro en el archivo. Esta baja lógica se manifiesta en un
determinado campo del registro con una bandera, indicador o “flag” -carácter *. $,
etc.,-, o bien con la escritura o rellenado de espacios en blanco en el registro dado
de baja
Altas
La operación de dar de alta un determinado registro es similar a la de añadir datos
a un archivo. Es importante remarcar que en un archivo secuencial sólo permite
añadir datos al final del mismo.
En otro caso, si se quiere insertar un registro en medio de los ya presentes en el
archivo, sería necesaria la creación nueva del archivo.
El algoritmo para dar de alta un registro al final del fichero es como sigue:
algoritmo altas
leer registro de alta
inicio
abrir archivo para añadir
mientras haya más registros hacer {algunos lenguajes ahorran este bucle}
leer datos del registro
fin_mientras
escribir (grabar) registro de alta en el archivo
cerrar archivo
fin
Bajas
Existen dos métodos para dar de baja a un registro en un archivo secuencial,
donde no es fácil eliminar un registro situado en el interior de una secuencia: Para
ello podemos seguir dos métodos:
1) Utilizar y por tanto crear un segundo archivo auxiliar transitorio, también
secuencial, copia del que se trata de actualizar. Se lee el archivo completo registro
a registro y en función de su lectura se decide si el registro se debe dar de baja o
no. En caso afirmativo, se omite la escritura en el archivo auxiliar. Si el registro no
se va a dar de baja, este registro se reescribe en el archivo auxiliar
Tras terminar la lectura del archivo original, se tendrán dos archivos: original (o
maestro) y auxiliar. El proceso de bajas del archivo concluye borrando el archivo
original y cambiando el nombre del archivo auxiliar por el del inicial.
2) Guardar o señalar los registros que se desean dar de baja con un indicador o
bandera que se guarda en un array; de esta forma los registros no son borrados
físicamente, sino que son considerados como inexistentes.
Inevitablemente, cada cierto tiempo, habrá que crear un nuevo archivo secuencial
con el mismo nombre, en el que los registros marcados no se grabarán.
Propósito de Backup y Recuperación
Como administrador de copia de seguridad, la tarea principal es diseñar,
implementar y gestionar una estrategia de backup y recuperación. En general, el
propósito de una estrategia de recuperación de copia de seguridad y es para
proteger la base de datos contra la pérdida de datos y reconstruir la base de datos
después de la pérdida de datos. Normalmente, las tareas de administración de
seguridad son las siguientes:
 Planificación y probar las respuestas a diferentes tipos de fallas.
 Configuración del entorno de base de datos de copia de seguridad y
recuperación.
 La creación de un programa de copia de seguridad
 Seguimiento de la copia de seguridad y entorno de recuperación
 Solución de problemas de copia de seguridad
 Para recuperarse de la pérdida de datos en caso de necesidad
Como administrador de copia de seguridad, es posible que se le pida que realice
otros deberes que se relacionan con copia de seguridad y recuperación:
 La preservación de datos, lo que implica la creación de una copia de base
de datos para el almacenamiento a largo plazo
 La transferencia de datos, lo que implica el movimiento de datos de una
base de datos o un host a otro.
De Protección de Datos
Como administrador de copia de seguridad, su trabajo principal es hacer copias de
seguridad y vigilancia para la protección de datos. Una copia de seguridad es una
copia de los datos de una base de datos que se puede utilizar para reconstruir los
datos. Una copia de seguridad puede ser una copia de seguridad física o una
copia de seguridad lógica.
Copias de seguridad físicas son copias de los archivos físicos utilizados en el
almacenamiento y la recuperación de una base de datos. Estos archivos incluyen
archivos de datos, archivos de control y los registros de rehacer archivados. En
última instancia, cada copia de seguridad física es una copia de los archivos que
almacenan información de base de datos a otra ubicación, ya sea en un disco o en
medios de almacenamiento fuera de línea, tales como cinta.
Copias de seguridad lógicas contienen datos lógicos, como tablas y
procedimientos almacenados. Puede utilizar Oracle Data Pump para exportar los
datos a archivos lógicos binarios, que posteriormente puede importar a la base de
datos. Clientes de línea de comandos La bomba datos expdp y impdp utilizan el
DBMS_DATAPUMP y DBMS_METADATA PL / SQL paquetes.
Copias de seguridad físicas son la base de cualquier estrategia de recuperación
de copia de seguridad sólida y. Copias de seguridad lógicas son un complemento
útil de las copias de seguridad físicas en muchas circunstancias, pero no son
suficiente protección contra la pérdida de datos y sin respaldos físicos.
A menos que se especifique lo contrario, la copia de seguridad término tal como
se utiliza en la copia de seguridad y la documentación de recuperación se refiere a
una copia de seguridad física. Copia de seguridad de una base de datos es el acto
de hacer una copia de seguridad física. El enfoque en la copia de seguridad y
recuperación de documentación está casi exclusivamente en copias de seguridad
físicas.
Comando STARTUP
Para el arranque de una base de datos hay tres fases de arranque, para realizar
estas fases podemos utilizar startup más un comando, las tres fases son las
siguientes:
Fase de no Montaje: se leen los parámetros del sistema, se inician las
estructuras de memoria y los procesos de segundo plano. La instancia se arranca
sin asociarla a la base de datos. Normalmente se utiliza cuando se modifica o se
necesita crear el archivo de control: startup nomount ;
Fase de Montaje: se asocia la instancia con la base de datos. Se usa el archivo
de parámetros para localizar los archivos de control, que contienen el nombre de
los archivos de datos y los registros rehacer. Los archivos de datos y los registros
de rehacer no están abiertos, así que no son accesibles por usuarios finales para
tareas normales. Para realizar esta fase se pueden utilizar dos comandos:
startup mount;
alter database mount;
Fase de Apertura: se abren los archivos de datos y los registros rehacer. La base
de datos queda disponible para las operaciones normales. Es necesario que
existan registros rehacer de lo contrario si no hay registros usamos el comando
resetlogs, que crea registros nuevos. Para esta fase se pueden usar dos
comandos:
startup open;
alter database open;

Si es necesario utilizar resetlogs:


startup open resetlogs;
alter database open resetlogs;
startup restrict (sólo permite la conexión de usuarios con el privilegio restricted
sesion).
startup force (hace shutdown abort y arranca la BD).
Comando SHUTDOWN
El comando SHUTDOWN lo utilizamos parar una base de datos la cual consiste
en varias cláusulas.
Shutdown Normal: Este es el valor por defecto, durante el proceso de parada no
admite nuevas conexiones y espera que las conexiones actuales finalicen. En el
próximo arranque la base datos no requiere procedimientos de recuperación.
Shutdown Immediate: Se produce una parada inmediata de la base de datos,
durante el proceso de parada no permite nuevas conexiones y las actuales la
desconecta, las transacciones que no estén commit se hara roolback de ellas. En
el próximo arranque la base datos no requiere procedimientos de recuperación.
Shutdown Transactional: Se produce una parada hasta que hayan terminado las
transacciones activas, no admite nuevas conexiones y tampoco nuevas
transacciones, una vez que las transacciones activas van terminando va
desconectando a los usuarios. En el próximo arranque la base datos no requiere
procedimientos de recuperación.
Shutdown Abort: Aborta todos los procesos de una base de datos, durante el
proceso de parada no permite nuevas conexiones y las actuales la desconecta, las
transacciones que no estén commit se hará roolback de ellas. En el próximo
arranque la base datos puede requerir procedimientos de recuperación.
Comando Describe
Este comando permite conocer la estructura de una tabla, las columnas que la
forman y su tipo y restricciones.
DESCRIBE f1;
Comando SHOW TABLES y SHOW CREATE TABLE
El comando SHOW TABLES muestra las tablas dentro de una base de datos y
SHOW CREATE TABLES muestra la estructura de creación de la tabla.

Modificación
Para realizar una modificación utilizamos el comando ALTER TABLE. Para usar
ALTER TABLE, necesita permisos ALTER, INSERT y CREATE para la tabla.

4.3 Índices, reorganización y reconstrucción

El índice de una base de datos es una estructura alternativa de los datos en una
tabla. El propósito de los índices es acelerar el acceso a los datos mediante
operaciones físicas más rápidas y efectivas. En pocas palabras, se mejoran las
operaciones gracias a un aumento de la velocidad, permitiendo un rápido acceso a
los registros de una tabla en una base de datos. Existen diferentes tipos de índices
algunos de ellos son:
Ø Índices agrupados: definen el orden en que almacenan las filas de la tabla
(nodos hoja/página de datos de la imagen anterior). La clave del índice agrupado
es el elemento clave para esta ordenación; el índice agrupado se implementa
como una estructura de árbol b que ayuda a que la recuperación de las filas a
partir de los valores de las claves del índice agrupado sea más rápida. Debemos
tener en cuenta:Columnas selectivas, columnas afectadas en consultas, Columnas
accedidas "secuencialmente", Columnas implicadas en JOIN, GROUP BY y el
Acceso muy rápido a filas: lookups
Ø Índices no agrupados: tienen la misma estructura de árbol b que los índices
agrupados, con algunos matices; como hemos visto antes, en los índices
agrupados, en el último nivel del índice (nivel de hoja) están los datos; en los
índices no-agrupados, en el nivel de hoja del índice, hay un puntero a la
localización física de la fila correspondiente en el índice agrupado.
Ø Índices compuestos: es un índice de varias columnas de una tabla. Las
columnas de un índice compuesto que deben aparecer en el orden que tenga más
sentido para las consultas que recuperar datos y no necesita ser adyacente en la
tabla.
Ø índices descendientes: Este tipo de índice almacena los datos en una columna
o columnas de concreto en orden descendente.
Reorganización de índices
Un factor clave para conseguir una E/S de disco mínima para todas las consultas
de bases de datos es asegurarse de que se creen y se mantengan buenos
índices. Un paquete puede usar la tarea Reorganizar índice para reorganizar los
índices de una base de datos individual o de varias bases de datos.
La tarea Reorganizar índice encapsula la instrucción ALTER INDEX de Transact-
SQL. Si elige compactar datos de objetos grandes, la instrucción utiliza la cláusula
REORGANIZE WITH (LOB_COMPACTION = ON); en caso contrario, se establece
LOB_COMPACTION en OFF.
Fragmentación de los Índices
La fragmentación es consecuencia de los procesos de modificación de los datos
(instrucciones INSERT, UPDATE y DELETE) efectuados en la tabla y en los
índices definidos en la tabla.
Detección de Fragmentación
El primer paso para decidir qué método de desfragmentación se va a utilizar
consiste en analizar el índice para determinar el nivel de fragmentación. Si se usa
la función del sistema sys.dm_db_index_physical_stats, se puede detectar la
fragmentación de los índices de la base de datos thuban-homologada.
Reconstrucción de índices
Se debe examinar y determinar qué índices son susceptibles de ser reconstruidos.
Cuando un índice está descompensado puede ser porque algunas partes de éste
han sido accedidas con mayor frecuencia que otras.
Blevel (branch level) es parte del formato del B-tree del índice e indica el número
de veces que Oracle ha tenido que reducir la búsqueda en ese índice. Si este
valor está por encima de 4 el índice deberá de ser reconstruido.
ALTER INDEX <index_name> REBUILD;
Para reconstruir una partición de un índice podríamos hacer los siguientes:
ALTER INDEX <index_name> REBUILD PARTITION <nb_partition>
NOLOGGING;
Comando ALTER INDEX
Como hemos comentado esta sentencia se utiliza para cambiar o reconstruir un
Índice existente en la base de datos. Para reconstruir un Índice bastaría con lazar
la siguiente sentencia: ALTER INDEX REBUILD;
Bibliografía:
https://proyecto359.webnode.mx/unidad3/
http://itpn.mx/recursosisc/6semestre/administraciondebasesdedatos/Unidad
%20III.pdf
https://sites.google.com/site/itjabd23/home/asignatura/plan-de-estudios/unidad-3-
configuracion-y-administracion-del-espacio-en-disco
https://sites.google.com/site/201608abd02/unidad-3
http://dbagroup.cl/usuarios-y-privilegios-en-oracle/
https://docs.google.com/viewer?
a=v&pid=sites&srcid=ZGVmYXVsdGRvbWFpbnwyMDE2MDhhYmQwMnxneDo3Yj
VkZTU1ZGJlMzM1Zjk1
https://sites.google.com/site/itjabd23/home/asignatura/plan-de-estudios/unidad-4-
operacion-y-mantenibilidad
http://administrasiondebasededatos123456789.blogspot.com/2017/06/41-archivos-
log-del-sgbd.html
http://administrasiondebasededatos123456789.blogspot.com/2017/06/42-
definicion-de-los-modos-de-operacion.html
http://administrasiondebasededatos123456789.blogspot.com/2017/06/43-indices-
reorganizacion-y.html

También podría gustarte