miércoles, 8 de junio de 2016

Entidad-Relacion

Entidad-Relacion


Entidad Débil

Una entidad puede no tener suficientes atributos para formar una clave primaria. Tal entidad se denomina entidad débil.

Subclases

Se usan subclases cuando detectamos una entidad que tiene un grupo de instancias con ciertas particularidades.

  • 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).
  • Relaciones 1-n.- Una ocurrencia de una entidad está asociada con muchas (n) de otra (Ej: la entidad EMPERSA, la entidad TRABAJADOR y entre ellos la relación TRABAJAR-EN).
  • 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).

Entidades Eliminables

- Solo tienen relaciones 1-1 con otra entidad
- No pensar en las tablas. El modelo E-R es para conceptualizar
- Leer y re-leer el diagrama

Comandos del DDL y del DML

Comandos del DDL y del DML

DDL y DML
  Lenguaje de definición de datos (DDL: Data Definition Language):Sencillo lenguaje artificial para definir y describir los objetos de la base de datos, su estructura, relaciones y restricciones. En la práctica puede consistir en un subconjunto de instrucciones de otro lenguaje informático. Aparte suele poseer dos subconjuntos de instrucciones:

  •   Lenguaje de definición del almacenamiento de los datos (DSDL: Data Storage Definition Language): permite especificar características físicas de la base de datos (volúmenes y archivos donde van a ser almacenados los datos, etc).

  •  Lenguaje de control de datos (DCL: Data Control Language): encargado del control y seguridad de los datos (privilegios y modos de acceso, etc).
  Lenguaje de manipulación de datos (DML: Data Manipulation Language): Lenguaje artificial de cierta complejidad que permite el manejo y procesamiento del contenido de la base de datos. En la práctica puede consistir en un subconjunto de instrucciones de otro lenguaje informático. Las aplicaciones que trabajan sobre la base de datos se programan en un lenguaje de programación (C, Cobol, ...) insertando en el código fuente sentencias del DML. Al utilizar un DML se deben especificar los datos que serán afectados por las sentencias del lenguaje. Un DML puede tener o no procedimientos, según sea necesario especificar ademáns cónmo deben obtenerse esos datos. Los DML con procedimientos tienen sentencias de control de flujo como bucles o condicionales. Los DML sin procedimientos son conocidos también como declarativos.  

Comandos DLL
ComandoDescripción
CREATEUtilizado para crear nuevas tablas, stored procedures e índices
DROPEmpleado para eliminar tablas, stored procedures e índices
ALTERUtilizado para modificar las tablas agregando campos o cambiando la definición de los campos

  Comandos DML

ComandoDescripción
SELECTUtilizado para consultar registros de la base de datos que satisfagan un criterio determinado.
INSERTUtilizado para cargar lotes de datos en la base de datos en una única operación.
DELETEUtilizado para modificar los valores de los campos y registros especificados.
UPDATEUtilizado para eliminar registros de una tabla de una base de datos.
Interfaz de Usuario
Otros DBMS
El modelo relacional
Es un modelo de datos basado en la lógica de predicados y en la teoría de conjuntos, Tras ser postuladas sus bases en 1970 por Edgar Frank Codd, de los laboratorios IBM en San José (California), 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 esta 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, pensando en cada relación como si fuese una tabla que está compuesta por registros (cada fila de la tabla sería un registro o "tupla") y columnas (también llamadas "campos").
Modelo entidad-relación 
(a veces denominado por sus siglas en inglés, E-R "Entity relationship", o del español DER "Diagrama de Entidad Relación") es una herramienta para el modelado de datos que permite representar las entidades relevantes de un sistema de información así como sus interrelaciones y propiedades.
Se elabora el diagrama (o diagramas) entidad-relación.
Se completa el modelo con listas de atributos y una descripción de otras restricciones que no se pueden reflejar en el diagrama.

miércoles, 1 de junio de 2016

Investigación sobre DBMS Oracle y MySQL


Oracle 12c

Oracle es una potente herramienta cliente/servidor para la gestión de Bases de Datos. Oracle nos Permite implementar nubes de bases de datos privadas y a los proveedores SaaS que buscan la potencia de Oracle Database en un modelo de tenencia múltiple, seguro y aislado





MySQL

Una base de datos es una colección estructurada de datos. Puede ser cualquier cosa desde una simple lista de compras para una galería de imágenes o de las grandes cantidades de información en una red corporativa.








 Servicios:

Características de Oracle 12c

·     La nueva arquitectura de tenencia múltiple permite mayores niveles de consolidación en la nube sin necesidad de cambiar las aplicaciones existentes
  • La función de optimización automática de datos gestiona más datos, reduce costos de almacenamiento y mejora el rendimiento de la base de datos
  • La seguridad de protección total de la base de datos incluye amenazas evolucionadas y regulaciones estrictas sobre la privacidad de los datos
  • Maximiza la disponibilidad con protección ante falla del servidor, falla en terreno, error humano, reducidos tiempos de inactividad planificados y continuidad de la aplicación
  • Descubrimiento escalable de secuencias de eventos comerciales con mejoradas capacidades analíticas en base de datos para grandes volúmenes de datos
  • Integración continua con Oracle Enterprise Manager Cloud Control 12c permite a los administradores dirigir fácilmente el ciclo de vida completo de la base de datos

·
(Oracle, 2014).

Características de MySQL

  • MySQL es el software de código abierto.
  • La base de datos del servidor MySQL es muy rápido, fiable, escalable y fácil de usar.
  • MySQL Server trabaja en entornos cliente / servidor o sistemas embebidos, es el DBMS de licencia GPL con más conexiones con las diferentes APIs.
  • Una gran cantidad de software MySQL contribuido está disponible.
  • Sistema de contraseñas y privilegios muy flexible y segura. 
  • Registros de longitud fija y variable. 
  • 16 índices por tabla, cada índice puede estar compuesto de 1 a 15 columnas o partes de ellas con una longitud máxima de 127 bytes.
  • Todas las columnas pueden tener valores por defecto. 
  • Todos los datos están grabados en formato ISO8859_1.  
  • Los clientes usan TCP o UNIX Socket para conectarse al servidor.  
  • El servidor soporta mensajes de error en distintas lenguas.  
  • ¿Todos los comandos tienen -help o -? Para las ayudas.  
  • Diversos tipos de columnas como enteros de 1, 2, 3, 4, y 8 bytes, coma flotante, doble precisión, carácter, fechas, enumerados, etc. 

(MySQL, 2015)

B.     Bases de datos del sistema


MySQL

 



Esta eficiente arquitectura provee beneficios para el tipo de aplicación que se necesite como data warehousing, procesamiento de transacciones, situaciones de alta disponibilidad, etc. Todo para que el motor de la base de datos funcione eficientemente. Esto va de la mano con las ventajas de utilizar un set de interfaces y servicios.


MySQL utiliza varios tipos de tablas. El tipo de tabla predeterminado es MyISAM que está optimizado para la velocidad del comando SELECT. La mayor parte de los sitios Web utilizan esta tabla, ya que estos sitios suelen utilizar la instrucción SELECT mucho más que las instrucciones INSERT o UPDATE.


Oracle


En las bases de datos Oracle encontramos el tablespace system es un tablespace Por defecto en todas las bases de datos Oracle. En él se almacenan todos los datos del sistema, el catálogo y todo el código fuente y compilado de procedimientos PL/SQL. También es posible utilizar el mismo tablespace para guardar datos del usuario. Este tablespace contiene, el diccionario de datos, almacenamiento para disparadores y los procedimientos almacenados.

(Oracle, 2014).

C.      Proceso de instalación


Requisitos de Software MySQL 5.7

Un sistema operativo Windows 10, 2012 Server, 8 y 7 de 64bits
Suficiente espacio en disco rígido para descomprimir, instalar, y crear las bases de datos de acuerdo a sus requisitos. Generalmente se recomienda un mínimo de 200 megabytes.
La manera recomendada de instalar MySQL en Linux es utilizando paquetes RPM. Los RPMs de MySQL están generados en SuSE Linux 7.3 disponible para Sistemas operativos de Linux de 64 bits.
Se puede instalar MySQL en Mac OS X 10.2.x (“Jaguar”) y posteriores utilizando un paquete binario de Mac OS X en formato PKG en lugar de la distribución binaria tarball. Debe tenerse en cuenta que las versiones anteriores de Mac OS X (por ejemplo, 10.1.x)
Si se necesitan tablas con un tamaño superior a 4GB, debe instalarse MySQL en un sistema de ficheros NTFS o posterior.

Requisitos de Hardware MySQL

Una de las ventajas de MySQL es que puede ejecutarse en hardware normal sin ningún requerimiento especial a parte de grandes cantidades de RAM, debido al hecho que todos los datos se almacenan en memoria.

Instalación de MySQL

1. Obtener e instalar la distribución.
2. Establecer un fichero de opciones, de ser necesario.
3. Seleccionar el servidor que se desea emplear.
4. Iniciar el servidor.
5. Colocar contraseñas a las cuentas MySQL creadas inicialmente.
(MySQL, 2011)

 



Requisitos de Software y Hardware Oracle DB 12c

Sistema Operativo
Memoria Mínima
Memoria Recomendada
Almacenamiento Mínimo
Almacenamiento Recomendado
Windows 2000 SP4+ 
Advanced Server SP4+ 
Windows Server 2003, 2008 
Windows XP Pro SP3 
Windows Vista Windows 2008 
1 GB 
2 GB 
500 MB de espacio libre 
1 GB de espacio libre 
Windows 7 
Sólo es compatible como plataforma para desarrolladores. 
1 GB 
2 GB 
500 MB de espacio libre 
1 GB de espacio libre 
En Macintosh OS 10.4, 10.5 (Intel, Power) Sólo es compatible como plataforma para desarrolladores. 
512 MB 
512 MB 
250 MB de espacio libre 
500 MB de espacio libre 
Distribuciones de Linux
12 MB
1 GB

250 MB de espacio libre
500 MB de espacio libre


Instalación de Oracle Db 12c

§  Descarga e instalación automática de paquetes de software y versiones específicas de paquetes requeridas para instalar Oracle Grid Infrastructure y Oracle Database 12 c Versión 1 (12.1) u 11g Versión 2 (11.2.0.3); las dependencias de paquetes se resuelven mediante capacidades yum o up2date.
§  Creación del usuario Oracle y los grupos oinstall (para OraInventory) y dba (para OSDBA), que se usan durante la instalación de la base de datos. (Por motivos de seguridad, este usuario no tiene contraseña predeterminada y no puede iniciar sesión de manera remota. Para permitir el inicio de sesión remoto, defina una contraseña utilizando la herramienta passwd.)
§  Modificación de parámetros del kernel en /etc/sysctl.conf para cambiar la configuración relativa a memoria compartida, semáforos, cantidad máxima de descriptores de archivos, etcétera.
§  Definición de límites máximos y flexibles para los recursos del Shell en /etc/security/limits.conf, por ejemplo, espacio de direcciones de memoria bloqueado, cantidad de archivos abiertos, cantidad de procesos y tamaño de archivos del núcleo.
§  Definición numa=off en el kernel para máquinas x86_64.

(Oracle, 2015) 


D.      Tipos de datos



MySQL
ORACLE
Tipo de dato
Descripción
Tipo de dato
Descripción
Cadena de longitud fija
Sobre 255 bytes
Cadena de longitud fija
Sobre 2000 Bytes
Cadena de longitud variable
Sobre 255 bytes
Cadena de longitud variable
Sobre 4000 Bytes
Long Text
Sobre 4 gigabytes. Limitado a 16 Mb con algunas tablas.
Long Text
Sobre 4 gigabytes
Large Binary
Sobre 4 gigabytes. Limitado a 16 Mb con algunas tablas.
Large Binary
Sobre 4 gigabytes
Integer
Sobre 2e64 dígitos aproximadamente y 20 dígitos de precisión.
Integer
Sobre 38 dígitos de precisión.
Floating Point
1.8e308 a -2.2e308, 2.23- 308 a 1.83308'
Floating Point
Sobre 38 dígitos de precisión.
Date
Fecha y hora con precisión de segundos de Enero 1,1000 a Diciembre 31, 9999
Date
Fecha y hora con precisión de segundos de Enero 1,4712 BCE a Diciembre 31, 4712 CE
Time
Hora con precisión de segundos. -838:59:59 a 838:59:59
Time
N/A
TimeStamp
Precisión de segundos sin local time zone.
TimeStamp
Precisión de milisegundos con local time zone
Year
1901 a 2155
Year
N/A
Row Identifier
N/A
Row Identifier
Local y universal
Enumeration
Sobre 65535 valores diferentes.
Enumeration
N/A
Set
Puede contener de cero a 64 valores.
Set
N/A
Tipos de dato definidos por el usuario
N/A
Tipos de dato definidos por el usuario
Los desarrolladores pueden definir sus propios tipos de datos


Bibliografia: 
  1. Oracle (2014). Oracle Enterprise Manager 12c Recuperado el: 01/06/2016 de: http://www.oracle.com/lad/products/enterprise-manager/index.html
  2. MySQL(2011) MySQL 5.0 Reference Manual Recuperado el: 01/06/2016 de : http://downloads.mysql.com/docs/refman-5.0-es.pdf
  3.  MySQL (2015) What Is New in MySQL 5.7 Recuperado el: 01/06/2016 de:
  4. http://dev.mysql.com/doc/refman/5.7/en/mysql-nutshell.html
  5. Oracle(2015)  Simplificación de las instalaciones de Oracle Database 12c y 11g en Oracle Linux 6 Recuperado el: 01/06/2016 de: http://www.oracle.com/technetwork/es/articles/linux/simplificar-instalar-oracle-linux-6-2251315-esa.html

domingo, 24 de abril de 2016

Sistema Gestor de Archivos

SISTEMA GESTOR DE ARCHIVOS

Es un programa informático que proporciona una interfaz de usuario para administrar archivos y directorios. Las operaciones más comunes realizadas en archivos o grupos de archivos incluyen crear, abrir (p. ej., ver, reproducir, editar o imprimir), cambiar nombre, copiar, mover, eliminar y buscar archivos; así como modificar sus atributos, propiedades y permisos de acceso.

Características:
  • Se considera parte del sistema operativo
  • Cumplir on las necesidades de gestión de datos y con los requerimientos del usuario
  • Optimizar el rendimiento
Funciones de un Sistema Gestor de Archivos

  • Identificar y ubica el archivo en cuestión 
  • Utiliza un directorio que describe la ubicacion de todos los archivos y sus atributos 
  • Se lleva a cabo por bloques 
  • Los sistemas comparativos aplican algún control de acceso a los usuarios
  • La E/S se lleva a cabo por bloques

Ventajas de un sistema Gestor de Archivos


  • Acceso instantáneo a toda la documentación.
  • Reducción de tiempo de consultas y tareas de archivo.
  • Resolución del problema de localización.
  • Control total sobre la documentación e información.
  • Fácil y rápida distribución o envío de documentos.

¿Que es una Base de Datos?

Las bases de datos son sumamente utilizadas para el registro de la información. Estos comúnmente se abrevian DB por sus siglas en inglés (database), las cuales son un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemáticamente para su uso posterior. Es decir que es una colección de información organizada de tal manera que un programa de computadora puede rápidamente seleccionar piezas deseadas de datos.

Ventajas

  • Independencia de los datos y los programas y procesos
  • Menor redundancia
  • Obtener más información de la misma cantidad de data
  • Integridad de los datos
  • Mayor seguridad en los datos
  • Coherencia de los resultados
  • Datos más documentados
  • Acceso simultaneo a los datos
  • Balance de Requerimientos Conflictivos
  • Reducción del espacio de almacenamiento
  • Acceso a los datos más eficiente
  • Reducción del espacio de almacenamiento
  • Se refuerza la estandarización
  • Aumenta la productividad de los programadores
Desventajas
  • Ausencia de estándares reales
  • Requiere personal calificado
  • Instalación costosa
  • Falta de rentabilidad a corto plazo
  • Tamaño
  • Requerimientos adicionales de Equipo

Arquitectura


Nivel conceptual: Que es el siguiente nivel más alto de abstracción, se describe cuáles son los datos reales que están almacenados en la base de datos y qué relaciones existen entre los datos.
                 

Niveles de abstracción: Podemos destacar tres niveles principales según la visión y la función que realice el usuario sobre la base de datos:

Nivel físico: El nivel más bajo de abstracción describe como se almacenan realmente los datos. En el nivel físico se describen en detalle las estructuras de datos complejas de bajo nivel.
                                                                  
Nivel lógico: El siguiente nivel más alto de abstracción describe que datos se almacenan en la base de datos y que relaciones existen entre esos datos. La base de datos completa se describe así en términos de un número pequeño de estructuras relativamente simples en el nivel físico, los usuarios del nivel lógico no necesitan preocuparse de esta complejidad. Los administradores de base de datos, que deben decidir la información que se mantiene en la base de datos, usan el nivel lógico de abstracción.   

Transaccionalidad

es un conjunto de órdenes que se ejecutan formando una unidad de trabajo, es decir, en forma indivisible o atómica.
Un SGBD se dice transaccional, si es capaz de mantener la integridad de los datos, haciendo que estas transacciones no puedan finalizar en un estado intermedio. Cuando por alguna causa el sistema debe cancelar la transacción, empieza a deshacer las órdenes ejecutadas hasta dejar la base de datos en su estado inicial (llamado punto de integridad), como si la orden de la transacción nunca se hubiese realizado. Una transacción debe contar con ACID (un acrónimo inglés) que quiere decir: Atomicidad, Consistencia, Aislamiento y Durabilidad.
Mas informacion: