Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
BASE DE DATOS
Nombre de la Licenciatura
INGENIERÍA EN SISTEMAS
Nombre de la Tarea
BASES DE DATOS
Unidad #1
INTRODUCCIÓN A LAS BASES DE DATOS
Qué son las bases de datos: Una base de datos es una colección de información organizada de forma
que un programa de ordenador pueda seleccionar rápidamente los fragmentos de datos que necesite.
Una base de datos es un sistema de archivos electrónico. Las bases de datos tradicionales se organizan
por campos, registros y archivos.
Existen programas denominados sistemas gestores de bases de datos, abreviado SGBD (del
inglés database management system o DBMS), que permiten almacenar y posteriormente acceder a los
datos de forma rápida y estructurada. Las propiedades de estos DBMS, así como su utilización y
administración, se estudian dentro del ámbito de la informática.
Las aplicaciones más usuales son para la gestión de empresas e instituciones públicas; También son
ampliamente utilizadas en entornos científicos con el objeto de almacenar la información experimental.
Aunque las bases de datos pueden contener muchos tipos de datos, algunos de ellos se encuentran
mutuamente protegidos por las leyes de varios países. Por ejemplo, en España, los datos personales se
encuentran protegidos por la Ley Orgánica de Protección de Datos de Carácter Personal (LOPD), en México
por la Ley Federal de Transparencia y Acceso a la Información Pública Gubernamental y en Argentina
la Ley de Protección de Datos Personales
TIPOS DE BASES DE DATOS: Las bases de datos pueden clasificarse de varias maneras, de acuerdo al
contexto que se esté manejando, o la utilidad de la misma.
Según la variabilidad de los datos almacenados:
2
Unidad #: Nombre de la unidad
Nombre de la materia
Bases De Datos Estáticas: Estas son bases de datos de solo 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: Estas son bases de datos donde la información almacenada se modifica con
el tiempo, permitiendo operaciones como actualización, borrado y adición de datos, además de las
operaciones fundamentales de consulta. Un ejemplo de esto puede ser la base de datos utilizada en un
sistema de información de un supermercado, una farmacia, un videoclub o una empresa.
Modelos De Bases De Datos: Además de la clasificación por la función de las bases de datos, estas
también se pueden clasificar de acuerdo a su modelo de administración de datos. Un modelo de datos es
básicamente una "descripción" de algo conocido como contenedor de datos (algo en donde se guarda la
información), así como de los métodos para almacenar y recuperar información de esos contenedores. 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: Éstas son bases de datos que, como su nombre indica, almacenan su
información en una estructura jerárquica. En este modelo los datos se organizan en una forma similar a
un árbol (visto al revés), en donde un nodo padre de información puede tener varios hijos. El nodo que no
tiene padres es llamado raíz, y a los nodos que no tienen hijos se los conoce como hojas.
Las bases de datos jerárquicas son especialmente útiles en el caso de aplicaciones que manejan un gran
volumen de información y datos muy compartidos permitiendo crear estructuras estables y de gran
rendimiento.
Una de las principales limitaciones de este modelo es su incapacidad de representar eficientemente la
redundancia de datos.
Base 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 (posibilidad
no permitida en el modelo jerárquico).Fue una gran mejora con respecto al modelo jerárquico, ya que
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.
Bases De Datos Transaccionales: Son bases de datos cuyo único fin es el envío y recepción de datos a
grandes velocidades, estas bases son muy poco comunes y están dirigidas por lo general al entorno de
análisis de calidad, datos de producción e industrial, es importante entender que su fin único es recolectar
3
Unidad #: Nombre de la unidad
Nombre de la materia
y recuperar los datos a la mayor velocidad posible, por lo tanto la redundancia y duplicación de
información no es un problema como con las demás bases de datos, por lo general para poderlas
aprovechar al máximo permiten algún tipo de conectividad a bases de datos relacionales.
Bases De Datos Relacionales: Éste es el modelo utilizado en la actualidad para modelar problemas
reales y administrar datos dinámicamente. Tras ser postulados sus fundamentos en 1970, de los
laboratorios IBM en San José, no tardó en consolidarse como un nuevo paradigma en los modelos de base
de datos. Su idea fundamental es el uso de "relaciones". Estas relaciones podrían considerarse en forma
lógica como conjuntos de datos llamados "tuplas". Pese a que ésta es la teoría de las bases de datos
relacionales creadas por Codd, la mayoría de las veces se conceptualiza de una manera más fácil de
imaginar.
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).
En este modelo, el lugar y la forma en que se almacenen los datos no tienen relevancia (a diferencia de
otros modelos como el jerárquico y el de red). Esto tiene la considerable ventaja de que es más fácil de
entender y de utilizar para un usuario esporádico de la base de datos. La información puede ser
recuperada o almacenada mediante "consultas" que ofrecen una amplia flexibilidad y poder para
administrar la información.
El lenguaje más habitual para construir las consultas a bases de datos relacionales es SQL, Structured
Query Language o Lenguaje Estructurado de Consultas, un estándar implementado por los principales
motores o sistemas de gestión de bases de datos relacionales.
Durante su diseño, una base de datos relacional pasa por un proceso al que se le conoce como
normalisazion de una base de datos
Durante los años 80 la aparición de BASE produjo una revolución en los lenguajes de programación y
sistemas de administración de datos. Aunque nunca debe olvidarse que Base no utilizaba SQL como
lenguaje base para su gestión.
Bases De Datos Multidimensionales: Son bases de datos ideadas para desarrollar aplicaciones muy
concretas, como creación de cubos olap Básicamente no se diferencian demasiado de las bases de datos
relacionales (una tabla en una base de datos relacional podría serlo también en una base de datos
multidimensional), la diferencia está más bien a nivel conceptual; en las bases de datos
multidimensionales los campos o atributos de una tabla pueden ser de dos tipos, o bien representan
dimensiones de la tabla, o bien representan métricas que se desean estudiar.
Bases De Datos Orientadas a Objetos: Este modelo, bastante reciente, y propio de los modelos
informáticos enfocado a objetos, 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:
4
Unidad #: Nombre de la unidad
Nombre de la materia
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.
En bases de datos orientadas a objetos, los usuarios pueden definir operaciones sobre los datos como
parte de la definición de la base de datos. Una operación (llamada función) se especifica en dos partes. La
interfaz (o signatura) de una operación incluye el nombre de la operación y los tipos de datos de sus
argumentos (o parámetros). La implementación (o método) de la operación se especifica separadamente
y puede modificarse sin afectar la interfaz. Los programas de aplicación de los usuarios pueden operar
sobre los datos invocando a dichas operaciones a través de sus nombres y argumentos, sea cual sea la
forma en la que se han implementado. Esto podría denominarse independencia entre programas y
operaciones.
Bases De Datos Documentales: Permiten la indexación a texto completo, y en líneas generales realizar
búsquedas más potentes. Tesaurus es un sistema de índices optimizado para este tipo de bases de datos.
Bases De Datos Deductivas: Un sistema de base de datos deductiva, es un sistema de base de datos,
pero con la diferencia de que permite hacer deducciones a través de inferencias. Se basa principalmente
en reglas y hechos que son almacenados en la base de datos. Las bases de datos dductivas son también
llamadas bases de datos lógicas, a raíz de que se basa en lógica matemática.
La base de datos y el software SGBD pueden estar distribuidos en múltiples sitios conectados por una
red.
2. Distribuidos heterogéneos: Da lugar a los SGBD federados o sistemas multibase de datos en los que los
SGBD participantes tienen cierto grado de autonomía local y tienen acceso a varias bases de datos
autónomas preexistentes almacenados en los SGBD, muchos de estos emplean una arquitectura cliente-
servidor.
Estas surgen debido a la existencia física de organismos descentralizados. Esto les da la capacidad de unir
las bases de datos de cada localidad y acceder así a distintas universidades, sucursales de tiendas,
etcétera.
5
Unidad #: Nombre de la unidad
Nombre de la materia
TAREA-1
Es momento de realizar la tarea del Tema: bases de datos, la cual enviarás utilizando el Formato de
tareas.
Realiza una investigación sobre los manejadores de bases de datos más utilizados (Oracle, SQL
Server, MySql, PostgreSQL).
Analiza los aspectos más relevantes y diseña una tabla comparativa entre ellos, incluyendo una
conclusión donde indiques cuál es el manejador de base de datos más completo (según lo
investigado). Es importante que justifiques la respuesta.
Base de Datos ORACLE: Oracle la Primera Base de Datos Diseñada para Grid Computing, es un sistema
de gestión de base de datos relacional fabricado por Oracle Corporation. Oracle es básicamente un
herramienta cliente/servidor para la gestión de base de datos la gran potencia que tiene y su elevado
precio hace que solo se vea en empresas muy grandes y multinacionales, por norma general. Oracle
Corporation :es una de las mayores compañías de software del mundo. Sus productos van desde bases de
datos (Oracle) hasta sistemas de gestión. Cuenta además, con herramientas propias de desarrollo para
realizar potentes aplicaciones, como Oracle Designer
CARACTERISTICAS PRINCIPALES:
Desarrollado sobre Oracle Database, Oracle Content Database ha sido diseñada para que las
organizaciones puedan controlar y gestionar grandes volúmenes de contenidos no estructurados en un
único repositorio con el objetivo de reducir los costes y los riesgos asociados a la pérdida de información.
Estructuras de Oracle: Una BD Oracle tiene una estructura física y una estructura lógica, La estructura
física se corresponde a los ficheros del sistema operativo. La estructura lógica está formada por los
tablespace y los objetos de un esquema de BD.
6
Unidad #: Nombre de la unidad
Nombre de la materia
Estructura física: Una B.D. tiene uno o más ficheros de datos. Estos ficheros son de tamaño fijo y se
establecen en el momento en que se crea la base de datos o en el momento en el que se crean
tablespaces. Los datos del fichero de datos son leídos cuando se necesitan y situados en una caché de
memoria compartida para que el próximo acceso a los mismos sea más rápido.
Base de Datos SQL Server: SQL Server es un sistema de gestión de bases de datos relacionales
(RDBMS) de Microsoft que está diseñado para el entorno empresarial. SQL Server se ejecuta en T-SQL
(Transact -SQL), un conjunto de extensiones de programación de Sybase y Microsoft que añaden varias
características a SQL estándar, incluyendo control de transacciones, excepción y manejo de errores,
procesamiento fila, así como variables declaradas.
Estructura Lógica:
Desde el punto de vista lógico, la base de datos debe tener al menos 1 “FileGroup” el cual contiene a toda
la metadata de la misma base de datos, es decir tablas y vistas de sistema, a este “FileGroup” inicial se le
conoce como “Primario” y está presente en todas las bases de datos. Todos los objetos de usuario que
contengan data, ya sean tablas o índices, deben estar ligados a un “FileGroup”, esto se puede definir al
momento de ejecutar la sentencia DDL de creación del objeto, si no se indica a que “FileGroup” estará
ligado ese objeto, este pertenecerá al “FileGroup” por defecto definido en la base de datos. La base de
datos solo puede tener definido 1 solo default “FileGroup”.
Estructura Física:
7
Unidad #: Nombre de la unidad
Nombre de la materia
Desde el punto de vista físico, como ya hemos visto, tenemos los “DataFiles” que los en realidad los
archivos de datos, es decir donde se guarda toda la información de la base de datos. Un “DataFile” solo
puede pertenecer a 1 “FileGroup”.
Internamente los “DataFiles” están divididos en “Extends” y estos a su vez en “Pages”. Las “Pages” son la
unidad minima de almacenamiento dentro de la base de datos. Un “Page” tiene 8 Kb de tamaño en
espacio de disco. Un “Extend” tiene 8 “Pages” contiguas que lo conforman, es decir, un “Extend” tiene
como tamaño 64 Kb de espacio en disco.
Arquitectura de Bases de Datos SQL Server: La arquitectura interna de las bases de datos en SQL Server
están compuestas por 2 tipos de estructura, la estructura lógica y la estructura física. Es muy
importante conocer cómo es que estas estructuras están compuestas y cuál es la relación que tienen
los objetos de base de datos con cada una de estas estructuras.
8
Unidad #: Nombre de la unidad
Nombre de la materia
índices por tabla, Gestión de usuarios y passwords, manteniendo un muy buen nivel de seguridad en los
datos, Condición de open source de MySQL hace que la utilización sea gratuita y se puede modificar con
total libertad, Se puede descargar su código fuente. Esto ha favorecido muy positivamente en su
desarrollo y continuas actualizaciones, Es una de las herramientas más utilizadas por los programadores
orientados a Internet, Infinidad de librerías y otras herramientas que permiten su uso a través de gran
cantidad de lenguajes de programación, MYSQL, es el manejador de base de datos considerado como el
más rápido de Internet, Gran rapidez y facilidad de uso, Infinidad de librerías y otras herramientas que
permiten su uso a través de gran cantidad de lenguajes de programación, Fácil instalación y configuración.
ESTRUCTURA DE MySQL.
9
Unidad #: Nombre de la unidad
Nombre de la materia
superior al uso de bloqueos por tabla o por filas común en otras bases, eliminando la necesidad del
uso de bloqueos explícitos...
Adicionalmente los usuarios pueden crear sus propios tipos de datos, los que pueden ser por completo
indexables gracias a la infraestructura GiST de PostgreSQL. Algunos ejemplos son los tipos de
datos GIS creados por el proyecto PostGIS, PostgreSQL soporta funciones que retornan "filas", donde la
salida puede tratarse como un conjunto de valores que pueden ser tratados igual a una fila retornada por
una consulta (query en inglés).
Las funciones pueden ser definidas para ejecutarse con los derechos del usuario ejecutor o con los
derechos de un usuario previamente definido. El concepto de funciones, en otros DBMS, son muchas veces
referidas como "procedimientos almacenados" (stored procedures en inglés).
Arquitectura
PostgreSQL está basado en una arquitectura cliente-servidor. El programa servidor se llama Postgres y
entre los muchos programas cliente tenemos, por ejemplo, pgaccess (un cliente gráfico) y psql (un cliente
en modo texto).
10
Unidad #: Nombre de la unidad
Nombre de la materia
TABLA COMPARATIVA
11
Unidad #: Nombre de la unidad
Nombre de la materia
DIFERENCIAS:
MySQL: se instala a partir de sus rpm resultando realmente sencillo. El proceso de instalación crea las
bases de datos necesarias para funcionar. MySQL le acompaña suficiente documentación de calidad.
ORACLE: resulta muy difícil de instalar. No dispone de un fichero rpm de instalación. Incorpora
documentación para poder ejecutar el instalador. Se trata de un rudimentario asistente que realiza
preguntas al usuario o administrador y presenta una lista de componentes a elegir.
PostgreSQL: El PGDG solo desarrolla el Motor de Datos y un número pequeño de utilidades, para
potenciar el trabajo con PostgreSQL suele ser necesario añadir utilidades externas creadas especialmente
para este motor, algunas de estas herramientas son:
SQL Sever: Con las licencias de SQL Server resulta más simple y económico elegir la edición correcta. A
diferencia de otros proveedores principales, no es necesario pagar por complementos costosos para que
funcionen las aplicaciones más exigentes debido a que ya están integradas todas las características y
capacidades
Bibliografia:
12
Unidad #: Nombre de la unidad
Nombre de la materia
Microsoft company. (2004). Licencias de SQL Server. 2005, de Microsoft Sitio web:
https://www.microsoft.com/
Ingenieros en Programación. (2011). Aplicaciones y Plataformas Servis. 2012, de ORACLE Sitio
web: https://www.oracle.com/
Rafael Martinez. (2009). PostgreSQL. 2013, de Some Rights Reserved Sitio web:
http://www.postgresql.org.es/
Fundación Wikipedia. (2000). Base de Datos. 2005, de Wikipedia Sitio web:
https://es.wikipedia.org
13