miércoles, 16 de noviembre de 2016

Subclases


Las subclases son utilizadas particularmente cuando una entidades esta asociada a un grupo de instancias con algunas particularidades.


Especialización.- La utilización permite difinir a las diversas clases con una superclase, para ello se denomina a este proceso especialización, se inicia cuando se divide subentidades para detallar diversos atributos en si mismas. Existen diversos tipos de especialización como relaciones que permiten su relación con otras entidades, atributos específicos los cuales poseen varios atributos diferenciadores.

La especialización debe ser tomada de forma en que los atributos nulos no sean demasiado, realizar el problema de forma razonada para su fácil adaptación así como una cantidad de entidades suficientes.
Tipos de Unión, no cuenta con atributos propios y heredados por lo cual necesita de las superclases y que intervengan una de ellas a la vez.

Generalización.- Este tipo de relación existe en un nivel mas alto, la superclase y uno en conjuntos de entidades débiles, la subclase. Este tipo de generalización permite obtener las entidades del nivel mas bajo hereden de entidades de alto nivel.



Es necesario representar al modelo de forma adecuada, evitar la redundancia de datos para optimizar el modelo de manera correcta, utilizar la simplicidad de entidades, solo aparecerá un ciclo cuando este sea muy necesario. Las entidades pueden eliminarse basándose en su tipo de relación 1 a 1.

viernes, 25 de marzo de 2016

Diagramas - Representación

Diagrama de Entidad-Relación

Para un mejor entendimiento de este tema es necesario establecer varios símbolos y palabras claves los cuales ayudaran a la realización de los diversos modelados para una base de datos.



Atributos: Son aquellas propiedades de entidades en una serie de conjuntos de entidades, para su representación se utilizan óvalos.
Entidades: Son aquellos objetos que existe, o pueden ser distinguibles de algún tipo instancia, para ello se representan en rectángulos y objetos reales.
Relaciones: Denominadas aquellas conexiones entre varias entidades, estas se representan mediante rombos los cuales indican enlaces.
Lineas: Permiten enlazar atributos con entidades o viceversa.

Entidades




Entidades Débiles.- Son aquellas entidades que no contienen atributos lo suficientemente fuertes para formar una clave primaria, para ello necesita de otra para existir.
Atributos Derivados.- Son aquellos valores que pueden derivarse de otros atributos o de entidades.
Atributos Multivalorados.- Son aquellos que pueden contener varios valores para una misma entidad.
Atributos Claves.- Son aquellas claves candidatas, las cuales sirven para identificar una ocurrencia de una entidad.



Tipos de Relaciones

Recursiva.- Aquella entidad que se puede relacionar consigo misma.



Atributos.- Son aquellas que pueden tener atributos asociados y se caracterizan por representar atributos de las entidades.
Ternaria.- Son aquellas relaciones donde se pueden relacionar con tres entidades.

Para disminuir el grado de una relación es necesario realizar un reemplazo de una relación binaria por una entidad extra.



Restricciones


Cardinalidad.- Dependiendo del tipo de relación sera necesario la participación de varios conjuntos de entidades, esta permite representar el numero de entidades con las cuales se puede relacionar. 
Uno a Uno(1:1).- Donde se relaciona un registro de la entidad A con un solo registro de una entidad B.
Uno a Varios(1:N).- Donde se relaciona un registro de la entidad A con cero o varios registros de una entidad B.
Varios a Uno(N:1).- Donde una relacion con cero o muchos registros de la entidad A a un registro de una entidad de B.
Varios a Varios(N:M).- Donde una entidad de A puede verse relacionada con 0 o muchas entidades a B.

martes, 22 de marzo de 2016

Lenguajes de Base de Datos

LENGUAJES SQL
Definición: Un lenguaje de programación fue diseñado con el afán de ser utilizado en diversos procesos para la construcción y codificación de aplicaciones donde intervienen las bases de datos. Un lenguaje SQL se divide en áreas o niveles.

Áreas: Se utiliza para la definición, manipulación y vistas de los datos.
Niveles: Los cuales a su vez su subdividen en alto nivel los no procedimientos y en bajo nivel los procedimientos


Tipos de Lenguajes


Lenguaje DDL: Este tipo de lenguaje se utiliza para establecer estructuras de datos, como ejemplos se encuentra Alter, drop y Create.
Lenguaje DML: Permite usar las cuatro operaciones de una base de datos, como select, insert, delete y update.
Lenguaje DCL: Este lenguaje incluye una serie de comandos SQL, la cual permite el control el acceso a la base de datos.
Lenguaje de Almacenamiento: Usado para elegir un esquema interno.


Interfaz de Usuario


Es aquel medio el cual permite interactuar entre la maquina, dispositivo u objeto hacia un usuario final, el uso de esta permite que sea realmente fácil.


Modelos de Datos

Son aquellas herramientas conceptuales, donde permiten describir datos, ubicar relaciones ademas de establecer ciertas restricciones de consistencia. La implementación de los diversos modelos como:


Modelo ER o Entidad Relación.- Consta de una ciertas colecciones de objetos a estas denominadas entidades y las relaciones que estas tienen para realizar el diseño y posterior implementación de una base de datos.




Modelo Relacional.- Dicho modelo se caracteriza por tener un nivel de abstracción menor al modelo ER, sin embargo este modelo utiliza varias tablas donde se representan varios datos y las relaciones entre estos, estas tablas se componen de columnas que contienen un nombre único.


Modelo Orientado a Objetos.- Es muy similar al modelo E-R, ya que se lo ve de manera extendida con diversas nociones, métodos y encapsulacion de los objetos.


Modelo Semiestructurado.- Este modelo permite dar una especificación mas completa a los datos ya que estos pueden ser individuales del mismo y a su vez contener diferentes conjuntos como atributos.


Modelo de Red.- Sus datos son derivados del modelo relacional, sin embargo el modelado de dichos datos era complicado por su tipo de implementación subyacente.

Biografía:

Wikipedia. (14 de Marzo de 2016). Bases de Datos. Obtenido de:https://es.wikipedia.org/wiki/Base_de_datos

Gestión de Base de Datos


Sistema de Gestión de Archivos


Se puede tomar de ejemplo la manera en como interactuan los archivos de Windows, cuando se realiza una interacción entre carpetas como mover, copiar y pegar. Este sistema es parte del sistema operativo y permite optimizar el rendimiento, además de ofrecer confiabilidad con sus datos, resistente a tolerancias brinda un soporte para dispositivos de E/S para varios usuarios.

Funciones:

1.- Los dispositivos de E/S interactuan en bloques.
2.- Su directorio permite ubicar los diversos archivos y atributos.
3.- En bloques disponibles se puede asignar archivos.
4.- El control que se lleva en los sistemas compartidos permite ciertos niveles de acceso a los usuarios.

Desventajas: 

1.- Su flexibilidad no permite un trabajo adecuado.
2.- No existen restricciones de integridad, se debe cumplir ciertas indicaciones durante la ejecución de los programas.
3.- Sus búsquedas no permiten que sean rápidas, consultas complejas o la modificación de diversos archivos al mismo tiempo.


BASES DE DATOS


Son aquellas colecciones de datos relacionados los cuales son parte de un sistema mucho mayor y permiten cumplir las necesidades que requiera una organización. 

1.- Utilización de catalogo de meta-datos, como lo son los datos auto descriptivos
2.- Transacciones multi-usuario así mismo permite compartir los datos y realizar múltiples visitas en tiempo real.

La interacción realizada va de acuerdo a una serie de pasos ordenados sin embargo su ciclo es repetitivo, el mismo proceso regresa la información al solicitante.

1.- Solicitar registros.
2.- Recibir información de la pagina.
3.- Realizar las operaciones solicitadas E/S.
4.- Almacena los datos en una base. 

Tipos de Sistemas Gestores de Base de Datos

El propósito de usar este tipo de gestores radica en el uso del modelo relacional, el cual permite gestionar datos comerciales, administrativos u otros tipos de datos, según los siguientes modelos. Distintos modelos proveen métodos avanzados de gestión de archivos como sistemas de información geográfica, bases de dato multimedia  distribuidas.

Modelo de datos basados en registros:

- Modelo Jerárquico.
- Modelo de Red.
- Modelo Relacional.

Modelo lógico basado en objetos

- Modelo Entidad - Relación 
- Modelo de Objetos


Ventajas y Desventajas del uso de Bases de datos

Ventajas

Permiten involucrar datos de manera consistente, un mayor almacenamiento e independencia de datos durante la ejecución de interfaces.
- Restricciones de integridad u accesos complejos entre datos, así mismo provee diferentes formas se seguridad como realización de copias de seguridad y recuperación de datos.

Desventajas

- Dependiendo del tamaño de almacenamiento de datos este puede ser costoso, así mismo interviene una complejidad significativa durante el costo de implementación y un sobre costo de ejecución.



ARQUITECTURA - BASES DE DATOS

Se presentan a niveles según la manera en como procesan los datos:

Nivel Interno 

Se relaciona con los detalles de utilización de medios físicos como discos duros, memoria otros componentes necesarios para administrar la base de datos, ademas requiere que este sea rápido y eficiente en espacio. Presenta una descripción de bajo nivel


Nivel Conceptual

Permite administrar los datos, así mismo el diseño tiene que ser considerado ya que se moldeara una estructura lógica de almacenamiento, como tablas, filas y columnas. Presenta una descripción de alto nivel.


Nivel Externo

Visualización de los datos por los usuarios finales, la interacción entre aplicaciones, acceso parcial a ciertos tipos de datos y la visualización de algunas tablas que son requeridas por el usuario. Presenta una descripción especifica de alto nivel.



Estos datos requieren una independencia para que no se vean afectados durante su utilización, los cambios en el esquema físico no los afecta, el incremento de columnas no afecta las vistas así mismo solo se vera afectada las columnas. Las denominadas transacciones son reflejadas cuando se realiza algún tipo de transacción donde se necesita un cambio consistente de los datos, así mismo en caso de fallos se asegura que dichos procesos no afecten al usuario o al sistema,



ROLES Y ACTORES DE UNA BASE DE DATOS


Administrador de datos se requiere que este ejecute varios procedimientos para:

- Desarrollo de estándares.
- Ejecutar procedimientos y reglas. 
- Diseño lógico de la información en la base de datos. 
- Planificación de la base de datos.

Administrador de bases de datos, requiere implementar:

- Un diseño para el control y acceso como contraseñas y seguridades varias.
- Mantenimiento de la base para equilibrar un rendimiento adecuado.
- Respaldos de información, como copias de seguridad.


Diseñador de la base de datos

- Diseño lógico de los datos.
- Abstracción de la información, su organización y el uso de estos datos.


Desarrollador de Aplicaciones

Implementación de otros sistemas, para web, sistemas de archivos y email.


Usuarios Finales

Realizan consultas, utilizan aplicaciones finales, ademas de reportes y análisis.



ROLES Y ACTORES DE UNA BASE DE DATOS


Dependiendo del nivel y área se requiere la implementación de diferentes procedimientos, según el área se requiere una manipulación de datos, vistas y definiciones. Según el nivel puede ser 

Alto nivel : No procedimientos
Bajo nivel: Procedimientos normales. 

Según la manera en la cual se realice la programación se necesitara de implementar distintas interfaces para interactuar con la base de datos, así mismo pueden ser mediante formularios u aplicaciones web que permitan una mejor interacción con los usuarios finales.



Biografía:


Wikipedia. (17 de Marzo de 2016). Sistema Gestion de Archivos de Base de Datos. Obtenido de: https://es.wikipedia.org/wiki/Sistema_de_Gesti%C3%B3n_de_Bases_de_Datos

Modelos de Base de Datos



Modelo de Datos 


Un modelo de datos jerárquico
Es un modelo de datos en el cual los datos son organizados en una estructura parecida a un árbol. La estructura permite a la información que repite y usa relaciones padre/Hijo: cada padre puede tener muchos hijos pero cada hijo sólo tiene un padre. Todos los atributos de un registro específico son catalogados bajo un tipo de entidad.

Resultado de imagen para base de datos jerarquica


Base de datos de red
Es una base de datos conformada por una colección o set de registros, los cuales están conectados entre sí por medio de enlaces en una red. El registro es similar al de una entidad como las empleadas en el modelo relacional.


Modelo Relacional
Es un modelo de datos basado en la lógica de predicados y en la teoría de conjuntos.
Resultado de imagen para BASE DE DATOS RELACIONAL

Modelo Estrella
Es un modelo de datos que tiene una tabla de hechos que contiene los datos para el análisis, rodeada de las tablas de dimensiones. Este aspecto, de tabla de hechos (o central) más grande rodeada de radios o tablas más pequeñas es lo que asemeja a una estrella, dándole nombre a este tipo de construcciones.

Resultado de imagen para BASE DE DATOS ESTRELLA


Principales productos DBMS en el mercado


Resultado de imagen para DBMS
  • Advantage Database
  • dBase
  • FileMaker
  • Fox Pro
  • gsBase
  • IBM DB2: Universal Database (DB2 UDB)
  • IBM Informix
  • Interbase de CodeGear, filial de Borland
  • MAGIC
  • Microsoft Access
  • Microsoft SQL Server
  • NexusDB
  • Open Access
  • Oracle.
  • Paradox
  • PervasiveSQL
  • Progress (DBMS)
  • Sybase ASE
  • Sybase ASA
  • Sybase IQ
  • WindowBase
  • IBM IMS Base de Datos Jerárquica
  • CA-IDMS
Entre los mas destacados encontramos
SqlServer
Alta Disponibilidad y Recuperación Ante Desastres: proporciona redundancia dentro de centros de datos y entre ellos, y permite una rápida conmutación por error de las aplicaciones, ofreciendo la máxima disponibilidad y protección de datos a las aplicaciones críticas.
Seguridad Avanzada: Cifrado de Datos Transparente (TDE) reduce la complejidad del desarrollo de aplicaciones que necesitan datos cifrados. Es posible crear nuevos roles de servidor adaptados a distintas organizaciones que separen los distintos administradores según los roles. La Autenticación de Base de Datos Independiente mejora el cumplimiento al permitir que los usuarios se autentiquen directamente en bases de datos de usuario sin inicios de sesión.
Compresión Avanzada: SQL Server reduce el tamaño de las tablas, los índices o un subconjunto de sus particiones al almacenar tipos de datos de longitud fija en un formato de almacenamiento de longitud variable y reducir los datos redundantes. Del mismo modo, con la reducción el tamaño de las copias de seguridad de SQL, los clientes ahorran mucho espacio en disco y tiempo (gracias a la aceleración en tiempo de Backup y Restore).
Calidad de Datos: Los clientes pueden tener confianza en la calidad de datos usando conocimientos de la organización para generar perfiles, limpiar y buscar coincidencias de datos.
Oracle
Entre las ventajas de operatividad se pueden resaltar que Oracle es el motor de base de datos relacional más usado a nivel mundial, trabaja bajo cualquier plataformas, desde una Pc hasta un supercomputador.

Su mayor problema o desventaja es que el costo de la licencia es muy elevado, sobre todo en comparación con los precios que se suelen cobrar por el alojamiento web compartido. 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.

MySQL
El servidor de base de datos MySql, así como sus principales aplicaciones añadidas, gestores de datos, generadores de consultas, entre otros, ha sido escrito en C y en C++, permitiendo ser probado a través de una gran variedad de compiladores diferentes. Se ha implementado el uso de GNU Autoconfig, haciendo posible la portabilidad de MySQL a todos los sistemas de avanzada que usen compilador de C++ e implementación de hilos (threads o subprocesos) POSIX. De tal forma que, MySQL está compilado establemente en las siguientes plataformas:

  • AIX
  • Amiga
  • ESDL
  • Digital UNIX
  • Free BSD
  • HP-UX
  • Linux
  • Mac OS X
  • Novell Netware
  • Open BSD
  • OS/2
  • SCO OpenServer
  • SCO UnixWare
  • SSGI Irix
  • Solaris
  • Sun OS
  • Tru64 Unix
  • Windows
Los factores que determinan si la plataforma es o no, más o menos estable para un servidor MySQL con alto volumen de datos y aplicaciones críticas son:
  • Estabilidad general de la biblioteca de subprocesos.
  • La capacidad del núcleo o kernel del sistema operativo y de la biblioteca de subprocesos.
  • El rendimiento y estabilidad general del sistema de archivos.
  • El nivel de experiencia que los desarrolladores de MySQL AB posean sobre una determinada plataforma.
  • El volumen de pruebas realizadas por MySQL AB sobre configuraciones similares.
  • La cantidad de usuarios que han ejecutado MySQL con éxito en la misma plataforma y en configuraciones similares.

Referencias
PostgreSQL [Homepage]. Consultado el día 19 de Septiembre del 2016 de la pagina:


  • http://www.postgresql.org.es/sobre_postgresqL
  • http://danielpecos.com/docs/mysql_postgres/x15.html
  • MySQL: página oficial
  • Heurtel Olivier (2009). PHP y MySQL Domine el desarrollo de un sitio Web dinámico e interactivo. Ediciones ENI.
  • Spona Helma (2010). Programación de bases de datos con MYSQL y PHP. Marcombo.
  • Quigley Ellie, Gargenta Marko (2007). PHP y MySQL práctico. Para diseñadores y programadores Web. Anaya Multimedia
  • Smyth Neil (2010). MySQL 5 Essentials. eBookFrenzy.