jueves, 27 de septiembre de 2012

Modelo Entidad-Relacion E-R

MODELO E-R.

Consiste en buscar las entidades que describan los objetos que intervienen en un problema y las relaciones entre esas entidades. Este modelo representa a la realidad a través de un Esquema gráfico empleando los terminología de Entidades, que son objetos que existen y son los elementos principales que se identifican en el problema a resolver con el diagramado y se distinguen de otros por sus características particulares denominadas Atributos, el enlace que rige la unión de las entidades esta representada por la relación del modelo.
Antes de crear físicamente estas tablas en el ordenador se debe realizar un modelo de datos. Se suele cometer el error de ir creando nuevas tablas a medida que se van necesitando, haciendo así el modelo de datos y la construcción física de las tablas simultáneamente. El resultado de esto acaba siendo un sistema de información erroneo y con datos dispersos que terminan por no cumplir adecuadamente los requisitos necesarios.

ENTIDADES Y RELACIONES.

  • ENTIDAD:  Objeto del mundo real sobre el que queremos almacenar información. Las entidades están compuestas de atributos que son los datos que definen el objeto. De entre los atributos habrá uno o un conjunto de ellos que no se repite; a este atributo se llama clave de la entidad. En toda entidad siempre hay al menos una clave que en el peor de los casos estará formada por todos los atributos de la tabla. Ya que pueden haber varias claves y necesitamos elegir una, lo haremos atendiendo a estas normas:

  1. Que sea única.
  2. Que se tenga pleno conocimiento de ella.- ¿Por qué en las empresas se asigna a cada cliente un número de cliente?.
  3. Que sea mínima, ya que será muy utilizada por el gestor de base de datos.


  • RELACIÓN: Asociación entre entidades, sin existencia propia en el mundo real que estamos modelando, pero necesaria para reflejar las interacciones existentes entre entidades. Las relaciones pueden ser de tres tipos:

  1. Relaciones (1-1): Las entidades que intervienen en la relación se asocian una a una (Ej: la entidad HOMBRE, la entidad MUJER y entre ellos la relación MATRIMONIO).
  2. Relaciones (1-N): Una ocurrencia de una entidad está asociada con muchas (n) de otra (Ej: la entidad EMPRESA, la entidad TRABAJADOR y entre ellos la relación TRABAJAR-EN).
  3. Relaciones (N-N): Cada ocurrencia, en cualquiera de las dos entidades de la relación, puede estar asociada con muchas (n) de la otra y viceversa (Ej: la entidad ALUMNO, la entidad EMPRESA y entre ellos la relación MATRÍCULA). 

Grado: Numero de conjuntos de entidades que intervienen en una relacion. 



REPRESENTACIÓN GRÁFICA DE ENTIDADES Y RELACIONES.



 Para asimilar fácilmente un diseño de datos cuando se emplea el modelo E/R se utilizan los siguientes elementos gráficos:



       La utilización de estos elementos dará como resultado lo que se denomina el esquema entidad-relación de la base de datos. Los ejemplos que se incluyen en el apartado anterior, gráficamente quedarían como sigue:








FUENTES:

miércoles, 5 de septiembre de 2012

Tipos de variables en Java.

Diccionario.


Una variable en java es un identificador que representa una palabra que contiene información. Todas las variables han de declararse antes de usarlas y una vez declaradas se les podrá asignar un valor. El tipo de información almacenado en una variable sólo puede ser del tipo con que se declaró, puede ir tomando distintos valores o características durante la ejecución del programa. Cada variable tiene un tamaño propio de memoria.
Java tiene tres tipos de variables:
  • De instancia
  • De clase
  • Locales
Delante del nombre de cada variable se ha de especificar el tipo de variable. Las variables pueden ser:
  • Un tipo de dato primitivo
  • El nombre de una clase
  • Un Array

Tipos de variables y datos.

VARIABLE/DATO
TIPO
BITS
RANGO
BYTE
Entero
8 bytes
-128 a 127
SHORT
Entero
16 bytes
-32768 a 32767
INT
Entero
    32 bytes
2*109
LONG
Entero
64 bytes
-263 a 263-1
FLOAT
Decimal simple
32 bytes
IEEE 754-1985 
DOUBLE
Decimal doble
64 bytes
IEEE 754-1985 
CHAR
Caracteres alfa-numéricos.
De carácter simple.
16 bytes
sin signo
0 a 65535
BOOLEAN
Valor true o false
1 byte
------







Fuentes:

Comparacion de dos gestores.


COMPARACIÓN DE MySQL y SQLServer.


CARACTERÍSTICA
MYSQL
SQL SERVER
Costo
Libre y de pago
De pago
Open Source
Si
No
Plataformas
Linux,Windows y muchas otras
Sólo Windows
Limite de tamaño de la base de datos
Limitado por el sistema operativo
Limitado por el sistema operativo
Compatibilidad ACID
Depende del motor de almacenamiento
Si
Servicio de reportes
No
Si
Posibilidad de elegir diferentes formas de almacenamiento
Si
No
Claves Foráneas
Depende del motor
Si
Vistas
Si
Si
Procedimientos almacenados
Si
Si
Seguridad avanzada
Si (Menor)
Si
Cursores
Si
Si
Subconsultas
Si
Si
Replicación
Si
Si
Funciones definidas por el usuario (UDF)
Si
Si
Mayor velocidad
Si
Si
Consume pocos recursos
En PP o memoria
Si
Dispone de api¨s en lenguajes
C++, Java, PHP, etc…

Soporte de indices
Hasta 64 por tabla
Si
Gestion de usuarios
Si
Si
Soporte para transacciones
Si
Si
Alta disponibilidad
Si
Con Always On
Virtualizacion maxima

Si
Con Software Assurance
Capacidades de la edicion
Si
Con Business Intelligence



Fuentes:
http://www.latindevelopers.com/articulos/sql-server/diferencias-entre-mysql-y-sql-server.php
http://www.taringa.net/posts/info/1073108/Comparativa-entre-Postgres-y-MySQL.html
http://www.microsoft.com/es-xl/sqlserver/future-editions/sql2012-editions.aspx

martes, 28 de agosto de 2012

Abstraccion

Abstracción: Se puede considerar a la abstracción como un medio para separar las cualidades de un objeto y una clase para analizar solo las características de este, pues la clase el mecanismo por el cual se gestionan las abstracciones.

¿Para que sirve la abstracción?
     Para representar las características principales de un objeto y distinguir entre el comportamiento del objeto y su clase y su finalidad de implementacion sin mostrar sus caracteristicas. Solo sirven para derivar otras clases separando objetos concretos.
Se utilizan cuando se requiere una cierta característica o interfaz en comun.

Menciona tres niveles de abstraccion y quien actua en cada nivel.

    Los niveles de abstraccion se refieren al grado de detalle en que un sistema es modelado.  
    Nivel fisico: En este primer nivel se muestra la estructura de los datos y el como se almacenan fisicamente. Asi como todos los métodos de acceso al registro, los tipos de registro y los archivos de información  Determina su almacenamiento en el medio secundario y los diseñadores de este nivel poseen un alto dominio en cuestiones técnicas y manejo de hardware. Cuentan con todo permiso y sin restricciones.

    Nivel conceptual: Describe toda la estructura de toda la base de datos, ademas de describir las entidades, atributos, relaciones y operaciones de usuarios. Sin embargo mantiene oculta la estructura física de almacenamiento. Accede todo usuario con ciertas restricciones y permisos de lo contrario no puede accesar, se le considera como usuario definido.

    Nivel externo: Es la que se presenta al usuario final y muestra todos los datos convertidos ya en informacion. Cada esquema de este nivel muestra informacion de la base de datosa un mismo grupo  o a un solo usuario. Actua en este nivel cualquier usuario con capacidades y conocimientos basicos de un software

¿Que es el modelado de datos?
    Es el conjunto de herramientas para describir datos y las relaciones que existen en ellos, ademas de su semantica y sus restricciones.

Menciona 3 categorías de conceptos que se pueden modelar y menciona un ejemplo de cada uno de ellos. 
     Existen tres tipos de modelados básicos; el lógico el conceptual y el físico. Cada uno con las cualidades básicas para cada usuario. 
     Entre los modelos conceptuales están los basados en registros y basados en objetos.
     Sin embargo fuera de estos se encuentran también el modelo jerárquico y el modelo de redes.

     Modelo jerárquico: Usa una estructura de arbol invertida con raices y representa mediante registros llamados nodos las relaciones o enlaces. Una coleccion de arboles es la que forma una base de datos. Un modelo jerarquico esta compuesto por; padre, gemelos, hojas, altura, camino, rama, familia, momento, peso.

     Modelo de red: Es formado por un arbol que contiene tablas. Cuenta con un arco que unen entidades llamadas conjuntos y se forman a base de relaciones. 







FUENTES:
http://www.zator.com/Cpp/E4_11_8c.htm
https://sites.google.com/site/fundamentosdedbitst/contenido/1-5-niveles-de-abstraccion
http://aurea.es/wp-content/uploads/modelodedatos.pdf
http://ict.udlap.mx/people/carlos/is341/bases02.html

miércoles, 22 de agosto de 2012

Conceptos.

Inconsistencia: Cuando los datos no son iguales entre si. Esto ocurre cuando un dato se duplica y en otro lugar no se actualiza. Una base de datos no puede tener datos contradictorios. 

Consistencia: Un estado consistente es aquel en el que se cumplen todas las restricciones especificadas en el esquema de la base de datos.

Objeto: Abstracción de datos y funciones que operan sobre los mismos datos. Abstracción de una entidad en el mundo real.

Atributo: Define y diferencia una entidad de otra, permite especificar las propiedades de las entidades. 

Entidad: Representación de un objeto o concepto en el mundo real. 

Relación: Conjunto en el que cada elemento esta formado por la agregación de los elementos de los conjuntos individuales que intervienen en la relación. 


PROPIEDADES DE LA P.O.O.


Encapsulamiento: Significa reunir a todos los elementos que pueden considerarse pertenecientes a una misma entidad, al mismo nivel de abstracción.

Polimorfismo: capacidad que tienen los objetos de una clase de responder al mismo mensaje o evento en función de los parámetros utilizados durante su invocación. Un objeto polimórfico es una entidad que puede contener valores de diferentes tipos durante la ejecución del programa.

Herencia: Propiedad que permite definir nuevas clases usando la estructura de las ya existentes.Transfieren cualidades de una clase a otra. Son propias dentro del objeto.  

TIPOS DE VARIABLES. 

C++: Int: Valores enteros.
     Float: Números reales con parte fraccionaria.
     Char: Maneja un solo carácter o cadena. 

Java: Char, byte, short, int, long, float, double.




Fuentes.
Joyanes Luis."Fundamentos de programacion" tercera edicion. Ed Aguilar Mc Graw Hill. España 2003.Pp. 575-590.


martes, 21 de agosto de 2012

Trabajo Individual


¿Cual es la importancia del diseño lógico de una base de datos?
Es una vista del contenido total de la base de datos y el diseño lógico es una definicion de una vista. Busca evitar describir la empresa en su totalidad manteniendo una relación entre el usuario y la base con verificaciones de integridad y seguridad.

Identifique dos características del nivel externo de la arquitectura del sistema de base de datos. 
° Es para un usuario individual. Puede ser un programador o un usuario en linea con buenos conocimientos en informática. 


¿El nivel lógico o conceptual se basa en...?
Una base de datos para una comunidad de usuarios y se representa bajo las limitaciones impuestas por la representación y el tratamiento de la información. A este nivel nunca se accede o manipula, solo se logra manipular atreves de un SGBD. 

¿El nivel interno es la representación de ...?
El almacenamiento de los tipos de registro e indices. Es definido mediante un esquema interno.

Identifique dos diferencias entre un SBD y un SGBD.
Que en un SBD no hay redundancia, tiene independencia logica y fisica, ademas de  concurrencia. Esto quiere decir, que los datos se almacenan una sola vez y se almacenan teniendo una estructura inherente de los datos y no a la aplicacion que los crea. 

Un SGBD es considerado como una interfaz entre el usuario y la base de datos.  El SGBD es el conjunto de programas que se encarga de la creación de todos los accesos directos a la base de datos. Su uso esta relacionado con el sistema operativo y de comunicaciones para recibir una peticion del usuario. Tiene funciones de definición, manipulación y utilización. 




Fuentes:
http://972286_lynx.galeon.com/Sgbdat4.html
Minera Francisco. "Desarrollo de PHP + MySQL" Ed. Fox Andina 2011,