miércoles, 13 de febrero de 2013

Actividad Martes 12 Feb
ORACLE

Actualmente en la version 11g Release 2. Algunas mejoras:

Automatic Block Repair : Desde Oracle11gr2 en adelante los bloques se recuperarán de forma automática .
Comando DUPLICATE de una base de datos , pero sin conección a la base de datos : Desde ahora en adelante no es necesario conectarse a una base de datos target para generar una copia de ella.
Mejoras en el TSPITR (Tablespace Point-In-Time Recovery) Podremos recuperar una tabla en el tiempo, aun cuando haya sido borrada.
Se agregan nuevas funciones analíticas, como por ejemplo:
LISTTAG : Que permite al desarrollador mostrar los datos de una tabla, pero hacía el lado, concatenados.
NHT_VALUE : simplemente recibe un valor y busca el número X que le ingresamos. 
etc.
 
MySQL 5.5
Oracle ha lanzado recientemente una nueva versión de su sistema de base de datos MySQL, siendo esta la versión 5.5.

Entre las características más destacadas de esta nueva versión, destaca la mejora en el rendimiento y escalabilidad, respecto a su versión anterior. Esta nueva versión ofrece un rendimiento hasta 1500 veces mayor en sistemas Windows y hasta 360 en sistemas Linux.

Para conseguir lo comentado anteriormente, se ha mejorado el motor de almacenamiento InnoDB, siendo este el motro por defecto ahora. La nueva replicación semisincronizada así como la conocida como Replication Heart Beat mejoran la fiabilidad de la base de datos así como la velocidad de recuperación.
SQL Server 2012

Características nuevas o mejoradas en SQL Server 2012
Características nuevas o mejoradas en SQL Server 2012 SP1
Novedades de la instalación de SQL Server
Novedades (motor de base de datos)
Novedades (Analysis Services)
Novedades (Integration Services)
Introducción a Data Quality Services
Novedades (Master Data Services)
Novedades (Replicación)
Novedades (Reporting Services)

viernes, 8 de febrero de 2013

 ACTIVIDAD 3
¿Cuáles son las inconvenientes de un sistema gestor de base de datos?
• Problemas de integridad: Los valores de los datos almacenados en la base de datos deben satisfacer ciertos tipos de restricciones de consistencia.
• Problemas de atomicidad. Un sistema de un computador, como cualquier otro dispositivo mecánico o eléctrico, está sujeto a fallo. En muchas aplicaciones es crucial asegurar que, una vez que un fallo ha ocurrido y se ha detectado, los datos se restauran al estado de consistencia que existía antes del fallo.
• Anomalías en el acceso concurrente: Conforme se ha ido mejorando el conjunto de ejecución de los sistemas y ha sido posible una respuesta en tiempo más rápida, muchos sistemas han ido permitiendo a múltiples usuarios actualizar los datos simultáneamente.
• Redundancia e inconsistencia de datos.- Debido a que los archivos y programas de aplicación son creados por diferentes programadores en un largo período de tiempo, los diversos archivos tienen probablemente diferentes formatos y los programas pueden estar escritos en diferentes lenguajes.
• Dificultad en el acceso a los datos: La cuestión aquí es que el entorno de procesamiento de archivos convencional no permite que los datos necesarios sean obtenidos de una forma práctica y eficiente.
• Aislamiento de datos: Debido a que los datos están dispersos en varios archivos, y los archivos pueden estar en diferentes formatos, es difícil escribir nuevos programas de aplicación para recuperar los datos apropiados.
• Problemas de seguridad: No todos los usuarios de un sistema de bases de datos deberían poder acceder a todos los datos. Como los programas de aplicación se añaden al sistema de una forma ad hoc, es difícil garantizar tales restricciones de seguridad. 
 
Indique los pasos importantes para configurar una base de datos para una empresa dada.
Determinar la finalidad de la base de datos.
Determinar su finalidad y cómo se va a utilizar.
Realice bocetos de los informes que desea que genere la base de datos.
Reúna los formularios que utiliza actualmente para registrar los datos.
En cuanto determine la finalidad de su base de datos, ya puede determinar qué hechos necesita almacenar en la base de datos y a qué tema corresponde cada hecho. Estos hechos se corresponden con los campos (columnas) de la base de datos y los temas a los que pertenecen los hechos son las tablas.
Determinar los campos necesarios en la base de datos
Cada campo es un hecho acerca de un tema determinado. Por ejemplo, puede que sea necesario almacenar los hechos siguientes acerca de los clientes: nombre de la organización, dirección, ciudad, estado o provincia, y número de teléfono. Deberá crear un campo independiente para cada uno de estos hechos. A la hora de determinar qué campos son necesarios, tenga presentes estos principios de diseño: Incluya toda la información que necesite.
Por ejemplo, los nombres de los empleados suelen repartirse en dos campos, Nombre y Apellidos, para que sea más fácil ordenar los datos por Apellidos.
No incluya datos derivados ni calculados.
No cree campos que sean similares entre sí.
Determinar las tablas que se necesitan en la base de datos.
Cada tabla debe contener información sobre un asunto.
Determinar a qué tabla pertenece cada campo
A la hora de decidir a qué tabla pertenece cada campo, tenga presentes estos principios de diseño:
Agregue el campo a una sola tabla.
Si determina que un campo de una tabla va a contener mucha información duplicada, seguramente ese campo se encuentra en una tabla que no le corresponde.
Cuando cada elemento de información se almacena una sola vez, se actualiza en un solo lugar. Esto resulta más eficiente y elimina la posibilidad de que existan entradas duplicadas que contengan información diferente.
Identificar el campo o los campos con valores únicos en cada registro.
 
Explique la diferencia entre independencia de datos física y lógica.
 
La independencia de datos es la capacidad de modificar una definición de esquema, en este caso el físico o el lógico, sin que los programas de aplicación tengan que reescribirse. La diferencia entre éstos radica en que las modificaciones en el nivel físico son ocasionalmente necesarias para mejorar el funcionamiento, y las modificaciones en el nivel lógico son necesarias siempre que la estructura lógica de la base de datos se altere.
 
E  Explique cinco responsabilidades del Sistema Gestor de la Base de Datos. 
Control de concurrencia.
Consulta y actualización.
1.    Establecer y mantener trayectorias de acceso a la BD.
Respaldo y recuperación.
Seguridad e integridad.
 
¿Cuáles son las cinco funciones principales del administrador de la base de datos?
·   Modificación del esquema y de la organización física.
·   Concesión de autorización para el acceso a los datos.
Especificación de las restricciones de integridad 
·   Definición del esquema.
·   Definición de la estructura y del método de acción.

Indique 5 aplicaciones que usted perciba que se usa una base de datos para almacenar datos persistentes.
Hoteles
Hospitales
Biblioteca
 
Bancos
Ventas

jueves, 7 de febrero de 2013

Actividad 2



Sistemas Gestores De Base de Datos (SGBD)
ORACLE DATABASE: Bases de datos en ficheros independientes, soporta ANSI de SQL, distintos protocolos de red, arquitectura multigeneraciónal. Alto consumo de recursos. Multiplataforma.

MYSQL: Es racional, multihilo y multiusuario, poseen un amplio subconjunto de NFA SEL 99, procedimientos almacenados, consumidor medio de recursos multiplataforma.

INFORMIX: Ejecución de múltiples hilos y procedimientos virtuales que trabajan en paralelo, incluye de forma integrada el servidor NETSCAPE FAXTRAP. Recursos mínimos Multiplataforma.

SQLSERVER: Soporte de transacciones, estabilidad, seguridad, soporta procedimientos almacenados, permite trabajar en modo cliente-servidor. Requiere gran cantidad de recursos (2GB de RAM mínimo) Solamente se puede usar en plataforma Windows.

DB2: Integra XML de manera nativa que permite almacenar documentos de tipo XML. Multiplataforma.
POSTGRE SQL: Alta concurrencia, nativamente provee números de presión, texto de largo ilimitado, figuras geométricas etc. Consume mínimo 2GB de RAM, 4 GB de HD y 26 HZ de  Procesamiento. Multiplataforma.


Opinión Personal
Para mí en lo personal lo open source o código abierto me satisface en el aspecto de que tiene libre acceso y está en constante mejora, aparte la compatibilidad es mayor comparada con los de licencia propietario.
Aun asi se debe de mencionar que algunos propietario tienen muchas ventajas en contra de los abiertos por esto para el uso de cada uno se debe tomar mucho en cuenta las necesidades o requerimientos del proyecto a realizar

FUENTES:
·         www.osdb.org/databases/
·         www.postgresql.org/about

miércoles, 6 de febrero de 2013

Codificacion de creacion de tablas y de consulta:

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.1.41 Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> create database veterinaria;
Query OK, 1 row affected (0.03 sec)

mysql> connect veterinaria;
Connection id:    2
Current database: veterinaria

mysql> create table mascota(
    -> idMascota integer primary key,
    -> nombre varchar(30),
    -> especie varchar(30),
    -> raza varchar(30),
    -> sexo varchar(30),
    -> peso double,
    -> alzada varchar(30),
    -> fechaNac varchar(30),
    -> color varchar(30),
    -> pelaje varchar(30),
    -> cicatrices varchar(30),
    -> cirugiasEsteticas varchar(30),
    -> tatuajes varchar(30),
    -> condicionCorporal integer,
    -> finZootecnico varchar(30)
    -> );
Query OK, 0 rows affected (0.04 sec)

mysql> create table propietario(
    -> idPropietario integer primary key,
    -> nombre varchar(30),
    -> direccion varchar(30),
    -> telefono integer,
    -> profesion varchar(30)
    -> );
Query OK, 0 rows affected (0.07 sec)

mysql> alter table mascota add propietario varchar(30) references propietario(idPropietario);
Query OK, 0 rows affected (0.04 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> insert into propietario values (0,'Ricardo Alvarez','Nigeria 7610',6370147,'estudiante');
Query OK, 1 row affected (0.00 sec)

mysql> insert into mascota(idMascota,nombre,propietario) values (0,'Perro :B',0);
Query OK, 1 row affected (0.00 sec)

mysql> select mascota.idMascota,mascota.nombre,propietario.nombre 'Nombre Propietario' from mascota,propietario where propietario.idPropietario=mascota.propietario;
+-----------+----------+--------------------+
| idMascota | nombre   | Nombre Propietario |
+-----------+----------+--------------------+
|         0       | Perro :B  | Ricardo Alvarez       |
+-----------+----------+--------------------+
1 row in set (0.00 sec)