Está en la página 1de 17

Introduccin

Objetivos del captulo En este captulo se describen los siguientes conceptos: Caractersticas de Oracle9i Aspectos tericos y fsicos de una base de datos relacional Implementacin del sistema manejador de base de datos relacionales RDBMS (relational database management system) y sistema manejador de base de datos relacionales orientado a objetos ORDBMS (object relational database management system)

Caractersticas de Oracle9i Oracle ofrece una infraestructura de alto desempeo llamado Oracle9i, el cual comprende cada una de las necesidades de desarrollo, mejoras y administracin de aplicaciones para Internet. Entre sus ventajas se incluyen: Escalabilidad para los sitios de comercio electrnico Arquitectura robusta, confiable, accesible y segura Modelo de desarrollo, con fciles opciones Cualidades en comn a lo largo de la plataforma de Oracle (SQL, PL/SQL, Java y XML) Interfaz de administracin para todas las aplicaciones Tecnologa estndar, no cerrada

Oracle9i Existen dos productos, Oracle9i Application Server y Oracle9i Database, los cuales proveen una completa y simple infraestructura para aplicaciones en Internet.

Oracle9i Application Server Oracle9i Application Server (Oracle9iAS) ejecuta todas tus aplicaciones. Oracle9i Database almacena todos tus datos. Oracle9i Application Server es la nica aplicacin que incluye servicios para todas las diferentes aplicaciones que se deseen ejecutar. Con Oracle9iAS se pueden ejecutar: Portales o sitios Web Aplicaciones de transacciones en Java Aplicaciones de inteligencia de negocios (Business intelligence) Adems provee integracin entre los usuarios, aplicaciones y datos de la organizacin

Oracle9i Database Los papeles o funcionalidades de cada uno de los productos son muy precisos. Oracle9i Database administra todos los datos. Esto no significa que slo se administren datos relacionales, tambin pueden ser administrados datos sin una estructura como: Hojas de clculo Documentos de Word Presentaciones de PowerPoint Informacin en el formato XML Informacin multimedia como MP3, grficos, videos, entre otros Los datos no tienen que estar necesariamente en la base de datos. Oracle9i Database cuenta con un servicio que permite almacenar la localizacin de los archivos en el sistema. De esta manera se puede usar el servidor de base de datos para administrar y utilizar la informacin donde se encuentre localizada sin necesidad de guardarla fsicamente en la misma. Acerca de Oracle Server Oracle9i Server soporta el modelo relacional y el modelo de objetos relacionales. Oracle9i Server amplia la capacidad de modelado al soportar el modelo de base de datos de objetos relacionados permitiendo la programacin orientada a objetos, tipos de datos complejos, objetos de negocio complejos y una completa compatibilidad con el mundo relacional. Tambin se incluyen diversas mejoras en el desempeo y funcionalidad de las aplicaciones de procesos de transacciones en lnea (OLTP), como una mejor comparticin de las estructuras de datos en tiempo de ejecucin, aumento en el

buffer del cache y restricciones postergables. Los datos de aplicaciones para una base de datos del tipo warehouse (almacn) se ven beneficiados con la ejecucin en paralelo de operaciones de insercin, modificacin y eliminacin, particionamiento y la optimizacin de consultas en paralelo. Oracle9i soporta aplicaciones Web y Cliente servidor distribuidas y en multicapas. Oracle9i puede aumentar de 10 a miles de usuarios concurrentes, soportando mas de 512 petabytes (1 petabyte = 1,000 terabytes) de datos y puede manejar todo tipo de datos, incluyendo texto, imgenes, sonido, video y secuencias de tiempo como una estructura de datos tradicional.

Plataforma de Oracle en Internet Oracle ofrece un alto desempeo en Internet para comercio electrnico y manejos de almacn. Esta plataforma integrada incluye cada una de las necesidades de desarrollo y administracin de aplicaciones en Internet. La plataforma de Oracle en Internet esta conformada de tres piezas fundamentales: Un browser para presentar los procesos al cliente Un servidor de aplicaciones que ejecuta la lgica de negocios y la presenta en un browser al cliente Bases de datos para ejecutar la lgica de negocios y presentar los datos

Ciclo de vida en el desarrollo de un sistema Desde el concepto a la produccin, se puede desarrollar una base de datos usando el ciclo de vida en el desarrollo de un sistema, el cual contiene mltiples fases para su desarrollo, transformando la informacin requerida a una base de datos operacional. Estrategia y anlisis Estudia y analiza los requerimientos del negocio. Entrevista a los usuarios y administradores para identificar los requerimientos. Incorpora a la empresa y a la misin de las aplicaciones como especificaciones del futuro sistema Construye modelos del sistema. Transfiere la narrativa del negocio a una representacin grfica de la informacin del negocio y sus reglas. Confirma y refina el modelo con analistas y expertos Desarrollo Desarrolla la base de datos basado en el modelo desarrollado en el paso anterior Construccin y documentacin Construye un prototipo del sistema. Escribe y ejecuta comandos para crear las tablas y objetos de la base de datos Desarrolla la documentacin para el usuario. Textos de ayuda y manuales para el uso y operacin del sistema

Transicin Refina el prototipo. Se pone una aplicacin en produccin para que un usuario lo verifique utilizando datos existentes de forma paralela. Se hacen las modificaciones requeridas Produccin Se proporciona el sistema a los usuarios para ser usado. Se monitorea su desempeo, afinando y refinando el sistema Nota: Varios de los pasos del ciclo de vida en el desarrollo de sistemas pueden realizarse repetidamente. Este curso solo se concentra en los pasos.

Almacenamiento de informacin Toda organizacin tiene diversas necesidades de informacin. Una biblioteca mantiene una lista de miembros, libros, fechas de vencimiento y tarifas. Una compaa necesita guardar la informacin de sus empleados, departamentos y salarios. Estas piezas de informacin son llamados datos. Las organizaciones pueden almacenar sus datos en diversos medios y en diferentes formatos, como una copia de documentos en archiveros o datos almacenados en formato electrnico como hojas de clculo o bases de datos. Una base de datos es una coleccin organizada de informacin. Para administrar bases de datos, es necesario contar con un sistema manejador de bases de datos (DBMS data base management system). Un DBMS es un programa que almacena, recupera y modifica informacin de una

base de datos. Existen 4 principales tipos de bases de datos: Jerrquica, de Red, Relacional y ms recientemente relacional orientada a objetos. Modelo relacional El principio del modelo relacional fue propuesto por el Dr. Edgar Frank Codd en Junio de 1970 en su artculo llamado A Relational Model of Data for Large Shared Data Banks. En este artculo el Dr. E.F. Codd propuso el modelo relacional para sistemas de base de datos. El ms popular modelo usado en este tiempo despus del jerrquico y de redes. El sistema manejador de bases de datos relacional (RDBMS Relational database management system) muy pronto se convirti en el ms popular, especialmente por su fcil uso y flexibilidad en su estructura1. Componentes del modelo relacional Una coleccin de objetos o relaciones que almacenan datos Un conjunto de operadores que pueden actuar sobre las relaciones para producir otras Integridad en los datos para mantener precisin y consistencia

Definicin de una Base de datos relacional Una base de datos relacional usa relaciones o tablas de dos dimensiones para almacenar informacin. Por ejemplo, se puede querer almacenar informacin de todos los empleados de una empresa. En una base de datos relacional, se pueden crear varias
Para ms informacin, vea E. F. Codd, The Relational Model for Database Management Version 2 (Reading, Mass.: Addison-Wesley, 1990)
1

tablas para almacenar diferentes piezas de informacin acerca de los empleados, como una tabla de empleados, una de departamentos y una de salarios.

Modelo de Datos Este modelo es el punto principal del desarrollo. Los ingenieros construyen un modelo de un auto para trabajar en sus detalles antes de producirlo. De la misma forma, los desarrolladores de sistemas disean modelos para explorar ideas y mejorar el entendimiento en el desarrollo de bases de datos. Modelos propuestos Los modelos ayudan a comunicar los conceptos de la gente. Ellos pueden ser usados haciendo lo siguiente: Comunicando Categorizando Describiendo Especificando Investigando Evolucionando Analizando Emulando El objetivo es producir un modelo que se adapte a los mltiples usuarios, sea entendido por usuarios finales, y contenga suficiente detalle para que los desarrolladores construyan el sistema de bases de datos.

Modelo de Entidad Relacin En un sistema eficiente, los datos estn divididos en categoras discretas o entidades. Un modelo de entidad relacin (ER) es una ilustracin de varias entidades y sus relaciones entre ellos. Un modelo de ER es derivado de los requerimientos o procesos del negocio y construido durante el paso de anlisis del ciclo de vida del sistema. Un modelo ER separa la informacin requerida del negocio de las actividades desempeadas. Aunque las empresas pueden cambiar sus actividades, el tipo de informacin tiende a permanecer constante. Por consiguiente, la estructura de los datos permanece. Beneficios del Modelo Entidad Relacin La informacin es clara y en un formato preciso Proporciona una vista clara del alcance de los requerimientos de informacin Provee un fcil entendimiento del diseo de la base de datos Ofrece un efectivo soporte para integrar mltiples aplicaciones Componentes clave Entidad: Es algo que nos da significado acerca de la informacin que necesitamos conocer. Como ejemplo tenemos a los departamentos, empleados y ordenes. Atributos: Es aquello que describe o cualifica a una Entidad. Por ejemplo, para la entidad empleados, los atributos pueden ser el nmero de empleado, nombre, puesto, fecha de contratacin, departamento, entre otros. Cada uno de los atributos puede ser requerido u opcional. Esta caracterstica es llamada optativa.

Relacin: Es el nombre de una asociacin entre entidades que muestra su opcionalidad y grado. Un ejemplo es empleados y departamentos u rdenes y artculos.

Entidades Para representar una entidad en un modelo, se siguen las siguientes convenciones: Una caja con orillas redondeadas Un nombre nico, en singular y en maysculas Las entidades opcionales son llamadas sinnimos y deben estar escritas en maysculas y entre parntesis Atributos Para representar un atributo en un modelo, se siguen las siguientes convenciones: Nombres en singular y minsculas Los atributos obligatorios se identifican con un asterisco (*) Los atributos opcionales se identifican con la letra o

Relaciones Una relacin esta representada por una lnea que conecta a dos entidades para mostrar la asociacin que existe entre ellas. Smbolo Lnea punteada Descripcin Indica que la asociacin es opcional May be Lnea continua Indica que la asociacin es obligatoria Must be Lnea con terminacin en forma de pie Indica el grado de la asociacin uno o de gallo ms one or more Lnea sencilla Indica el grado de la asociacin uno a uno one and only one Cada direccin de una relacin contiene: Una etiqueta, por ejemplo indicado por o asignado a (taught by or assigned by) Una opcionalidad como must be o may be Un grado, como uno a uno o uno a muchos Nota.- El termino cardinalidad es un sinnimo de grado En una relacin, la entidad origen representa la opcionalidad (may be o must be) y la entidad destino el grado (uno a uno o uno a muchos). Nota.- Por convencin, la lectura se hace en sentido del reloj. Identificadores nicos Un identificador nico (UID) es una combinacin de atributos, relaciones o ambas, que sirve para distinguir las ocurrencias de una entidad. Cada ocurrencia debe ser identificada de forma nica. Cada atributo identificado con el smbolo # forma parte del identificador nico primario Cada atributo identificado con el smbolo (#) entre parntesis forma parte del identificador nico secundario

Relacionando mltiples tablas Cada tabla contiene datos que describen exactamente a una entidad. Por ejemplo, la tabla empleados contiene informacin acerca de los empleados. Las categoras de los datos son listados en la parte superior de cada tabla, y en casos individuales en la parte inferior. Al usar el formato de tablas, se puede fcilmente ver, entender y usar la informacin. Puesto que los datos de diferentes entidades son almacenados en diversas tablas, se puede necesitar combinar dos o ms tablas para responder una pregunta en particular. Por ejemplo, se puede querer conocer la localizacin de cada departamento en donde trabaja un empleado en particular. En este escenario, se necesita informacin de la tabla empleados (la cual contiene la informacin de los empleados) y la tabla de departamentos (que contiene informacin de los departamentos). Con un RDBMS se puede relacionar los datos de una tabla con los datos de la segunda por medio de las llaves forneas. Una llave fornea es una columna o conjunto de columnas que hacen referencia a la llave primaria de la misma tabla u otra tabla. Se puede usar la habilidad para relacionar los datos de una tabla con los datos de otra, organizando la informacin por separado y manejndola en unidades. Los datos del empleado pueden ser mantenidos lgicamente separados de los datos del departamento y ser almacenados en tablas separadas. Convenciones en el uso de llaves primarias y forneas No se puede duplicar una llave primaria Las llaves primaria, generalmente no pueden ser cambiadas Las llaves forneas estn basados en datos puramente lgicos, no fsicos o apuntadores. El valor de una llave fornea debe corresponder al valor de una llave primaria o nica, o debe ser nulo.

Una llave fornea debe referenciar a una llave primaria o nica.

Terminologa usada en una base de datos relacional Una base de datos relacional puede contener una o ms tablas. Una tabla es la estructura bsica de almacenamiento en un RDBMS. Una tabla contiene todos los datos necesarios respecto a algo del mundo real, como empleados, facturas o clientes. La imagen anterior muestra el contenido de la tabla empleados. Cada uno de los nmeros indica lo siguiente: 1. Una fila de la tabla representa todos los datos requeridos para un empleado en particular. Cada fila de la tabla puede ser identificada por una llave primaria, que permite no duplicar filas. El orden de las filas es insignificante ya que podemos especificar el orden en el que deseemos recuperar los datos. 2. Una columna o atributo que contiene el nmero del empleado. El nmero del empleado identifica a un nico empleado de la tabla. En este ejemplo, la columna nmero de empleado es identificada como llave primaria. Una llave primaria debe contener un valor, y este debe ser nico. 3. Una columna que representa un tipo de dato en una tabla, en el ejemplo representa el salario de todos los empleados. El orden de las columnas no es significativo cuando se almacenan los datos, ya que al recuperarlos se especifica el orden de las columnas. 4. Una columna conteniendo el nmero del departamento, el cual es tambin una llave fornea. Una llave fornea es una columna que define como las tablas se relacionan con otras. Una llave fornea hace referencia a una llave primaria o nica de la misma tabla u otra. En este ejemplo, DEPARTMENT_ID nicamente identifica a un departamento de la tabla departamentos.

5. Un campo puede o no tener un valor. Este es llamado valor nulo (null). En la tabla de empleados, solo los empleados que tienen un papel de ventas representativas tienen un valor en el campo COMMISSION_PCT 6. Un campo puede ser ubicado en la interseccin de una fila y una columna. All puede haber un nico valor. Propiedades de una base de datos relacional En una base de datos relacional, no se especifica la ruta de acceso a las tablas y no es necesario conocer como se encuentran los datos fsicamente. El acceso a la base de datos, se ejecuta por medio de sentencias en un lenguaje de consulta estructurado (SQL Structured Query Language), que es el lenguaje estndar del Instituto Nacional de estndares americano (ANSI) para operar bases de datos relacionales. El lenguaje contiene un gran conjunto de operaciones para particionar y combinar relaciones. Las bases de datos pueden ser modificadas por medio del uso de sentencias SQL.

Lenguaje de Consulta Estructurado Usando SQL, se puede comunicar con un servidor Oracle. SQL tiene las siguientes ventajas: Es eficiente Fcil de usar y aprender Consta de una funcionalidad completa (con SQL, se pueden definir, recuperar y manipular datos de las tablas de una base de datos)

Sistema Manejador de Bases de Datos Relacionales (RDBMS) Oracle provee un flexible RDBMS llamado Oracle9i. Usando estas caractersticas, se pueden almacenar y administrar datos con todas las ventajas de una estructura relacional como PL/SQL, un motor que proporciona la habilidad de almacenar y ejecutar unidades de programa. Adems Oracle9i proporciona soporte para Java y XML. El servidor de Oracle ofrece opciones de recuperacin de datos basados en tcnicas de optimizacin. Incluye caractersticas de seguridad para controlar como es usada y acezada la base de datos. Otra de sus caractersticas es la consistencia y proteccin de datos a travs de mecanismos de bloqueo. Oracle9i proporciona un abierto, comprensivo e integrado aprovechamiento en la administracin de la informacin. Un servidor de Orcale consta de una base de datos Oracle y una instancia del servidor de Oracle. Cada vez que una base de datos es iniciada, esta es localizada en un rea global del sistema (SGA System Global Area) y los procesos de soporte de Oracle son iniciados. El rea global del sistema es una seccin de memoria utilizada por la base de datos con informacin compartida para los usuarios de la misma. La combinacin de los procesos de soporte y los buffers de memoria de Oracle son considerados la Instancia.

Sentencias SQL Sentencia SELECT INSERT UPDATE DELETE MERGE

CREATE ALTER DROP RENAME TRUNCATE COMMIT ROLLBACK SAVEPOINT GRANT REVOKE

Descripcin Recupera datos de una base de datos Agrega nuevas filas, modifica datos existentes y remueve filas de las tablas de una base de datos respectivamente. Estas sentencias en conjunto son conocidas como Lenguaje de manipulacin de datos (DML Data manipulation lenguaje) Establece, modifica y remueve estructuras de las tablas. En su conjunto se conoce como Lenguaje de definicin de datos (DDL Data definition language) Administra los cambios realizados por sentencias DML. Los cambios realizados a los datos, pueden ser agrupados en transacciones lgicas Otorga y quita el acceso a la base de datos o a sus estructuras. En su conjunto estas sentencias son conocidas como Lenguaje de control de datos (DCL Data control language)

Tablas usadas para este curso Las siguientes tablas sern utilizadas durante el curso: EMPLOYEES, la cual contiene los detalles de todos los empleados DEPARTMENTS, que contiene los detalles de los departamentos JOB_GRADES, contiene los detalles de sueldos de acuerdo al puesto Resumen Un sistema manejador de bases de datos relacional esta compuesto por objetos y relaciones. Estos son administrados por operaciones y controlados por reglas de integridad en los datos. Oracle proporciona productos y servicios apropiados para las necesidades de los sistemas manejadores de base de datos relacionales. Entre los principales productos esta el servidor de base de datos Oracle9i, con el cual se puede almacenar y administrar informacin usando SQL y el servidor de aplicaciones Oracle9i con el cual se pueden ejecutar las aplicaciones. Oracle Server soporta el SQL estndar de ANSI y adiciones propias. SQL es el lenguaje usado para comunicarse con el servidor para acceder, manipular y controlar los datos.

También podría gustarte