domingo, 20 de marzo de 2011

Definición de las bases de datos e importancia, objetivos, aplicaciones de estas


Bases de datos: un conjunto de información almacenada en memoria auxiliar que permite acceso directo y un conjunto de programas que manipulan esos datos,  o un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemáticamente para su posterior uso.




Importancia de la base de datos:
-Facilita el almacenamiento de grandes cantidades de información.
-La recuperación rápida y flexible de información.
-La organización y reorganización de la información.
- la impresión y distribución de información en varias formas.

Objetivos de los sistemas de bases de datos.
    Los objetivos principales de un sistema de base de datos es disminuir los siguientes aspectos:
 Redundancia e inconsistencia de datos.
    Puesto que los archivos que mantienen almacenada la información son creados por diferentes tipos de programas de aplicación existe la posibilidad de que si no se controla detalladamente el almacenamiento, se pueda originar un duplicado de información, es decir que la misma información sea más de una vez en un dispositivo de almacenamiento. Esto aumenta los costos de almacenamiento y acceso a los datos, además de que puede originar la inconsistencia de los datos - es decir diversas copias de un mismo dato no concuerdan entre si -, por ejemplo: que se actualiza la dirección de un cliente en un archivo y que en otros archivos permanezca la anterior.
Dificultad para tener acceso a los datos.
    Un sistema de base de datos debe contemplar un entorno de datos que le facilite al usuario el manejo de los mismos. Supóngase un banco, y que uno de los gerentes necesita averiguar los nombres de todos los clientes que viven dentro del código postal 78733 de la ciudad. El gerente pide al departamento de procesamiento de datos que genere la lista correspondiente. Puesto que esta situación no fue prevista en el diseño del sistema, no existe ninguna aplicación de consulta que permita este tipo de solicitud, esto ocasiona una deficiencia del sistema.
 Aislamiento de los datos.
    Puesto que los datos están repartidos en varios archivos, y estos no pueden tener diferentes formatos, es difícil escribir nuevos programas de aplicación para obtener los datos apropiados.
Anomalías del acceso concurrente.
    Para mejorar el funcionamiento global del sistema y obtener un tiempo de respuesta más rápido, muchos sistemas permiten que múltiples usuarios actualicen los datos simultáneamente. En un entorno así la interacción de actualizaciones concurrentes puede dar por resultado datos inconsistentes. Para prevenir esta posibilidad debe mantenerse alguna forma de supervisión en el sistema.
Problemas de seguridad.
    La información de toda empresa es importante, aunque unos datos lo son más que otros, por tal motivo se debe considerar el control de acceso a los mismos, no todos los usuarios pueden visualizar alguna información, por tal motivo para que un sistema de base de datos sea confiable debe mantener un grado de seguridad que garantice la autentificación y protección de los datos. En un banco por ejemplo, el personal de nóminas sólo necesita ver la parte de la base de datos que tiene información acerca de los distintos empleados del banco y no a otro tipo de información.
Problemas de integridad.
    Los valores de datos almacenados en la base de datos deben satisfacer cierto tipo de restricciones de consistencia. Estas restricciones se hacen cumplir en el sistema añadiendo códigos apropiados en los diversos programas de aplicación.
Aplicaciones de la base de datos:
1. Banca: información de clientes, cuentas, transacciones, préstamos, etc.
2. Líneas aéreas: inf. Clientes, horarios, vuelos, destinos, etc. (1ras bases distribuidas geográficamente)
3. Universidades: inf. Estudiantes, carreras, horarios, materias, etc.
4. Transacciones de tarjeta de crédito: para comprar con tarjetas de crédito y la generación de los extractos mensuales.
5. Telecomunicaciones: para guardar registros de llamadas realizadas, generar facturas mensuales, mantener el saldo de las tarjetas, telefónicas de prepago y almacenar información sobre las redes.

                                                         

(es.wikipedia.org/wiki/Base_de_datos)




Evolución histórica

Historia de los sistemas de bases de datos

El uso de sistemas de bases de datos automatizadas, se desarrollo a partir de la necesidad de almacenar grandes cantidades de datos, para su posterior consulta, producidas por las nuevas industrias que creaban gran cantidad de información.

Década de 1950

En este lapso de tiempo se da origen a las cintas magnéticas, las cuales sirvieron para suplir las necesidades de información de las nuevas industrias. Por medio de este mecanismo se empezó a automatizar la información de las nóminas, como por ejemplo el aumento de salario. Consistía en leer una cinta o más y pasar los datos a otra, y también se podían pasar desde las tarjetas perforadas. Simulando un sistema de Backup, que consiste en hacer una copia de seguridad o copia de respaldo, para guardar en un medio extraíble la información importante. La nueva cinta a la que se transfiere la información pasa a ser una cinta maestra. Estas cintas solo se podían leer secuencial y ordenadamente.

Década de 1960

El uso de los discos en ese momento fue un adelanto muy efectivo, ya que por medio de este soporte se podía consultar la información directamente, esto ayudo a ahorrar tiempo. No era necesario saber exactamente donde estaban los datos en los discos, ya que en milisegundos era recuperable la información. A diferencia de las cintas magnéticas, ya no era necesaria la secuencialidad, y este tipo de soporte empieza a ser ambiguo.
Los discos dieron inicio a las Bases de Datos, de red y jerárquicas, pues los programadores con su habilidad de manipulación de estructuras junto con las ventajas de los discos era posible guardar estructuras de datos como listas y árboles.

Década de 1970

Edgar Frank Codd (23 de agosto de 1923 – 18 de abril de 2003), en un artículo "Un modelo relacional de datos para grandes bancos de datos compartidos" ("A Relational Model of Data for Large Shared Data Banks") en 1970, definió el modelo relacional y publicó una serie de reglas para la evaluación de administradores de sistemas de datos relacionales y así nacieron las bases de datos relacionales.
A partir de los aportes de Codd el multimillonario Larry Ellison desarrollo la base de datos Oracle, el cual es un sistema de administración de base de datos, que se destaca por sus transacciones, estabilidad, escalabilidad y multiplataforma.
Inicialmente no se uso el modelo relacional debido a que tenía inconvenientes por el rendimiento, ya que no podían ser competitivas con las bases de datos jerárquicas y de red. Ésta tendencia cambio por un proyecto de IBM el cual desarrolló técnicas para la construcción de un sistema de bases de datos relacionales eficientes, llamado System R.
  Edgar Frank Codd   IBM Corporation    Larry Ellison

Década de 1980

Las bases de datos relacionales con su sistema de tablas, filas y columnas, pudieron competir con las bases de datos jerárquicas y de red, ya que su nivel de programación era bajo y su uso muy sencillo.
En esta década el modelo relacional ha conseguido posicionarse del mercado de las bases de datos. Y también en este tiempo se iniciaron grandes investigaciones paralelas y distribuidas, como las bases de datos orientadas a objetos.

Principios década de los 90

Para la toma de decisiones se crea el lenguaje SQL, que es un lenguaje programado para consultas. El programa de alto nivel SQL es un lenguaje de consulta estructurado que analiza grandes cantidades de información el cual permite especificar diversos tipos de operaciones frente a la misma información, a diferencia de las bases de datos de los 80 que eran diseñadas para las aplicaciones de procesamiento de transacciones. Los grandes distribuidores de bases de datos incursionaron con la venta de bases de datos orientada a objetos.

Finales de la década de los 90

El boom de esta década fue la aparición de la WWW “Word Wide Web ya que por éste medio se facilitaba la consulta de las bases de datos. Actualmente tienen una amplia capacidad de almacenamiento de información, también una de las ventajas es el servicio de siete días a la semana las veinticuatro horas del día, sin interrupciones a menos que haya planificaciones de mantenimiento de las plataformas o el software.

Siglo XXI

En la actualidad existe gran cantidad de alternativas en línea que permiten hacer búsquedas orientadas a necesidades especificas de los usuarios, una de las tendencias más amplias son las bases de datos que cumplan con el protocolo Open Archives Initiative – Protocol for Metadata Harvesting (OAI-PMH) los cuales permiten el almacenamiento de gran cantidad de artículos que permiten una mayor visibilidad y acceso en el ámbito científico y general.


Base de datos Vs ficheros : ventajas e inconvenientes de ellos

 Ventajas de la base de datos.


-Control sobre la redundancia de datos. Los sistemas de ficheros almacenan varias copias de los mismos datos en ficheros distintos.


-Consistencia de datos. Eliminando o controlando las redundancias de datos se reduce en gran medida el riesgo de que haya inconsistencias. Si un dato está almacenado una sola vez, cualquier actualización se debe realizar sólo una vez, y está disponible para todos los usuarios inmediatamente.


-Más información sobre la misma cantidad de datos. Al estar todos los datos integrados, se puede extraer información adicional sobre los mismos.


-Compartición de datos. En los sistemas de ficheros, los ficheros pertenecen a las personas o a los departamentos que los utilizan. Pero en los sistemas de bases de datos, la base de datos pertenece a la empresa y puede ser compartida por todos los usuarios que estén autorizados. Además, las nuevas aplicaciones que se vayan creando pueden utilizar los datos de la base de datos existente.


-Mantenimiento de estándares. Gracias a la integración es más fácil respetar los estándares necesarios, tanto los establecidos a nivel de la empresa como los nacionales e internacionales.




Desventajas de la base de datos.
. Complejidad
. Vulnerable a los fallos
. Instalaciones  costosas


Ventajas de los ficheros
-Coherencia de los resultados: Debido a que la información de la base de datos se recoge y se almacenan una sola.
-Independencia de los datos.
-Disponibilidad: Es la eficiencia de los datos para el conjunto de los usuarios.
-Mayor eficiencia en  recogida, validación de la entrada de los datos al sistema.
-Reducción del espacio de almacenamiento


Desventajas de los ficheros
-Instalación costosa
-Personas especializadas para el manejo de la información
-Ausencia real de normas: Es la ausencia estandarizada que facilite el manejo de las bases de datos.



Arquitectura de las base de datos ( nivel de abstracción , independencia lógica, física)


 Arquitectura de base de datos                                                                                        
 La arquitectura de un sistema de base de datos está influenciada en gran medida por el sistema informático subyacente en el que se ejecuta el sistema de base de datos. En la arquitectura de un sistema de base de datos se reflejan aspectos como la conexión de red, el paralelismo y la distribución.                                               
• La conexión de red: de varias computadoras permite que algunas tareas se ejecuten en un sistema servidor y que otras se ejecuten en los sistemas clientes. Esta división de trabajo ha conducido al desarrollo de sistemas de base de datos cliente-servidor.                                                                                                                    
• El procesamiento paralelo: dentro de una computadora permite acelerar las actitudes del sistema de base de datos, proporcionando a las transacciones una respuesta más rápida, así como la capacidad de ejecutar más transacciones por segundo.                                                                                                                                     
 • La distribución de datos: A través de las distintas sedes o departamentos de una organización permite que estos datos residan donde han sido generados o donde son más necesarios, pero continuar siendo accesibles desde otros lugares o departamentos diferentes.                                                                                                         
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 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.                                                                                   
 -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.   

Independencia lógica y física de los datos.
El concepto de independencia de datos lo podemos definir como la capacidad para modificar el esquema en un nivel del sistema sin tener que modificar el esquema del nivel inmediato superior. Se pueden definir dos tipos de independencia de datos:
 La independencia lógica: Es la capacidad de modificar el esquema conceptual sin tener que alterar los esquemas externos ni los programas de aplicación. Se puede modificar el esquema conceptual para ampliar la base de datos o para reducirla. Si, por ejemplo, se reduce la base de datos eliminando una entidad, los esquemas externos que no se refieran a ella no deberán verse afectados.
 La independencia física: Es la capacidad de modificar el esquema interno sin tener que alterar el esquema conceptual (o los externos). Por ejemplo, puede ser necesario reorganizar ciertos ficheros físicos con el fin de mejorar el rendimiento de las operaciones de consulta o de actualización de datos. Dado que la independencia física se refiere sólo a la separación entre las aplicaciones y las estructuras físicas de almacenamiento, es más fácil de conseguir que la independencia lógica.

                          






DBMS

El sistema organizador de Base de Datos (DBMS)
El DBMS es un conjunto de programas que se encargan de manejar la creación y todos los accesos a las bases de datos. Se compone de un lenguaje de definición de datos (DDL: Data Definition Language), de un lenguaje de manipulación de datos (DML: Data Manipulation Language) y de un lenguaje de consulta (SQL: Structured Query Language).
El lenguaje de definición de datos (DDL) es utilizado para describir todas las estructuras  de información y los programas que se usan para construir, actualizar e introducir la información que contiene una base de datos.
El lenguaje de manipulación de datos (DML) es utilizado para escribir programas que crean, actualizan y extraen información de las bases de datos.
El lenguaje de consulta (SQL) es empleado por el usuario para extraer información de la base de datos. El lenguaje  de consulta permite al usuario hacer requisiciones de datos sin tener que escribir un programa, usando instrucciones como el SELECT, el PROJECT y el JOIN.
La secuencia conceptual de operaciones que ocurren para acceder cierta información que contiene una base de datos es la siguiente:
1 El usuario solicita cierta información contenida en la base de datos.
El DBMS intercepta este requerimiento y lo interpreta.
El DBMS realiza las operaciones necesarias para acceder y/o actualizar la información solicitada
La arquitectura de sistemas de bases de datos de tres esquemas fue aprobado por la ANSI-SPARC (American National Standard Institute - Standards Planning and Requirements Committee) en 1975 como ayuda para conseguir la separación entre los programas de aplicación y los datos, el manejo de múltiples vistas por parte de los usuarios y el uso de un catálogo para almacenar el esquema de la base de datos.
 

 
 
  (felip3.tripod.com/dbmsysusfunciones.html )

Usuarios de las base de datos ( definidos )

Usuarios de las bases de datos.
Podemos definir a los usuarios como toda persona que tenga todo tipo de contacto con el sistema de base de datos desde que este se diseña, elabora, termina y se usa.
Los usuarios que accesan una base de datos pueden clasificarse como:
Programadores de aplicaciones
Los profesionales en computación que interactuan con el sistema por medio de llamadas en DML (Lenguaje de Manipulación de Datos), las cuales están incorporadas en un programa escrito en un lenguaje de programación (Por ejemplo, COBOL, PL/I, Pascal, C, etc.)
Usuarios sofisticados
Los usuarios sofisticados interactuan con el sistema sin escribir programas. En cambio escriben sus preguntas en un lenguaje de consultas de base de datos.
Usuarios especializados
Algunos usuarios sofisticados escriben aplicaciones de base de datos especializadas que no encajan en el marco tradicional de procesamiento de datos.
Usuarios ingenuos
Los usuarios no sofisticados interactuan con el sistema invocando a uno de los programas de aplicación permanentes que se han escrito anteriormente en el sistema de base de datos, podemos mencionar al usuario ingenuo como el usuario final que utiliza el sistema de base de datos sin saber nada del diseño interno del mismo por ejemplo: un cajero.



Métodos de recuperación de información en las bases de datos

La recuperabilidad significa que, si se da algún error en los datos, hay un bug de programa ó de hardware, el DBA (Administrador de base de datos) puede traer de vuelta la base de datos al tiempo y estado en que se encontraba en estado consistente antes de que el daño se causara. Las actividades de recuperación incluyen el hacer respaldos de la base de datos y almacenar esos respaldos de manera que se minimice el riesgo de daño o pérdida de los mismos, tales como hacer diversas copias en medios de almacenamiento removibles y almacenarlos fuera del área en antelación a un desastre anticipado.



Funciones de recuperación de bases de datos

Los servicios Ontrack Recuperación de Datos disponen de varias opciones de servicio para adaptarse a las necesidades de cada cliente.
Tipos de Recuperación de bases de datos:
  • Recuperación de servidores SQL
  • Recuperación de bases de datos de servidores Exchange
  • Recuperación de bases de datos de SharePoint
  • Recuperación de bases de datos de Oracle
  • Recuperación de bases de datos de Lotus Notes
  • Recuperación de bases de datos de Access

Recuperación de bases de datos – Causas de la pérdida de datos

  • Daños en el software del dispositivo de almacenamiento (disco duro, SAN o RAID)
  • Daños en el sistema de archivos: controlado por el sistema operativo, el sistema de archivos almacena y organiza los archivos de los usuarios y el sistema
  • Daños en los archivos: la pérdida de datos se puede producir en el propio archivo

Proceso de recuperación de bases de datos

  • Solicitar el nombre, la ruta y el tamaño de la base de datos
  • Extraer los datos si el dispositivo de almacenamiento no está operativo
  • Ajustar o reparar el sistema de archivos para asociarlo al flujo de datos correcto
  • Reparar la unidad de búsqueda o la base de datos existente o buscar fragmentos de base de datos en la unidad
  • Analizar la estructura interna compleja del archivo con el conjunto de herramientas para bases de datos de Ontrack Recuperación de Datos
  • Elaborar un informe en el que se muestre qué elementos se pueden recuperar (tablas, buzones de correo, etc.)
  • Reparar estructuras de archivos
  • El conjunto de herramientas para bases de datos copia los datos a otra base de datos de servidor SQL o extrae los archivos .PST para Exchange, etc.
  • Realizar una copia de seguridad o archivar los datos recuperados
( www.ontrackdatarecovery.es/recuperacion-bases-datos/)