440 likes | 557 Vues
FACULTAD DE INGENIERIA. Escuela Profesional de Computación y Sistemas. BASE DE DATOS I. Ing. Eddye Arturo Sánchez Castillo www.ceneinnova.com/eddyesanchez/. CLASE N° 01. FACULTAD DE INGENIERIA. Escuela Profesional de Computación y Sistemas. Introducción al curso
E N D
FACULTAD DE INGENIERIA Escuela Profesional de Computación y Sistemas BASE DE DATOS I Ing. Eddye Arturo Sánchez Castillo www.ceneinnova.com/eddyesanchez/ CLASE N° 01
FACULTAD DE INGENIERIA Escuela Profesional de Computación y Sistemas • Introducción al curso • Definiciones básicas, importancia, alcances, plataformas. • Abstracción de la Información: Nivel Externo, Nivel Lógico y Nivel Interno. • Independencia de los datos, • Lenguajes de Base de Datos, • Administración de Base de Datos • Herramientas CASE: Lower Case, Upper Case • Etapas para el Modelamiento de Datos Ing. Eddye Arturo Sánchez Castillo www.ceneinnova.com/eddyesanchez/ CLASE N° 01
INTRODUCCION Las bases de datos constituyen la parte fundamental de los sistemas de información, toda información se convierte en un factor crítico importante para la organización, y es necesario tomar las medidas correspondientes para salvaguardarla y administrarla. Ing. Eddye Arturo Sánchez Castillo www.ceneinnova.com/eddyesanchez/ CLASE N° 01
INTRODUCCION diferentes sistemas de administración de base de datos (DBMS) Ing. Eddye Arturo Sánchez Castillo www.ceneinnova.com/eddyesanchez/ CLASE N° 01
DEFINICIONES BASICAS SOBRE BASE DE DATOS APLICACIÓN Son aquellos programas que permiten la interacción entre el usuario y la computadora. Esta comunicación se lleva acabo cuando el usuario elige entre las diferentes opciones o realiza actividades que le ofrece el programa.
DEFINICIONES BASICAS SOBRE BASE DE DATOS DATO Es una información que refleja el valor de una característica de un objeto real, sea concreto o abstracto, o imaginario. Debe permanecer en el tiempo, debe tener un significado y debe ser manipulable mediante operadores. INFORMACIÓN Es un conjunto de datos convenientemente tratado, que puede ser utilizado en la realización de cálculos o toma de decisiones. CAMPO Es la unidad más pequeña a la cual uno puede referirse en un programa. Desde el punto de vista del programador representa una característica de un individuo u objeto.
DEFINICIONES BASICAS SOBRE BASE DE DATOS REGISTRO Colección de campos de iguales o de diferentes tipos. ARCHIVO Colección de registros almacenados siguiendo una estructura homogénea.
DEFINICIONES BASICAS SOBRE BASE DE DATOS BASE DE DATOS Una base de datos es una colección de datos estructurados según un modelo que refleje las relaciones y restricciones existentes en el mundo real. Los datos, son compartidos por diferentes usuarios y aplicaciones, y deben mantenerse independientes de éstas. Asimismo, los tratamientos que sufran estos datos tendrán que conservar la integridad y seguridad.
DEFINICIONES BASICAS SOBRE BASE DE DATOS SISTEMA DE GESTIÓN DE BASE DE DATOS (SGDB / DBMS) Los Sistemas Gestores de Bases de Datos son un tipo de software muy específico, dedicado a servir de interfaz entre las bases de datos y las aplicaciones que la utilizan, consiguiendo, que el acceso a los datos se realice de una forma más eficiente, más fácil de implementar, y, sobre todo, más segura.
DEFINICIONES BASICAS SOBRE BASE DE DATOS ESQUEMA DE BASE DE DATOS Es la estructura por la que está formada la base de datos, se especifica por medio de un conjunto de definiciones que se expresa mediante un lenguaje especial llamado Lenguaje de Definición de Datos. (DDL). ADMINISTRADOR DE BASE DE DATOS (DBA) Es la persona o equipo de personas profesionales responsables del control y manejo del sistema de base de datos, generalmente tienen experiencia en DBMS, diseño de bases de datos, Sistemas operativos, comunicación de datos, hardware y programación.
DEFINICIONES BASICAS SOBRE BASE DE DATOS BASES DE DATOS ANALÍTICAS Bases de Datos de sólo lectura, utilizadas primordialmente para almacenar datos históricos que posteriormente se pueden utilizar para estudiar el comportamiento de un conjunto de datos a través del tiempo, realizar proyecciones y tomar decisiones. BASES DE DATOS DINÁMICAS Son bases de datos orientadas a almacenar información que es modificada con el tiempo, permitiendo operaciones como actualización y adición de datos, además de las operaciones fundamentales de consultas.
DEFINICIONES BASICAS SOBRE BASE DE DATOS MODELO DE BASES DE DATOS Los modelos de datos no son cosas físicas, son abstracciones que permiten la implementación de un sistema eficiente de base de datos; por lo general se refieren a algoritmos, y conceptos matemáticos. BASES DE DATOS JERÁRQUICAS Bases de datos que almacenan su información en una estructura jerárquica. En este modelo los datos se organizan en una forma similar a un árbol, en donde un nodo padre de información puede tener varios hijos. Una de las principales limitaciones de este modelo es su incapacidad de representar eficientemente la redundancia de datos.
DEFINICIONES BASICAS SOBRE BASE DE DATOS BASES DE DATOS DE RED Éste es un modelo ligeramente distinto del jerárquico; su diferencia fundamental es la modificación del concepto de nodo: se permite que un mismo nodo tenga varios padres. Ofrecía una solución eficiente al problema de redundancia de datos; pero, aun así, la dificultad que significa administrar la información en una base de datos de red ha significado que sea un modelo utilizado en su mayoría por programadores más que por usuarios finales.
DEFINICIONES BASICAS SOBRE BASE DE DATOS BASES DE DATOS RELACIONALES Éste es el modelo más utilizado en la actualidad para modelar problemas reales y administrar datos dinámicamente. Su idea fundamental es el uso de relaciones. Estas relaciones podrían considerarse en forma lógica como conjuntos de datos llamados tuplas. Esto es pensando en cada relación como si fuese una tabla que está compuesta por registros (las filas de una tabla), que representarían las tuplas, y campos (las columnas de una tabla).
DEFINICIONES BASICAS SOBRE BASE DE DATOS • BASES DE DATOS ORIENTADAS A OBJETOS • Este modelo trata de almacenar en la base de datos los objetos completos (estado y comportamiento). Una base de datos orientada a objetos es una base de datos que incorpora todos los conceptos importantes del paradigma de objetos: • Encapsulación: Propiedad que permite ocultar la información al resto de los objetos, impidiendo así accesos incorrectos o conflictos. • Herencia: Propiedad a través de la cual los objetos heredan comportamiento dentro de una jerarquía de clases. • Polimorfismo: Propiedad de una operación mediante la cual puede ser aplicada a distintos tipos de objetos.
DEFINICIONES BASICAS SOBRE BASE DE DATOS BASES DE DATOS DOCUMENTALES Permiten la indexación a texto completo, y en líneas generales realizar búsquedas más potentes. BASE DE DATOS DISTRIBUÍDAS Una base de datos distribuida (BDD) es la unión de las bases de datos de red. La base de datos está almacenada en varias computadoras conectadas en red (ya sea físicamente en el mismo lugar o distribuidas a lo largo de la red), lo que permite el acceso a los datos desde diferentes máquinas. Está manejada por el Sistema de Administración de Datos Distribuida (SABDD) o Sistema de Gestión de Base de Datos Distribuida. Son la evolución de los sistemas cliente-servidor.
DEFINICIONES BASICAS SOBRE BASE DE DATOS METADIRECTORIO Es un software utilizado para replicar datos entre diferentes fuentes, aunque estas fuentes no tengan nada que ver entre sí. Podría llamarse un conector de bases de datos de diferentes fuentes o fabricantes.
Evolución de los sistemas de procesamiento de archivos a los sistema de base de datos
SISTEMA DE PROCESAMIENTO DE ARCHIVO Primeros sistemas de información comerciales que almacenaban grupos de registros en archivos separados. Los programas de procesamiento de archivos acceden a los archivos de datos almacenados.
SISTEMA DE PROCESAMIENTO DE ARCHIVO • Sistemas orientados hacia el proceso. • Pone énfasis en el tratamiento que reciben los datos, los cuales se almacenan en archivos diseñados para una aplicación. • Las aplicaciones se diseñan e implantan independientemente unas de otras y los datos se duplican si las diferentes aplicaciones los necesitan, en lugar de transferirse entre ellas. • Redundancia de información • Inconsistencia de Información • Aumento de tiempos de procesos • Aislamiento de datos • Maneja conceptos de archivos, registro, campo • No hay concurrencia de datos ni de usuarios • Sistema bastante vulnerable • La descripción de datos está en los códigos • No permiten conseguir un sistema de información orientado a la toma de decisiones. • Dependencia total entre los programas y la estructura física de los datos. CARACTERISTICAS
SISTEMA DE BASE DE DATOS Los programas de procesamiento de datos acuden al DBMS para acceder a los datos almacenados. Esta tecnología hace más fácil la tarea de programar la aplicación, los programadores no se preocupan por la forma en que se almacenan los datos, sino que se concentran en cuestiones importantes para el usuario.
SISTEMA DE BASE DE DATOS CARACTERISTICAS • Datos integrados • Menos duplicación de datos • Independencia entre programa y datos • Fácil representación de la vista de datos de los usuarios • Compartida entre varios usuarios para diferentes tareas.
SISTEMA DE BASE DE DATOS • Es un esquema cliente/servidor (2 programas interactúan). Cliente envía una consulta SQL y servidor envía respuesta. • Es un compilador de instrucciones SQL. • El servidor ejecuta las instrucciones SQL e interactúa directamente con las tablas. • Permite minimizar el uso de red. • La desventaja de este esquema es que teniendo un procesador en cada cliente, no se utilice. • Hay un programa servidor de base de datos que controla el tráfico de red. • El usuario tiene que estar registrado para entrar en la red. • Hay un usuario Administrador de la Base de Datos. • Proporciona integridad y escalabilidad • El cliente es semigrueso, ya que procesa solo en caso de ingreso de datos, consistencia de datos, etc.
SISTEMA DE BASE DE DATOS • El cliente manda sus requerimientos al servidor. • El servidor envía toda la data. • El Programa cliente usa SQL de manera opcional. • El Programa servidor carece de un servidor de Base de Datos. • Existe gran tráfico de red, porque al hacer el requerimiento, el servidor envía toda la información. • El procesamiento del cliente es alto, ya que si procesa los datos. Es decir exige robustez del cliente, por lo que es llamado un cliente grueso thickclient. • El usuario espera más porque procesa mayor cantidad de datos. • El cliente requiere mayor arquitectura de hardware.
SISTEMA DE GESTION DE BASE DE DATOS Un sistema de gestión de bases de datos consiste de una colección de datos interrelacionados y un conjunto de programas para acceder a esos datos. El objetivo principal del DBMS: proporcionar un entorno que sea a la vez conveniente y eficiente para ser utilizado al extraer y almacenar información en la base de datos.
SISTEMA DE GESTION DE BASE DE DATOS • La base de datos es un depósito único de datos para toda la organización, por lo que debe ser capaz de integrar los distintos sistemas y aplicaciones, atendiendo a las necesidades de los usuarios en los tres niveles de gestión de la información. • El objetivo del DBMS es suministrar la interfaz entre el conjunto de los datos y dichos usuarios. • El DBMS también debe proporcionar a los otros usuarios (analistas, programadores, administradores) las correspondientes herramientas que les permitan un adecuado desarrollo de sus funciones.
SISTEMA DE GESTION DE BASE DE DATOS • La base de datos es un depósito único de datos para toda la organización, por lo que debe ser capaz de integrar los distintos sistemas y aplicaciones, atendiendo a las necesidades de los usuarios en los tres niveles de gestión de la información. • El objetivo del DBMS es suministrar la interfaz entre el conjunto de los datos y dichos usuarios. • El DBMS también debe proporcionar a los otros usuarios (analistas, programadores, administradores) las correspondientes herramientas que les permitan un adecuado desarrollo de sus funciones.
SISTEMA DE GESTION DE BASE DE DATOS • Las funciones principales son: • Crear y organizar la Base de datos. • Establecer y mantener las trayectorias de acceso a la base de datos de tal forma que los datos puedan ser accedidos rápidamente. • Manejar los datos de acuerdo a las peticiones de los usuarios. • Registrar el uso de las bases de datos. • Interacción con el manejador de archivos. • Respaldo y Recuperación. • Control de concurrencia. Acceso a la data por un usuario y restringir a otro. • Seguridad de la data: Encriptación, restricción de acceso. • Integridad: Confiabilidad, calidad de relación, no deformación de la estructura.
ABSTRACCION DE DATOS Un objetivo importante de un sistema de base de datos es proporcionar a los usuarios una visión abstracta de los datos, es decir, el sistema esconde ciertos detalles de cómo se almacenan y mantienen los datos. Sin embargo para que el sistema sea manejable, los datos se deben extraer eficientemente. Los 3 niveles diferentes de abstracción para simplificar la interacción de los usuarios con el sistema, son: Nivel Físico Nivel Lógico Nivel de Visión
ABSTRACCION DE DATOS NIVEL FÍSICO (INTERNO) Se define la estructura física de la Base de Datos: dispositivos de almacenamiento físico, direcciones físicas, estrategias de acceso, relaciones, índices, apuntadores, etc.
ABSTRACCION DE DATOS NIVEL LÓGICO (CONCEPTUAL) Describe qué datos son almacenados realmente en la base de datos y las relaciones que existen entre los mismos, describe la base de datos completa en términos de su estructura de diseño. El nivel conceptual de abstracción lo usan los administradores de bases de datos, quienes deben decidir qué información se va a guardar en la base de datos.
ABSTRACCION DE DATOS • NIVEL LÓGICO (CONCEPTUAL) • Consta de las siguientes definiciones: • Definición de los datos: • Se describen el tipo de datos y la longitud de campo todos los elementos direccionales en la base. Los elementos por definir incluyen artículos elementales (atributos), totales de datos y registros conceptuales (entidades). • Relaciones entre datos: • Se definen las relaciones entre datos para enlazar tipos de registros relacionados para el procesamiento de archivos múltiples.
ABSTRACCION DE DATOS EN EL NIVEL CONCEPTUAL, LA BASE DE DATOS APARECE COMO UNA COLECCIÓN DE REGISTROS LÓGICOS, SIN DESCRIPTORES DE ALMACENAMIENTO. EN REALIDAD LOS ARCHIVOS CONCEPTUALES NO EXISTEN FÍSICAMENTE, LA TRANSFORMACIÓN DE REGISTROS CONCEPTUALES A REGISTROS FÍSICOS PARA EL ALMACENAMIENTO SE LLEVA A CABO POR EL SISTEMA Y ES TRANSPARENTE AL USUARIO.
ABSTRACCION DE DATOS NIVEL DE VISIÓN (EXTERNO) Es lo que el usuario final puede visualizar del sistema terminado, describe sólo una parte de la base de datos al usuario acreditado para verla. El sistema puede proporcionar muchas visiones para la misma base de datos.
INDEPENDENCIA DE DATOS Esta arquitectura de tres niveles nos proporciona la deseada independencia de datos, que se refiere a la protección contra los programas de aplicación que puedan originar modificaciones cuando se altera la organización física o lógica de la base de datos. Existen 2 niveles de independencia de datos: Independencia Física de datos: Capacidad de modificar el esquema físico sin provocar que se vuelvan a escribir los programas de aplicación. Independencia Lógica de datos: Capacidad de modificar el esquema conceptual sin provocar que se vuelvan a escribir los programas de aplicación.
MODELO DE DATOS MODELO: Es el conjunto de abstracciones que conforman una visión parcial de una parte del mundo. En base de datos. esta representación se elabora en forma gráfica. MODELAR: Consiste en definir un mundo abstracto y teórico tal que las conclusiones que se puedan sacar de el coinciden con las manifestaciones aparentes del mundo real.
MODELO DE DATOS MODELO DE DATOS: Es una colección de herramientas conceptuales que permiten describir los datos, las relaciones que existen entre ellos, la semántica asociada a los datos y restricciones de consistencia. Los modelos de datos son la base para los lenguajes de datos. El nivel de abstracción de los lenguajes de datos es menor, ya que son el modelo mas una sintaxis.