La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Introducción Informática Aplicada.

Presentaciones similares


Presentación del tema: "Introducción Informática Aplicada."— Transcripción de la presentación:

1 Introducción Informática Aplicada

2 Contenido Propósitos de las bases de datos Punto de vista de los datos
Lenguajes de base de datos Bases de datos relacionales Diseño de bases de datos Bases de datos orientadas a objetos y semisetructuradas Consultas y almacenamiento de datos Control de Transacciones Arquiectura de bases de datos Usuarios y administradores de bases de datos Estructura general Historia de sistemas de bases de datos

3 Sistemas de administración de bases de datos
Un sistema de base de datos contiene información de una empresa Colección de datos interrelacionados Conjunto de programas para manejar los datos Un ambiente que sea conveniente y eficiente de usar Aplicaciones Bancarias: todas las transacciones Aerolíneas: reservaciones, intinerarios Universidades: inscripciones, calificaciones Ventas: clientes, productos, facturas Manufactura: producción, inventario, ordenes, cadena de suministros Recursos Humanos: registros de empleados, salarios, impuestos Las bases de datos se aplican en todos los aspectos de la vida

4 Propósito de los sistemas de base datos
Al principio, las aplicaciones se construían directamente sobre el sistema de archivos. Desventajas Redundancia en los datos e inconsistencia Múltiples formatos de archivo, duplicado de la información en diferentes archivos Dificultad en el acceso a los datos Necesidad de escribir nuevos programas para cada nueva aplicación Aislamiento de los datos - múltiples archivos y formatos Problemas de integridad Restricciones de integridad (p.ej. balance>0) se inserta en el código del programa en lugar de hacerlo explícitamente Difícil agregar nuevas restricciones o cambiar las actuales

5 Propósito de los sistemas de base datos (cont.)
Desventajas (cont) Atomicidad de las actualizaciones Las fallas pueden dejar la base de datos en un estado inconsistente con actualizaciones parciales Ejemplo: transferencia de fondos de una cuenta a otra debe completarse o no ocurrir Acceso concurrente por múltiples usuarios Acceso concurrente necesario por eficiencia Acceso concurrente sin control puede crea inconsistencias Ejemplo: dos usuarios leyendo un saldo y actualizándolo al mismo tiempo Problemas de seguridad Difícil proveer a usuarios acceso a todos, pero no todos los datos Los sistemas de bases de datos proveen soluciones para todos estos problemas

6 Niveles de abstracción
Nivel físico: describe como se almacenan los registros Nivel Lógico: describe los datos guardados en la base de datos y la relación entre los datos type custumer = record customer_id:string; customer_name:string; customer_street:string; customer_city:string; end; Nivel de vista: los programas de aplicación ocultan detalles de los tipos de datos. Las vistas también ocultan información (tal como el salario de un empleado) con propósitos de seguridad.

7 Punto de vista de los datos
Arquitectura de un sistema de bases de datos Nivel de vista Vista 1 Vista 2 Vista N Nivel lógico Nivel físico

8 Instancias y esquemas Análogo a tipos y variables en lenguajes de programación Esquema - La estructura lógica de la base de datos ejemplo: La base de datos consiste de información acerca de un conjunto de clientes y cuentas y la relación entre ellos. Análogo a los tipos de información de una variable en un programa Esquema físico: diseño de la base de datos en el nivel físico Esquema lógico: diseño de la base de datos en el nivel lógico Instancia - el contenido actual de la base de datos en un punto particular del tiempo. Análogo al valor de una variable Independencia física de los datos - habilidad para modificar el esquema físico sin cambiar el esquema lógico Las aplicaciones dependen del esquema lógico En general, la interfase entre varios niveles y componentes deberá estar bien definida para que los cambios en alguna parte no influye seriamente en otras.

9 Modelo de los datos Un conjunto de Herramientas para describir Datos
Relaciones entre datos Semántica de los datos Restricciones de los datos Modelo relacional Modelo Entidad-Relación (principalmente para diseño) Modelos basados en objetos (Orientados a objetos y Objeto-relacionales) Modelo Semi-estructurados (XML) Otros modelos antiguos: Modelo de red Modelo jerárquico

10 El modelo relacional Ejemplo de una tabla de datos en el modelo relacional Atributos

11 Ejemplo de una base de datos relacional

12 Lenguaje de definición de datos (DDL)
Notación de especificación pra definir esquemas de base de datos Ejemplo create table account ( account-number char(10), balance integer); El compilador DDL genera un conjunto de tablas almacenadas en un diccionario de datos El diccionario de datos contiene metadatos (i.e., datos acerca de los datos) Esquema de base de datos Almacenamiento de datos y lenguaje de definición Especifica la estructura del almacenamiento y los métodos de acceso usados Restricciones de integridad Restricciones de dominio Integridad referencial (restricciones de referencia en SQL) Asertos Autorización

13 Lenguaje de manipulación de datos (DML)
Lenguaje para acceder y manipular los datos organizados por un modelo apropiado de datos El DML es conocido como lenguaje de consulta Dos clases de lenguajes Procedural - el usuario especifica que datos son requeridos y como obtener esos datos. Declarativo (no procedural) - el usuario especifica que datos son requeridos sin especificar como obtener esos datos. SQL es el lenguaje más utilizado como lenguaje de consulta.

14 SQL SQL: lenguaje no procedural más utilizado
Ejemplo: Encontrar el nombre del cliente con clave select customer.customer_name from customer where customer.customer_id = ‘ ’ Example: Encontrar los saldos de todas las cuentas de un cliente con clave select account.balance from depositor, account where depositor.customer_id = ‘ ’ and depositor.account_number = account.account_number Los programas de aplicación generalmente acceden a las bases de datos a través de extensiones del lenguaje para permitir SQL embebido Las interfases de los programas de aplicación (p.e., ODBC/JDBC) las cuales permiten que consultas SQL sen enviadas la base de datos

15 Diseño de bases de datos
El proceso de diseño de la estructura general de bases de datos: Diseño Lógico – Desición del esquema de la base de datos. El diseño de la base de datos requiere encontrar una colección “buena” de esquemas de relación. Decisión de negocios – Cuáles atributos guardaremos en la base de datos? Decisión de Ciencias de la computación – Que esquemas de relación tendremos y como se distribuirán a lo largo de los esquemas de relación? Diseño físico – Decidiendo sobre plano físico de la base de datos

16 Modelo entidad-relación
Modela una empresa como una colección de entidades y relaciones Entidad: una “cosa” u “objeto” en una empresa que es distinguible de otros objetos. Descrito por un conjunto de atributos. Relación: una relación entre varias entidades. Representado gráficamente mediante un diagrama entidad-relación

17 Modelo de datos objeto-relacional
Extiende el modelo de datos relacional incluyendo orientación a objetos y constructores para trabajar con tipos de datos agregados. Permite atributos de tuplas que tengan tipos complejos, incluyendo valores no atómicos tal como relaciones anidadas. Retiene los fundamentos relacionales, en particular el acceso declarativo de datos, mientras extiende la potencia del modelado. Provee compatibilidad hacia arriba con los lenguajes relacionales existentes.

18 XML: Extensible Markup Language
Lenguaje de Marcado Extensible Definido por el consorcio WWW (W3C) Originalmente definido como un lenguaje de marcado de documentos no como un lenguaje de base de datos. Habilidad para especificar nuevos objetivos (tags), y crear estructuras objetivos anidados hacen de XML una forma conveniente para intercambiar datos, no solo documentos. XML ha llegado a ser la base para una nueva generación de formatos de intercambio de datos. Una variedad amplia de herramientas están disponibles para reconocimiento, espulgado y consulta de documentos/datos.

19 Manejador de almacenamiento
El manejador del almacenamiento es un módulo de programa que provee la interfase entre el almacenamiento de datos de bajo nivel en la base de datos y los programas de aplicación y las consultas enviadas al sistema. El manejador del almacenamiento es responsable de las siguientes tareas: Interacción con el manejador de archivos El eficiente almacenamiento y recuperación y actualización de datos Provee:  Acceso al almacenamiento  Organización de archivos  Indexado y hashing

20 Procesamiento de consultas
1. Análisis y traducción 2. Optimización 3. Evaluación Expresión de Álgebra relacional Analizador y traductor Consulta Optimizador Máquina de evaluación Salida de la consulta Plan de ejecusión Estadísticas de los datos Datos

21 Procesamiento de consultas (cont.)
Formas alternativas de evaluar una consulta dadas Expresiones equivalentes Diferentes algoritmos para cada operación Las diferencias en costo entre una forma buena y mala de evaluar una consulta puede ser enorme Necesidad de estimar el costo de las operaciones Depende críticamente de información estadística acerca de las relaciones la cual la base de datos debe mantener Necesidad de estimar estadísticas para resultados intermedios para computar el costo de expresiones complejas

22 Manejador de transacciones
Una transacción es una colección de operaciones que lleva a cabo una función lógica única en una aplicación de base de datos La componente de manejador de transacciones asegura que la base de datos permanezca en un estado consistente (correcto) sin importar las fallas (p.ej. Fallas de potencia, caídas del sistema operativo) y fallas en las transacciones. Manejador de control de concurrencia controla la interacción entre las transacciones concurrentes, para asegurar la consistencia de la base de datos.

23 Arquitecturas de bases de datos
La arquitectura de las bases de datos esté muy influenciada por el sistema de cómputo en los que la base de datos se ejecuta: Centralizado Cliente-servidor Paralelo (multi-procesador) Distribuida

24 Usuarios de bases de datos
Los Usuarios son diferenciados por la manera en que se espera que interactúen con el sistema Programadores de aplicación – interactúan con el sistema a través de llamadas DML Usuarios Sofisticados – formulas preguntas en la base de datos en un lenguaje de consultas de base de datos Usuarios especializados – escriben aplicaciones de bases de datos que no se ajustan a la organización del procesamiento de datos tradicional Usuarios novatos – ejecutan uno de los programas permanentes de aplicación que han sido escritos previamente Ejemplos, gente que acceda la base de datos por la web, cajeros automáticos, personal de oficina

25 Administrador de base de datos
Coordina todas las actividades en el sistema de base de datos; el administrador tiene un buen conocimiento de los recursos de la empresa y sus necesidades. Los deberes del administrador se incluye: Definición del esquema Estructura del almacenamiento y definición del método de acceso Modificación del esquema y organización física Otorga autoridad a los usuarios de la base de datos Especifica restricciones de integridad Actúa como coordinador de usuarios Monitorea comportamiento y responde a cambios en los requerimientos

26 Estructura completa del sistema
Usuarios novatos (cajeros, agentes, Usuarios web) Programadores de aplicaciones Usuarios sofisticados Administrador de Base de datos Usa Escribe Usa Usa Interfase De aplicación Programas De aplicación Herramientas De consulta Herramientas de administración Compilador y ligador Consultas DML Interprete DDL Código objeto De programas De aplicación Compilador DML Y organizador Máquina evaluadora De consultas Procesador de consultas Manejador de buffer Manejador de archivo Manejador de Autorización e integridad Manejador de transacciones Manejador de almacenamiento Diccionario de datos Índices Datos Datos estadísticos Disco


Descargar ppt "Introducción Informática Aplicada."

Presentaciones similares


Anuncios Google