Nieve en tu Blog

サンタがブログにやってくるブログパーツ

lunes, 13 de enero de 2014

Base de datos y las 12 reglas de Codd

Bases de datos ¿Que son?

Una base de datos o banco de datos es un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemáticamente para su posterior uso. En este sentido; una biblioteca puede considerarse una base de datos compuesta en su mayoría por documentos y textos impresos en papel e indexados para su consulta.

Modelo relacional ¿Que es?

Se trata de organizar la información en una tabla donde la entidad se convierte en el fichero que contendrá una tabla donde los atributos serán las columnas y los registros serán las filas para conseguir almacenar la información de forma ordenada para la base de datos.

12 Reglas de Codd

1ª Regla de Codd: Regla de información: Todo es un valor de la tabla: toda la información en la base de datos es representada unidireccionalmente. Toda la información en una base de datos relacional se representa solamente en el nivel lógico de una manera: con valores en tablas.

2ª Regla de Codd:
Regla de acceso garantizado: Todos los valores son accesibles mediante Nombre de tabla + Clave primaria + Nombre de campo: Esta regla es esencialmente una nueva exposición de lo que se precisa fundamentalmente para las claves primarias.

3ª Regla de Codd: Tratamiento sistemático de valores nulos: ¿Cómo se tratan los valores nulos?: el sistema debe permitir que haya campos nulos, es decir que debe tener una representación de la información que falta y la forma de trabajar con ellos

4ª Regla de Codd: Catálogo en línea dinámico basado en el modelo relacional: los usuarios autorizados pueden consultar y modificar: Los usuarios pueden tener acceso a la estructura de la base de datos.

5ª Regla de Codd: Regla de sublenguaje completo de datos: Existen varios tipos de lenguaje (modificación, definición,…). El modelo relacional debe soportar por lo menos un lenguaje relacional que:
-Tenga una sintaxis lineal.
-Puede ser utilizado dentro de programas de uso.
-Soporte operaciones de definición de datos, de manipulación de datos, seguridad e integridad y operaciones de administración de transacciones.

6ª Regla de Codd: Regla de actualización de vista: Todas las vistas que deberían ser actualizables deben serlo por el sistema.

7ª Regla de Codd: Inserción, actualización y supresión de alto nivel: Debe existir una sola instrucción para todo, es decir, el sistema debe soportar la consulta de datos al mismo tiempo que se inserten. De esta manera, los datos se pueden recuperar (consultar) de una base de datos relacional en los sistemas construidos de datos de filas o tablas múltiples.

8ª Regla de Codd: Independencia física de datos: los programas de aplicación permanecen inalterados a nivel lógico cuando se realicen cambios en las representaciones de almacenamiento.

9ª Regla de Codd: Independencia lógica de datos: los cambios a nivel lógico no deben requerir un cambio a una solicitud basada en la estructura.

10ª Regla de Codd: Independencia de la integridad: las limitaciones de la integridad se deben especificar por separado de los programas de la aplicación y se almacenan en la base de datos. Debe permitirse el cambio de estas limitaciones con el menos coste posible para las aplicaciones

11ª Regla de Codd: Independencia de la distribución: La división de la base de datos dedbe ser transparente al usuario. Así el uso de la base de datos no se verá afectada:
-Cuando una versión distribuida del Sistema Gestor de Bases de Datos se introduzca por primera vez.
-Cuando se redistribuyan los datos existentes en todo el sistema.

12ª Regla de Codd: Regla de no subversión: si el sistema proporciona una interfaz de bajo nivel de registro, aparte de una interfaz relacional, esa interfaz de bajo nivel no se puede utilizar para modificar el sistema, o dicho de otra manera, debe ser compatible que la interfaz relacional

jueves, 9 de enero de 2014

Ejercicio 2 Ley de protección de datos

Al tratar con datos personales hay que tener en cuenta diversos factores.

-Agencia Española de Protección de Datos: 

Es una autoridad de control independiente que vela por el cumplimiento de la normativa sobre protección de datos y garantiza y tutela el derecho fundamental a la protección de datos de carácter personal.

-¿Qué son Datos de Carácter Personal?

Se considera dato de carácter personal a cualquier información que concierne a personas físicas identificadas o identificables a trabes de nombre, apellidos, dirección, número de teléfono, etc, En cuanto permita identificar o haga meramente identificable a una persona física o dirección IP. Están excluidos los datos de :
-Personas fallecidas
-Personas jurídicas
Contactos de las empresas, siempre que los datos recogidos sean únicamente los siguientes:
-Nombre
-Cargo que ocupa en la empresa
-Dirección, teléfono, fax y e-mail del trabajo
-Empresarios individuales

-¿Cuáles serian mis obligaciones si trato datos de carácter personal?

Al constituirse una empresa y tratar datos de carácter personal de los clientes, proveedores y/o empleados, esta empresa será la responsable de los ficheros a los efectos previstos en la Ley Orgánica 15/1999, de 13 de diciembre de protección de datos de carácter personal (L.O.P.D.). Por lo tanto la empresa está obligada por Ley a:
-Informar a los afectados: Cualquier persona tiene derecho a saber si sus datos personales van a ser incluidos en un fichero, y los tratamientos que se realizan con esos datos
-Pedir su consentimiento: Como regla general, la inclusión de datos de carácter personal en un fichero supondrá un tratamiento de datos de carácter personal, que requerirá, en principio, el consentimiento del afectado
-Calidad y proporcionalidad de los datos: La Ley contiene entre sus principios generales, el principio de calidad de los datos, que, ligado al principio de proporcionalidad de los datos, exige que los mismos sean adecuados a la finalidad que motiva su recogida.
-Atención a los derechos de los ciudadanos: Es competencia de la Agencia Española de Protección de Datos la tutela de estos derechos. Así, ante una imposibilidad del ejercicio de éstos, queda abierta la posibilidad de que el titular de los datos obtenga dicha tutela formulando la correspondiente reclamación.
-Adopción de medidas de seguridad: El Reglamento establece tres niveles de seguridad atendiendo a la naturaleza de la información tratada
  1. Nivel alto: para ficheros que contengan datos de ideología, religión, creencias, salud o vida sexual, así como los recabados para fines policiales sin consentimiento de las personas afectadas.
  2. Nivel medio: para ficheros que contengan datos relativos a la comisión de infracciones administrativas o penales, Hacienda pública, servicios financierosy que se rijan por el artículo 29 de la L.O.P.D.
  3. Nivel básico: para ficheros que contengan datos de carácter personal.

Historia de las bases de datos

Historia de las bases de datos

El término bases de datos fue escuchado por primera vez en un simposio celebrado en California en 1963.

-Una base de datos es un conjunto de información relacionada que se encuentra agrupada o estructurada.

-Desde el punto de vista informático, una base de datos es un sistema formado por un conjunto de datos almacenados en discos que permiten el acceso directo a ellos y un conjunto de programas que manipulen ese conjunto de datos.

Origenes

Los orígenes de las bases de datos se remontan a la Antigüedad donde ya existían bibliotecas y toda clase de registros. Además también se utilizaban para recoger información sobre las cosechas y censos. Sin embargo, su búsqueda era lenta y poco eficaz y no se contaba con la ayuda de máquinas que pudiesen reemplazar el trabajo manual.

Posteriormente, el uso de las bases de datos se desarrolló a partir de las necesidades de almacenar grandes cantidades de información o datos. Sobre todo, desde la aparición de las primeras computadoras, el concepto de bases de datos ha estado siempre ligado a la informática.

En 1884 Herman Hollerith creó la máquina automática de tarjetas perforadas, siendo nombrado así el primer ingeniero estadístico de la historia. En esta época, los censos se realizaban de forma manual. Ante esta situación, Hollerith comenzó a trabajar en el diseño de una maquina tabuladora o censadora, basada en tarjetas perforadas.

Posteriormente, en los cincuenta se da origen a las cintas magnéticas, para automatizar la información y hacer respaldos. Esto sirvió para suplir las necesidades de información de las nuevas industrias. Y a través de este mecanismo se empezaron a automatizar información, con la desventaja de que solo se podía hacer de forma secuencial.

Década de 1960:

-La bajada en los precios de los ordenadores hacen que las empresas puedan acceder a la adquisición de ordenadores, debido a esto se popularizan los discos en los que se guardaría la infornacion
- Y, posteriormente, en esta misma década, se llevo a cabo el desarrollo del IDS desarrollado por Charles Bachman supuso la creación de un nuevo tipo de sistema de bases de datos conocido como modelo en red que permitió la creación de un standard en los sistemas de bases de datos gracias a la creación de nuevos lenguajes de sistemas de información.

Década de 1970

-Por lo que respecta a la década de los setenta, Edgar Frank Codd, científico informático ingles conocido por sus aportaciones a la teoría de bases de datos relacionales, definió el modelo relacional a la par que publicó una serie de reglas para los sistemas de datos relacionales a través de su artículo “Un modelo relacional de datos para grandes bancos de datos compartidos”.
- Este hecho dio paso al nacimiento de la segunda generación de los Sistemas Gestores de Bases de Datos.
-Posteriormente en la época de los ochenta también se desarrollará el SQL (Structured Query Language) o lo que es lo mismo un lenguaje de consultas o lenguaje declarativo de acceso a bases de datos relacionales que permite efectuar consultas con el fin de recuperar información de interés de una base de datos y hacer cambios sobre la base de datos de forma sencilla

Década años 1990

En la década de 1990 la investigación en bases de datos giró en torno a las bases de datos orientadas a objetos. Las cuales han tenido bastante éxito a la hora de gestionar datos complejos en los campos donde las bases de datos relacionales no han podido desarrollarse de forma eficiente. Así se desarrollaron herramientas como Excel y Access del paquete de Microsoft Office que marcan el inicio de las bases de datos orientadas a objetos.

Así se creó la tercera generación de sistemas gestores de bases de datos.

Fue también en esta época cuando se empezó a modificar la primera publicación hecha por ANSI del lenguaje SQL y se empezó a agregar nuevas expresiones regulares, consultas recursivas, triggers y algunas características orientadas a objetos, que posteriormente en el siglo XXI volverá a sufrir modificaciones introduciendo características de XML, cambios en sus funciones, estandarización del objeto sequence y de las columnas autonuméricas. Y además, se creará la posibilidad de que SQL se pueda utilizar conjuntamente con XML, y se definirá las maneras de cómo importar y guardar datos XML en una base de datos SQL. Dando asi, la posibilidad de proporcionar facilidades que permiten a las aplicaciones integrar el uso de XQuery (lenguaje de consulta XML) para acceso concurrente a datos ordinarios SQL y documentos XML. Y posteriormente, se dará la posibilidad de usar la clausula order by.

Aunque el boom de la década de los noventa será es el nacimiento del World Wide Web a finales de la década, ya que a través de este se facilitará la consulta a bases de datos.

SIGLO XXI

En la actualidad, las tres grandes compañías que dominan el mercado de las bases de datos son IBM, Microsoft y Oracle. Por su parte, en el campo de internet, la compañía que genera gran cantidad de información es Google. Aunque existe una gran variedad de software que permiten crear y manejar bases de datos con gran facilidad, como por ejemplo LINQ, que es un proyecto de Microsoft que agrega consultas nativas semejantes a las de SQL a los lenguajes de la plataforma .NET. El objetivo de este proyecto es permitir que todo el código hecho en Visual Studio sean también orientados a objetos; ya que antes de LINQ la manipulación de datos externos tenía un concepto más estructurado que orientado a objetos; y es por eso que trata de facilitar y estandarizar el acceso a dichos objetos.

Cabe destacar que Visual Studio es un entorno de desarrollo integrado para sistemas operativos Windows que soporta varios lenguajes de programación tales como Visual C++, Visual#, Visual J#, ASP.NET y Visual Basic.NET, aunque se están desarrollando las extensiones necesarias para otros, cuyo objetivo es permitir crear aplicaciones, sitios y aplicaciones web, así como servicios web a cualquier entorno que soporte la plataforma .Net, creando así aplicaciones que intercomuniquen entre estaciones de trabajo, páginas web y dispositivos móviles.