2.1 Características del DBMS
Los sistemas de administración de bases de datos son usados para:
Algunas de sus características son:
|
2.1.1 Estructura de Memoria y Procesos de la Instancia
- Código del programa
- Información acerca de una sesión conectada, incluso si no se encuentra activa.
- Información necesaria durante la ejecución del programa(por ejemplo, el estado de las consultas)
- La información que comparten y con la cual se comunican los procesos Oracle (por ejemplo, la información de bloqueo)
- La Caché de Datos
La memoria se puede estructurar en las siguientes partes:
- Área Global del sistema (SGA), la cual se comparte entre todos los servidores y los procesos en segundo plano.
- Áreas globales de programas (PGA), que es privada para cada servidor y proceso en segundo planos; a cada proceso se asigna un PGA.
- Área de Ordenaciones (Sort Areas).
- Memoria Virtual
- Área de código de Software (SCA).
Estructura de la memoria en Oracle
El Área Global del Sistema (SGA) es un grupo de estructuras de la memoria compartida que contiene datos e información de control de una instancia de una BD. Si varios usuarios se conectan de forma concurrente a la misma instancia, entonces los datos se comparten en el SGA, por lo que también se llama shared global area.
Una instancia en Oracle se compone de un SGA y de procesos. Cuando se crea una instancia, Oracle asigna memoria a un SGA automáticamente y esta se devuelve al sistema operativo cuando la instancia se cierra. Por tanto, cada instancia posee su propio SGA.
Además, es de lectura/escritura. Todos los usuarios conectados a una instancia multiproceso pueden leer la información contenida en el SGA de la instancia y varios procesos pueden escribir en él durante la ejecución.
Una parte del SGA contiene información general acerca del estado de la base de datos y de la instancia, a la que los procesos en segundo plano necesitan acceder (SGA fija), pero no se almacenan los datos de usuario. El SGA también incluye información de comunicación entre procesos, como la información de bloqueos. Además, si el sistema usa una arquitectura de servidor compartido, entonces las colas de petición y respuesta y algunos contenidos del PGA se encuentran en el SGA.
2.1.2 Estructuras físicas de la base de datos
En una base de datos almacenamos información relevante para nuestro negocio u organización y desde el punto de vista físico, la base de datos está conformada por dos tipos de archivos:- Archivos de datos: contiene los datos de la base de datos internamente, está compuesto por páginas enumeradas secuencialmente que representa la unidad mínima de almacenamiento. Cada página tiene un tamaño de 8kb de información. Existen diferentes tipos de páginas, a tener en cuenta:
- Páginas de datos: es el tipo principal de páginas y son las que almacenan los registros de datos.
- Páginas de espacio libre (PFS Page Free Space): almacenan información sobre la ubicación y el tamaño del espacio libre.
- Paginas GAM and SGAM: utilizadas para ubicar extensiones.
- Páginas de Mapa de Ubicaciones de índices (IAM – Index Allocation Map): contiene información sobre el almacenamiento de páginas de una tabla o índice en particular.
- Páginas Índices: Utilizada para almacenar registros de índices.
Archivo de Registro de Transacciones: El propósito principal del registro de transacciones es la recuperación de datos a un momento en el tiempo o complementar una restauración de copia de respaldo completa (full backup). El registro de transacciones no contiene páginas, sino entradas con todos los cambios realizados en la base de datos, como son las modificaciones de datos, modificaciones de la base de datos y eventos de copia de seguridad y restauración. El acceso a datos es secuencial, ya que el registro de transacciones se actualiza en el mismo orden cronológico en el que se hacen las modificaciones.
Este archivo no puede ser leído por herramientas de usuario de SQL auqnue existen herramientas de terceros que leen este archivo para recuperar los cambios efectuados. Dependiendo de la versión el registro de transacciones se utiliza para otros propósitos como por ejemplo bases de datos espejo (mirror) y transporte remoto de transacciones (log shipping).
Para muchos de los administradores de bases de datos, la imagen anterior representa la parte lógica y la parte física, donde:
Data File: Los datafiles son los archivos físicos en los que se almacenan los objetos que forman parte de un tablespace. Un datafile pertenece solamente a un tablespace y a una instancia de base de datos. Un tablespace puede estar formado por uno o varios datafiles. Cuando se crea un datafile, se debe indicar su nombre, su ubicación o directorio, el tamaño que va a tener y el tablespace al que va a pertenecer. Además, al crearlos, ocupan ya ese espacio aunque se encuentran totalmente vacíos, es decir, Oracle reserva el espacio para poder ir llenándolo poco a poco con posterioridad. Por supuesto, si no hay sitio suficiente para crear un archivo físico del tamaño indicado, se producirá un error y no se creará dicho archivo.

2.1.3 Requerimientos para instalación de la base de datos.
Antes de instalar cualquier SGBD es necesario conocer los requerimientos de hardware y software, el posible software a desinstalar previamente, verificar el registro de Windows y el entorno del sistema, así como otras características de configuración especializadas como pueden ser la reconfiguración de los servicios TCP/IP y la modificación de los tipos archivos HTML para los diversos navegadores.Se presenta a continuación una serie de requerimientos mínimos de hardware y software para instalar oracle 11g Express y MySQL estándar versión 5.1. en Windows Seven y Ubuntu 10.

2.1.4 Instalación del software de BD en modo transaccional
Debido al constante crecimiento de datos que generan las empresas hoy en día, se ha vuelto muy necesaria la búsqueda de nuevas plataformas para almacenar y analizar la información, ambientes que consuman menos recursos, que sean más escalables y que provean una alta disponibilidad. La solución consiste en el procesamiento paralelo de los datos de una base de datos.Una base de datos en modo transaccional significa que la BD será capaz de que las operaciones de inserción y actualización se hagan dentro de una transacción, es un componente que procesa información descomponiéndola de forma unitaria en operaciones indivisibles, llamadas transacciones, esto quiere decir que todas las operaciones se realizan o no, si sucede algún error en la operación se omite todo el proceso de modificación de la base de datos, si no sucede ningún error se hacen toda la operación con éxito.
Una transacción es un conjunto de líneas de un programa que llevan insert o update o delete. Todo aquél software que tiene un log de transacciones (que es la "bitácora" que permite hacer operaciones de commit o rollback), propiamente es un software de BD; aquél que no lo tiene (v.g. D-Base), propiamente no lo es. Todo software de base de datos es transaccional; si el software de la BD no es "transaccional", en realidad NO es un "software" de BD; en todo caso, es un software que emula el funcionamiento de un verdadero software de BD. Cada transacción debe finalizar de forma correcta o incorrecta como una unidad completa. No puede acabar en un estado intermedio.
Se usan las siguientes métodos :
- Begin TRans para iniciar la transacción
- CommitTrans para efectuar los cambios con éxito
- RollbackTrans para deshacer los cambios
Y depende que base de datos uses para efectuar las operaciones pero, es la misma teoría para cualquier BD. Una vez que se sabe la forma de ingresar comandos, es el momento de acceder a una base de datos.
Suponga que en su hogar posee varias mascotas y desea registrar distintos tipos de información sobre ellas. Puede hacerlo si crea tablas para almacenar sus datos e introduce en ellas la información deseada. Entonces, podrá responder una variedad de preguntas acerca de sus mascotas recuperando datos desde las tablas. Los pasos serían:
- Crear una base de datos
- Crear una tabla
- Introducir datos en la tabla
- Recuperar datos desde la tabla de varias maneras
- Emplear múltiples tablas
2.1.5 Variables de Ambiente y archivos importantes para instalación.

Para instalar MySQL como primer instancia el archivo primordial es el que se descarga de la Web de MySQL. El proceso para instalar MySQL desde un archivo ZIP es el siguiente:
- Extraer el contenido del archivo dentro del directorio de instalación deseado.
- Crear un archivo de opciones.
- Elegir un tipo de servidor MySQL
- Iniciar el servidor MySQL.
- Establecer la seguridad de las cuentas de usuario por defecto.
2.1.6 Procedimiento general de instalación
Oracle Database XE es una gran base de datos para:- Desarrolladores que trabajan en PHP, Java, .NET, XML, y Open Sourceapplications
- DBAs que necesitan desarollar libremente
- Vendedores de Software y hardware que necesitan distribuir sin cargos
- Instituciones educativas y estudiantes que cursan materias relacionados con base de datos
Oracle es líder en bases de datos. Con Oracle XE, es posible desarrollar y desplegar aplicaciones potentes, actualizar sin costo y generar complejas migraciones. Oracle Express Edition se instala en una máquina con cualquier número de procesadores, solo puede contener una base de datos y direccionar un máximo de 4GB de datos y un máximo de 1GB RAM.
Oracle Database XE, usa una interface basada en browser (Navegador) para:
- Administrar la base de datos
- Crear tablas, vistas, y otros objetos de base de datos
- Importar, exportar, y ver tablas de datos
- Ejecutar consultas y scripts SQL
- Generar reportes
Oracle Database XE incluye Oracle Application Express release 2.1, un ambiente de desarrollo gráfico para crear aplicaciones Web con base de datos. Oracle Database XE es una versión reducida de Oracle con las misma características y potencialidad de Oracle Database. Es necesario destacar que no soporta todos los tipos de datos de Oracle Database XE.

Oracle Database XE incluye las siguientes utilidades:
- Línea de comandos SQL (SQL*Plus), para ejecutar sentencias SQL y comandos PL/SQL y ejecutar scripts
- SQL*Loader, para insertar datos en la base de datos
- Utilidades para importar, exportar y volcar la base de datos
- Requerimientos del sistema para Oracle Database XE Server y Oracle Database XE Client.
- Requerimiento
- Valor
- Arquitectura del sistema
2.1.7 Procedimiento para configuración de un DBMS.
Para configurar nuestro DBMS podemos acceder a las siguientes pantallas, para Oracle o MySQL. El esquema de una base de datos (en inglés, Database Schema) describe la estructura de una Base de datos, en un lenguaje formal soportado por un Sistema administrador de Base de datos (DBMS). En una Base de datos Relacional, el Esquema define sus tablas, sus campos en cada tabla y las relaciones entre cada campo y cada tabla.Oracle generalmente asocia un 'username' como esquemas en este caso SYSTEM y HR (Recursos humanos).
Por otro lado MySQL presenta dos esquemas information_schema y MySQL ambos guardan información sobre privilegios y procedimientos del gestor y no deben ser elimandos.



2.1.8 Comandos generales de alta y baja del DBMS
Una tabla es un sistema de elementos de datos (atributo - valores) que se organizan que usando un modelo vertical - columnas (que son identificados por su nombre)- y horizontal filas. Una tabla tiene un número específico de columnas, pero puede tener cualquier número de filas. Cada fila es identificada por los valores que aparecen en un subconjunto particular de la columna que se ha identificado por una llave primaria.Una tabla de una base de datos es similar en apariencia a una hoja de cálculo, en cuanto a que los datos se almacenan en filas y columnas. Como consecuencia, normalmente es bastante fácil importar una hoja de cálculo en una tabla de una base de datos. La principal diferencia entre almacenar los datos en una hoja de cálculo y hacerlo en una base de datos es la forma de organizarse los datos.

Por lo tanto, la creación de las tablas en el proceso de programación en Oracle juegan un papel muy importante. En el momento de crear las tablas se definen características a dos niveles: Tabla y Columna, como se muestra a continuación:
A nivel de tabla: Refieren a una o a varias columnas, donde cada columna se define individualmente.
Nombre: Nombre de la tabla puede ser de 1 a 30 caracteres. La tabla tiene como propietario al usuario que las crea. Por ejemplo EQUIPO.
Hay que tener en cuenta también ciertas restricciones con los nombres de las tablas: longitud máxima de 30 caracteres, no puede haber nombres de tabla duplicados, deben comenzar con un carácter alfabético, permitir caracteres alfanuméricos y el guión bajo '_', y Oracle no distingue entre mayúsculas y minúsculas.
Propietario: La tabla tiene como propietario al usuario que las crea En nuestro caso somos el usuario ALUMNO. Otro usuario que desee usar nuestras tablas debe tener autorización para ello y hacer referencia a la tabla como ALUMNO.EQUIPO(propietario.tabla)
Cantidad de Columnas: Una tabla puede tener un máximo de 254 columnas. A nivel de Columna el nombre de la columna puede tener un máximo de 30 caracteres.
En Oracle podemos implementar diversos tipos de tablas. A continuación se presenta una recopilación no exhaustiva de ellas.
- Tipo Tabla
- Descripción
- Regular (heap)
Son el mecanismo de almacenamiento de los datos en una base de datos Oracle. Contienen un conjunto fijo de columnas. Las columnas de una tabla describen los atributos de la entidad que se representa con la tabla. Cada columna tiene un nombre y características específicas: tipo de dato y longitud, restricciones, etc.
Clustered
Un cluester proporciona un método opcional de almacenar datos de tabla. Un cluster está compuesto de un grupo de tablas que comparten los mismos bloques de datos. Las tablas son agrupadas mediante columnas comunes.
Index
Aquí una tabla es almacenada en la estructura de un índice. Esto impone orden físico a las filas por si mismas. A diferencia de un heap, donde los datos son almacenados en donde caben, en una tabla IOT (Tabla Organizada por Indices) los datos son almacenados en el orden de la clave primaria.
Particionadas
Es un esquema de organización de los datos con el cual podemos dividirla en múltiples objetos de almacenamientos llamados particiones de datos o rangos, dependiendo los valores puede ser dividido en uno o más columnas de la tabla. Cada particiones de datos es almacenado separadamente. Estos objetos almacenados pueden estar en diferentes tablespaces, en el mismo o en una combinación de ambos.
Temporales
Son tablas cuyos datos permanecerán en el sistema sólo durante el tiempo que dure la transacción o sesión involucrada. No obstante, al igual que para las tablas permanentes, la definición de las tablas temporales se almacena en las tablas del sistema.
La sintaxis del comando que permite crear un tabla es la siguiente
Del examen de la sintaxis de la sentencia CreateTable se pueden concluir que necesitamos conocer los distintos tipos de columna y las distintas restricciones que se pueden imponer al contenido de las columnas.

Existen varios tipos de datos en SQL. De esta manera, cada columna puede albergar una información de naturaleza distinta. Los tipos de datos más comunes y sus características en Oracle Express (10 Y 11g) se resumen en la siguiente tabla. Las versiones de Oracle comercial soportan una gama mucho más amplia de tipos de datos.
- Tipo de Dato
- Descripción
- BLOB
Casi siempre es preferible guardar la ruta del archivo en la base de datos en lugar del propio archivo en modo binario, pero existen ciertas circunstancias en las que no nos queda otra solución.
BINARY_DOUBLE
Presición doble
BINARY_FLOAT
Presición simple
CLOB
Un tipo de datos CLOB de Oracle contiene datos de caracteres basados en el juego de caracteres predeterminados del servidor. Su tamaño máximo es de 4 gigabytes. Se asigna a cadena.
Use la siguiente expresión para una consulta de un campo CLOB
SELECT DBMS_LOB.substr(campo, DBMS_LOB.getlength(campo),1)
FROM tablaprueba;
CHAR
Almacena datos de tipo carácter alfanumérico de longitud fija, con un tamaño máximo de 2000. caracteres
DATE
Almacena fechas desde el 1-Ene-4712 AC hasta el 31-Dic-4712 DC.
NUMBER(dig [, dec])
Datos numéricos de n dígitos, de los cuales dec son decimales. El tamaño máximo es de 38 dígitos.
NVARCHAR2
Almacena un valor alfanumérico de longitud variable en caracteres Unicode con las mismas restricciones de varchar.
TIMESTAMP
Fecha y hora (incluidos los segundos), con un tamaño que abarca desde 7 a 11 bytes.
VARCHAR2(tamaño)
Guarda datos de tipo carácter alfanumérico de longitud variable, con un tamaño máximo de 4,000 caracteres.
FROM tablaprueba;
CHAR
Almacena datos de tipo carácter alfanumérico de longitud fija, con un tamaño máximo de 2000. caracteres
DATE
Almacena fechas desde el 1-Ene-4712 AC hasta el 31-Dic-4712 DC.
NUMBER(dig [, dec])
Datos numéricos de n dígitos, de los cuales dec son decimales. El tamaño máximo es de 38 dígitos.
NVARCHAR2
Almacena un valor alfanumérico de longitud variable en caracteres Unicode con las mismas restricciones de varchar.
TIMESTAMP
Fecha y hora (incluidos los segundos), con un tamaño que abarca desde 7 a 11 bytes.
VARCHAR2(tamaño)
Guarda datos de tipo carácter alfanumérico de longitud variable, con un tamaño máximo de 4,000 caracteres.

Comentarios
Publicar un comentario