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.
Actualmente, y debido al desarrollo tecnológico de campos como la informática y
la electrónica, la mayoría de las bases de datos están en formato digital
(electrónico), y por ende se ha desarrollado y se ofrece un amplio rango de
soluciones al problema del almacenamiento de datos.
Una
Base de Datos consiste de una colección de datos interrelacionados y un
conjunto de programas que permiten acceder esos datos. Su objetivo primordial es proporcionar un
medio ambiente que sea conveniente y eficiente tanto al extraer como al
almacenar datos. Su orientación es a
nivel empresarial como la entidad central en donde todas sus operaciones se
fusionan al utilizar esta herramienta (centralizado). A continuación veremos las ventajas y
desventajas de utilizar una Base de Datos.
Una
base de datos es una colección de información organizada de forma que un
programa de ordenador pueda seleccionar rápidamente los fragmentos de datos que
necesite. Una base de datos es un sistema de archivos electrónico. Las bases de
datos tradicionales se organizan por campos, registros y archivos. Un campo es
una pieza única de información; un registro es un sistema completo de campos; y
un archivo es una colección de registros. Por ejemplo, una guía de teléfono es
análoga a un archivo. Contiene una lista de registros, cada uno de los cuales
consiste en tres campos: nombre, dirección, y número de teléfono.
1. CUÁLES SON LAS CARACTERÍSTICAS DE UNA BASE DE DATOS
Independencia de los Datos. Es decir,
que los datos no dependen del programa y por tanto cualquier aplicación puede
hacer uso de los datos.
- Reducción de la Redundancia.
Llamamos redundancia a la existencia de duplicación de los datos, al reducir
ésta al máximo conseguimos un mayor aprovechamiento del espacio y además
evitamos que existan inconsistencias entre los datos. Las inconsistencias se
dan cuando nos encontramos con datos contradictorios.
- Seguridad. Un SBD debe permitir que
tengamos un control sobre la seguridad de los datos.
- Se visualiza normalmente como una
tabla de una hoja de cálculo, en la que los registros son las filas y las
columnas son los campos, o como un formulario.
- Permite realizar un listado de la
base de datos.
- Permiten la programación a usuarios
avanzados.
INTRODUCCIÓN DE DATOS
En una base de datos podemos
introducir, entre otros, los siguientes tipos de datos:
- Vídeo: secuencias de imágenes.
- Gráficos: archivos de imagen que
pueden modificar la base de datos.
- Sonido: archivos de audio.
- Lógicos: tratan de establecer
relaciones entre los datos
- Numéricos.
- Alfanuméricos.
ESCRIBA LAS VENTAJAS DE UNA BASE DE DATOS. HAGA UNA BREVE DESCRIPCIÓN DE
CADA UNA
VENTAJAS DEL USO DE BASE DE DATOS
Obtener más información de la misma
cantidad de data - La base de datos facilita al usuario obtener mas información
debido a la facilidad que provee esta estructura para proveer datos a los
usuarios (si se tiene el privilegio).
Ejemplo: comparar un Centro de Cómputos tradicional en COBOL vs uno que
utilize una Base de Datos.
Compartir los Datos - Usuarios de distintas oficinas
pueden compartir datos si estan autorizados.
Esto implica que si un dato cambia de contenido como por ejemplo la
dirección de un cliente, todos los usuarios que pueden acceder ese dato, verán
inmediatamente el cambio efectuado.
Ejemplo: Explicar cómo trabajaba un Centro de Computos tradicional con
un Sistema Estudiantil que tenga sub-sistemas de Registro, Asistencia
Economica, Estudio y Trabajo, Matrícula, etc.
Balance de Requerimientos Conflictivos - Para que la Base de Datos trabaje apropiadamente, necesita de una
persona o grupo que se encargue de su funcionamiento. El título para esa posición es Administrador
de Base de Datos y provee la ventaja de que Diseña el sistema tomando en mente
la necesidad de cada departamento de la empresa. Por lo tanto se beneficia mayormente la
empresa aunque algunos departamentos podrían tener leves desventajas debido a
su idiosincrasia. Tradicionalmente se
diseñaba y programa según la necesidad de cada departamento por separado. Ejemplo: Explicar cómo en diferentes
departamentos utilizaban diferentes herramientas y estructuras de datos para su
sistema particular y como esto afectaba a los otros departamentos.
Se refuerza la estandarización - Debido a lo que se
mencionó previamente, es más facil estandarizar procesos, formas, nombres de
datos, formas, etc.
Redundancia controlada - Debido al sistema
tradicional de archivos independientes, los datos se duplicaban constantemente
lo cual creaba mucha duplicidad de datos y creaba un problema de sincronización
cuando se actualizaba un dato en un archivo en particular. Ejemplo: En el sistema de Registro y de
Asistencia Económica pasaba mucho eso.
El método que utilizaron para resolver el problema fue el de periodicamente actualizar el
archivo de Asistencia Económica, con el archivo de registraduria (principal). Lo cual trae como consecuancia, uso
inecesario de los recursos de la computadora.
Ojo!, la redundancia se controla, no se elimina por completo.
Consistencia - Al controlarse la redundancia,
cuando actualizas un dato, todos los usuarios autorizados de la Base de Datos
pueden ver el cambio independientemente de que estén trabajando en distintos
sistemas.
Integridad - La base de datos tiene la capacidad
de validar ciertas condiciones cuando los usuarios entran datos y rechazar
entradas que no cumplan con esas condiciones.
El DBA (Data Base Administrator) es responsable de establecer esas
validaciones.
Seguridad - El DBA al tener control central de
los Datos, la Base de Datos le provee mecanismos que le permiten crear niveles
de seguridad para distintos tipos de Usuarios.
En COBOL esta opción tendría que programarse.
Flexibilidad y rapidez al obtener
datos - Aqui el usuario puede fácilmente obtener información de la Base de
Datos con tan solo escribir unas breves oraciones. Esto evita el antiguo y burocrático proceso
de llenar una petición al Centro de Cómputos para poder obtener un
informe. Ejemplo: Explicar como ocurría
ese proceso.
Aumenta la productividad de los programadores - Debido a que los programadores no se tienen que preocupar por la
organización de los datos ni de su validación, se pueden concentrar en resolver
otros problemas inmediatos, mejorando de ese modo su productividad.
Mejora el mantenimiento de los programas - Debido a que los datos son independientes de los programas (a diferencia
de Cobol), si ocurre un cambio en la estructura de una tabla (archivo), el
código no se afecta. Ejemplo: Explicar
el problema de Cobol cuando ocurre un cambio de campo en un archivo aún con el
uso de librerías.
Independencia de los Datos - Debido a lo que se
mencionó previamente, los datos pueden modificarse para por ejemplo mejorar el
"performance" de la Base de Datos y como consecuancia, no se tiene
que modificar los programas.
CUÁLES SON LAS DESVENTAJAS DE UNA
BASE DE DATOS. HAGA UNA BREVE DESCRIPCIÓN DE CADA UNA
DESVENTAJAS DEL USO DE BASE DE DATOS
Tamaño - Al proveer todas las ventajas
anteriormente nombradas, el Sistema de Manejo de Base de Datos (DBMS) requiere
de mucho espacio en disco duro y también requiere de mucha memoria principal
(RAM) para poder correr adecuadamente.
Complejidad - Debido a la cantidad de operaciones
y a las capacidades del DBMS, se
convierte en un producto complejo de entender.
Esto requiere que los programadores y los analistas deben tomar cursos
que los adiestren para poder comprender las capacidades y limitaciones del DBMS.
Costo - Los productos de Bases de Datos
(Oracle, DB2, Etc.) son productos caros.
Esto sin contar los adiestramientos del personal del centro de cómputos
y de los usuarios. Ejemplo: Explicar el
costo envuelto en implantar FRS en la Universidad.
Requerimientos adicionales de Equipo - El adquirir un
producto de Base de Datos, requiere a su vez adquirir equipo adicional para
poder correr ese producto como por ejemplo, servidores, memoria, discos duros,
etc. Si se pretende correr la Base de Datos con el mínimo de requerimientos,
esta posiblemente se degrada y el "response time" al usuario se va a
afectar grandemente.
En caso de allá, el impacto es mayor - Si un componente de la
Base de Datos sufre un desperfecto, se detiene las operaciones del producto por
completo. En el caso de un ambiente no
centralizo en Cobol, el impacto casi siempre afecta al departamento en donde
ocurrió el problema únicamente.
Complejo el recuperar los datos - En
caso de un accidente que corrompa la Base de datos, el proceso de recuperación y de devolver a la Base de Datos su estado anterior al
problema, es mucho más complejo de ejecutar que en sistemas tradicionales.
QUE ES UN MOTOR DE BASE DE DATOS. CUÁLES SON LOS MÁS UTILIZADOS Y ELABORE
UNA DESCRIPCIÓN DE CADA UNO DE ELLOS.
El Motor de base de datos es el
servicio principal para almacenar, procesar y proteger los datos. El Motor de
base de datos proporciona acceso controlado y procesamiento de transacciones
rápido para cumplir con los requisitos de las aplicaciones consumidoras de datos
más exigentes de su empresa.
MongoDB: Es una base de datos Open Source de
gran rendimiento, escalable, schema-free (creo que esto se refiere a que no es
una base de datos relacional convencional, aunque no estoy del todo seguro) y
orientada a documentos (esquemas de datos tipo JSON). Hay drivers preparados
para usar esta base de datos desde lenguajes como PHP, Python, Perl, Ruby,
JavaScript, C++ y muchos más.
Hypertable: Hypertable es un sistema de
almacenamiento distribuido de datos de alto rendimiento diseñado para soportar
aplicaciones que requieran máximo rendimiento, escalabilidad y eficiencia. Se
ha diseñado y modelado a partir del proyecto BigTable de Google y se enfoca
sobre todo a conjuntos de datos de gran escala.
Apache CouchDB: Como en el caso de MongoDB, este
proyecto está destinado a ofrecer una base de datos orientada a documentos que
se pueden consultar o indexar en modo MapReduce usando JavaScript. CouchDB
ofrece una API JSON RESTful a la que se puede acceder desde cualquier entorno
que soporte peticiones HTTP.
Neo4j: Es un motor de persistencia
completamente transaccional en Java que almacena los datos mediante grafos, y
no mediante tablas. Neo4j ofrece una escalabilidad masiva. Puede manejar grafos
de varios miles de millones de nodos/relaciones/propiedades en una única
máquina, y se puede escalar a lo largo de múltiples máquinas.
Riak: Riak es una base de datos ideal para
aplicaciones web y combina:-Una tienda con un valor clave descentralizado
• Un motor map/reduce flexible
•
Una interfaz de consultas
HTTP/JSPN amigable.
Oracle Berkeley DB: Se trata de un motor de bases de
datos embebidas que proporciona a los desarrolladores persistencia local,
rápida y eficiente con una administración nula. Oracle Berkeley DB es una librería
que se enlaza directamente en nuestras aplicaciones y permite realizar llamadas
simples a funciones en lugar de enviar mensajes a un servidor remoto para
mejorar el rendimiento
0 comentarios:
Publicar un comentario