¿Qué es una base de datos?
Una base de datos es un espacio en el que se
almacenan datos de manera organizada para poder acceder a ellos siempre que
queramos.
Una base de
datos (BD) es un conjunto de datos estructurados apropiadamente y relacionados entre
sí.
Una base de
datos se una colección de datos relacionados entre sí y que tienen un
significado implícito.
Una base de datos es un almacén que nos permite guardar grandes
cantidades de información de forma organizada para poder en un futuro poder
consultarla, realizar búsquedas, ingresar nuevos datos, eliminar registros,
etc. Todo esto de una forma rápida y simple dentro de un ordenador.
Una base de
datos es un conjunto de información relacionada que pertenece a una
organización y que está agrupada como un todo. En la base de datos de una
juguetería, por ejemplo, estará reunida la información de los juguetes (precio,
cantidad en stock), así como los datos de los proveedores (dirección, teléfono,
saldo deudor), clientes (si se desea llevar información individualizada de cada
uno de ellos), empleados (salarios, presentismo, comisiones de los vendedores),
contabilidad (cobranzas, pagos, liquidaciones), etc.
Las bases de
datos son fundamentales en los sistemas de información debido a que estas se utilizan
en todas las áreas profesionales como la investigación, tecnología, arte,
educación, sistemas médicos, programas de ingeniería, programas de desarrollo,
de diseño, sistemas de información geográfica, entre otros.
Cada base
de datos se compone de una o más tablas que guardan un conjunto de datos. Cada
una de estas se divide en columnas y filas: mientras que las columnas guardan
una parte de la información sobre cada elemento que queramos guardar en la
tabla, cada fila de la tabla conforma un registro.
HISTORIA
E INICIOS
Las
bases de datos, tal y como las conocemos hoy, nacieron en los años 50. No
obstante, la necesidad de organizar y guardar datos es por mucho anterior.
Los inicios de las base de datos modernas se
deben sobre todo al desarrollo realizado por el inglés Edgar Frank Codd, que
propuso el primer modelo teórico relacional, es decir, definió cómo se debían
relacionar los datos pertenecientes a una base de datos. Por otro lado IBM
desarrolló la primera definición de lenguaje para base de datos (que definía
cómo añadir y extraer información de una base de datos) llamado SEQUEL. Más
tarde SEQUEL acabaría convirtiéndose en el lenguaje más utilizado hoy en día
con bases de datos, el SQL.
¿Para qué sirven la bases de datos?
Las bases de datos sirven para almacenar información.
El tipo de información puede variar.
Las bases de datos
son utilizadas en infinidad de circunstancias y lugares, como:
- En los
hospitales
- En la
administración
- En el gobierno
- En la escuela
- En el comercio
Tipos De Bases De Datos
Las
bases de datos pueden clasificarse de varias maneras, de acuerdo al contexto
que se este manejando, o la utilidad de la misma.
Segun la variabilidad de los datos almacenados:
Bases De Datos Estáticas
Estas son bases de datos de solo lectura,
utilizadas primordialmente para almacenar datos historicos que posteriormente
se pueden utilizar para estudiar el comportamiento de un conjunto de datos a
traves del tiempo, realizar proyecciones y tomar decisiones.
Bases De Datos Dinámicas
Estas
son bases de datos donde la informacion almacenada se modifica con el tiempo,
permitiendo operaciones como actualizacion, borrado y adicion de datos, ademas
de las operaciones fundamentales de consulta. Un ejemplo de esto puede ser la
base de datos utilizada en un sistema de informacion de un supermercado, una
farmacia, un videoclub o una empresa.
Modelos De
Bases De Datos
Ademas
de la clasificacion por la funcion de las bases de datos, estas tambien se
pueden clasificar de acuerdo a su modelo de administracion de datos.
Un
modelo de datos es basicamente una "descripcion" de algo conocido
como contenedor de datos (algo en donde se guarda la informacion),
asi como de los métodos para almacenar y recuperar informacion de esos
contenedores. Los modelos de datos no son cosas fisicas: son abstracciones que
permiten la implementacion de un sistema eficiente de base de datos; por
lo general se refieren a algoritmos , y conceptos matematicos.
Algunos
modelos con frecuencia utilizados en las bases de datos:
Bases De Datos Jerárquicas
Éstas
son bases de datos que, como su nombre indica, almacenan su información en una
estructura jerárquica. En este modelo los datos se organizan en una forma
similar a un árbol (visto al revés), en donde un nodo padre de
información puede tener varios hijos. El nodo que no tiene padres es
llamado raíz, y a los nodos que no tienen hijos se los conoce como hojas.
Las
bases de datos jerárquicas son especialmente útiles en el caso de aplicaciones
que manejan un gran volumen de información y datos muy compartidos permitiendo
crear estructuras estables y de gran rendimiento.
Una
de las principales limitaciones de este modelo es su incapacidad de representar
eficientemente la redundancia de datos.
Base
De Datos De Red
Éste
es un modelo ligeramente distinto del jerárquico; su diferencia fundamental es
la modificación del concepto de nodo: se permite que un mismo
nodo tenga varios padres (posibilidad no permitida en el modelo jerárquico).
Fue
una gran mejora con respecto al modelo jerárquico, ya que ofrecía una solución
eficiente al problema de redundancia de datos; pero, aun así, la dificultad que
significa administrar la información en una base de datos de red ha significado
que sea un modelo utilizado en su mayoría por programadores más que por
usuarios finales.
Bases
De Datos Transaccionales
Son
bases de datos cuyo único fin es el envío y recepción de datos a grandes
velocidades, estas bases son muy poco comunes y están dirigidas por lo general
al entorno de análisis de calidad, datos de producción e industrial, es
importante entender que su fin único es recolectar y recuperar los datos a la
mayor velocidad posible, por lo tanto la redundancia y duplicación de
información no es un problema como con las demás bases de datos, por lo general
para poderlas aprovechar al máximo permiten algún tipo de conectividad a bases
de datos relacionales.
Bases
De Datos Relacionales
Éste
es el modelo utilizado en la actualidad para modelar problemas reales y
administrar datos dinámicamente. Tras ser postulados sus fundamentos en
1970 , de los laboratorios Ibm en San Jose , 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 ésta 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. Esto es pensando en cada relación como si fuese
una tabla que está compuesta por registros (las filas de una tabla), que
representarían las tuplas, y campos(las columnas de una tabla).
En
este modelo, el lugar y la forma en que se almacenen los datos no tienen
relevancia (a diferencia de otros modelos como el jerárquico y el de red). Esto
tiene la considerable ventaja de que es más fácil de entender y de utilizar
para un usuario esporádico de la base de datos. La información puede ser
recuperada o almacenada mediante "consultas" que ofrecen una amplia
flexibilidad y poder para administrar la información.
El
lenguaje más habitual para construir las consultas a bases de datos
relacionales es SQL, Structured Query Language o Lenguaje
Estructurado de Consultas, un estándar implementado por los principales motores
o sistemas de gestión de bases de datos relacionales.
Durante
su diseño, una base de datos relacional pasa por un proceso al que se le conoce
como normalisazion de una base de datos Durante
los años 80 la aparición de dBASE produjo una revolución en los lenguajes
de programación y sistemas de administración de datos. Aunque nunca debe
olvidarse que dBase no utilizaba SQL como lenguaje base para su gestión.
Bases De Datos
Multidimensionales
Son
bases de datos ideadas para desarrollar aplicaciones muy concretas, como
creación de cubos olap Básicamente
no se diferencian demasiado de las bases de datos relacionales (una tabla en
una base de datos relacional podría serlo también en una base de datos
multidimensional), la diferencia está más bien a nivel conceptual; en las bases
de datos multidimensionales los campos o atributos de una tabla pueden ser de
dos tipos, o bien representan dimensiones de la tabla, o bien representan
métricas que se desean estudiar.
Bases
De Datos Orientadas a Objetos
Este
modelo, bastante reciente, y propio de los modelos informaticos enfocado a
objetos, trata de almacenar en la base de datos los objetos completos
(estado y comportamiento).
Una
base de datos orientada a objetos es una base de datos que incorpora todos los
conceptos importantes del paradigma de objetos:
§ encapsulacion - Propiedad que permite ocultar la
información al resto de los objetos, impidiendo así accesos incorrectos o
conflictos.
§ Hrencia- Propiedad a través de la cual los objetos heredan comportamiento
dentro de una jerarquía de clases.
§ Polimorfismo - Propiedad de una operación mediante la cual puede
ser aplicada a distintos tipos de objetos.
En
bases de datos orientadas a objetos, los usuarios pueden definir operaciones
sobre los datos como parte de la definición de la base de datos. Una operación
(llamada función) se especifica en dos partes. La interfaz (o signatura) de una
operación incluye el nombre de la operación y los tipos de datos de sus
argumentos (o parámetros). La implementación (o método) de la operación se
especifica separadamente y puede modificarse sin afectar la interfaz. Los
programas de aplicación de los usuarios pueden operar sobre los datos invocando
a dichas operaciones a través de sus nombres y argumentos, sea cual sea la
forma en la que se han implementado. Esto podría denominarse independencia
entre programas y operaciones.
Bases
De Datos Documentales
Permiten
la indexación a texto completo, y en líneas generales realizar búsquedas más
potentes. Tesaurus es un sistema de índices optimizado para este tipo de bases
de datos.
Bases De Datos Deductivas
Un sistema de base de datos deductiva, es
un sistema de base de datos pero con la diferencia de que permite hacer
deducciones a través de inferencias. Se basa principalmente en reglas y hechos
que son almacenados en la base de datos. Las bases de datos deductivas son
también llamadas bases de datos lógicas, a raíz de que se basa en lógica
matemática.
Sistema Gestor de Bases de Datos (SGBD)
Los Sistemas Gestores de Bases de
Datos (SGBD, por sus siglas en inglés), también conocidos como sistemas
manejadores de bases de datos o DBMS (DataBase Management System), son un
conjunto de programas que manejan todo acceso
a la base de datos, con el objetivo de servir de interfaz entre
ésta, el usuario y las aplicaciones utilizadas.
Las funciones de un Sistema Gestor de Bases de Datos (SGBD)
La ejecución de las operaciones sobre la base de
datos para luego proporcionarlos al usuario en función de su requerimiento se
realiza de un modo eficiente y seguro. Sus características de un SGDB posibilitan el cumplimiento de una serie de funciones, que
pueden agruparse de la siguiente manera:
1. Definición
de los datos: El SGBD ha de poder definir todos los objetos
de la base de datos partiendo de definiciones en versión fuente para
convertirlas en la versión objeto.
2.
Manipulación de los datos: El SGBD responde a las solicitudes del
usuario para realizar operaciones de supresión, actualización, extracción,
entre otras gestiones. El manejo de los datos ha de realizarse de forma rápida,
según las peticiones realizadas por los usuarios, y permitir la modificación
del esquema de la base de datos gracias a su independencia.
3. Seguridad e
integridad de los datos: Además de registrar el uso de las bases de
datos, ante cualquier petición, también aplicará las medidas de seguridad e
integridad de los datos (adopta medidas garantizar su validez) previamente
definidas. Un SGBD debe garantizar su seguridad frente a ataques o simplemente
impedir su acceso a usuarios no autorizados por cualquier razón.
4.
Recuperación y restauración de los datos: La
recuperación y restauración de los datos ante un posible fallo es otra de las
principales funciones de un SGBD. Su aplicación se realizará a través de un
Plan de recuperación y restauración de los datos que
sirva de respaldo.
Tipos de
gestores de bases de datos
La tipología de los SGBD es
muy variada, en función del criterio que utilicemos para su clasificación.
Agruparlos atendiendo al modelo de datos, número de usuarios o de sitios suele
ser lo más habitual, si bien la tipología puede obedecer a otras muchas pautas,
según convenga desde un determinado enfoque práctico:
·
Relacionales
·
EnRed
·
Jerárquicos
·
Orientados a objetos
sistemas gestores base de datos
populares
MySQL
Es un software de sistema
gestión de base de datos relacional que se puede ejecutar en los sistemas
operativos GNU/Linux, Windows y Mac, se ejecuta de
forma multi-thread y multiusuario y es distribuido por Oracle bajo la
licencia GPL y comercial. Este sistema gestor de base de datos es el mas
popular del mundo, su uso en las aplicaciones web, tales como en WordPres,
Joomla y entre otros , Por ser distribuido bajo la licencia GPL existen
diferentes apis o interfaces de programación de aplicaciones para diversos
lenguajes de programación para acceder a la base de datos de MySQL.
Oracle
Es un sistema de gestión de
base de datos desarrollado por la compañía Oracle, este sistema es de
tipo modelo objeto relacional, por el cual es uno de los gestores de bases
de datos mas completo como: soporte de transacciones, estabilidad,
escalabilidad y puede correr en los sistemas operativos GNU/LINUX, Windows,
Mac y entre otros.
Comprar la licencia de este sistema de gestor
de base datos es muy caro que asciende varios miles de dólares según a la
versión y licencia, sin embargo existe una versión express solo
para fines autoeducativos estrictamente.
PostGreSQL
Es
un sistema gestor de base de datos relacional de código abierto de muchos otros
proyectos, multiplataforma, orientado a objetos bajo la
licencia PostgreSQL que es similara a la BSD de la MIT. Para usar el
gestor de base datos existen interfaces de programación para
muchos lenguajes de programación como por ejemplo: C/C++, Java
PL/Java web, PL/Perl y demás.
Microsoft SQL Server
Un software propietario de
gestión de base de datos creado por la compañía Microsoft disponible,
lamentablemente solo se puede usar en el sistema operativo Windows, aunque
recientemente anunciaron que SQL Server 2016 estaría disponible para
GNU/Linux para este fin de año.
Con este sistema de gestión de
base datos se puede trabajar en modo cliente y servidor, para aquellos que
quieran utilizar se puede descargar una versión express para fines educativos,
para la cual también existen apis para diferentes de tipos lenguajes de
programación.
MariaDB
Es
un programa sistema de manejo de bases de datos multiplataforma
descendiente de MySQL creado en el año 2009 por el descontento de modelo
de desarrollo. Se distribuye bajo la licencia GPL que es una software
completamente libre y además se ha introducido dos nuevos motores de
almacenamiento Aria y XtraDB en sustitución de MyISAM y InnoDB.
Para usar este gestor de base
datos existen apis para los diferentes lenguajes de programación e incluso los
mismos apis que se usan para MySQL son compatibles.
SQLite
es un sistema de manejo de
bases de datos de tipo modelo relacional multiplataforma, este gestor de base
datos se diferencia entre los demás que son cliente-servidor, si no es una
biblioteca en proceso que implementa un sistema autónomo, sin necesidad de
hacer configuración. SQLite es una base de datos SQL embebido motor, que
se puede leer y escribir directamente a los archivos de disco normal,
cuyo archivo puede soportar con la versión 3 de SQLite hasta 2 Terabytes.
MogoDB
es
un sistema de base de datos NoSQL multiplataforma, orientado a documentos
desarrollado bajo la filosofía de software libre, los datos son guardados en la
base datos en estructuras de datos similar a JSON de JavaScript e
incluso tiene la capacidad de realizar consultas utilizando
JavaScript por el cual también existen apis para distintos lenguajes de
programación para realizar consultas e informes.
La
mayoría de los gestores base datos no empaquetan un programa que nos
permita administrar nuestras base de datos, para la cual existe un programa
llamado Navicat
Premium,
es un programa de pago que permite gestionar las bases de datos de forma
mucho más cómoda e intuitiva que se puede usar para los 6 primeros sistemas
gestores base de datos populares que se
menciona en este articulo, para MongoDB se puedes optar a usar
el uMongo.
Microsoft Access
Es el gestor de Bases de
Datos que incluye Microsoft Office, en el podemos manipular,
almacenar y organizar la información que un usuario desee, entre otras cosas
nos permite la creación de formularios, reportes, consultas y propiedades tanto
de importación como de exportación.
Microsoft Access es un Sistema de gestión de base de datos relacional creado y modificado por Microsoft para uso personal de pequeñas organizaciones cuyas bases de datos no requieren de excesiva potencia, ya que se integra perfectamente con el resto de aplicaciones de Microsoft y permite crear pequeñas aplicaciones con unos pocos conocimientos del Programa.
Microsoft Access es un Sistema de gestión de base de datos relacional creado y modificado por Microsoft para uso personal de pequeñas organizaciones cuyas bases de datos no requieren de excesiva potencia, ya que se integra perfectamente con el resto de aplicaciones de Microsoft y permite crear pequeñas aplicaciones con unos pocos conocimientos del Programa.
Modelo entidad/relación
Un modelo entidad-relación
el proceso que permite describir el tipo y las relaciones entre los datos. de
datos que permite representar las entidades relevantes de una base de datos así
como sus interrelaciones y propiedades. La representación de este se realiza a
través de un diagrama con una simbología definida.
Elementos
del modelo entidad relación
Entidad
Es la representación de un
objeto o concepto del mundo real que se describe en una base de datos. Cada
entidad está constituida por uno o más atributos.
Se representan
gráficamente mediante un rectángulo y su nombre va en el interior.
Atributos
Los atributos son las características que definen o
identifican a una entidad. Estas pueden ser muchas, y el diseñador solo utiliza
o implementa las que considere más relevantes.
Los atributos se
representan gráficamente mediante un círculo o elipse, su nombre va en el
interior y van unidos con una línea a su respectiva entidad. El atributo
principal se identifica con una línea que subraya su nombre.
CAMPO
Es un espacio de almacenamiento para
un dato en particular. En las base de datos un campo es la mínima unidad
de información a la que se puede acceder; un campo o un conjunto de ellos
forman un registro, donde pueden existir campos en blanco, siendo éste un
error del sistema operativo. En las hojas de cálculo (como los programas
de Excel) los campos son llamados celdas.
La mayoría de los campos tienen atributos asociados a ellos. Por
ejemplo, algunos campos son numéricos mientras otros almacenan texto, también
varía el tamaño de estos.
Tipos de campo
Un campo puede ser:
Texto: En este tipo de campo se puede
almacenar texto o combinaciones de texto y números, así como números que no
requieran cálculos, como los números de teléfono o códigos postales.
Alfanuméricos: Contiene cifras y letras.
Numérico: Se utiliza para almacenar datos
numéricos que pueden ser utilizados en todo tipo de operaciones matemáticas,
excepto operaciones monetarias(para este tipo de operaciones se utiliza el tipo
de campo Monetario).
Si/No: Son campos que solo contienen uno de dos valores, como: Si/No, Verdadero/Falso, Activado/Desactivado
Registro:
Representa un objeto único de datos implícitamente estructurado en
una tabla.
La estructura implícita de un registro y el significado de los
valores de sus campos exige que dicho registro se a entendido como
una sucesión de datos, uno en cada columna de la tabla.
ARCHIVO:
Un Archivo es identificado por un nombre y la
descripción de la carpeta o directorio que lo contiene.
Son los equivalentes digitales de los archivos en tarjetas, papel
o microfichas del entorno de oficina tradicional, facilitan una manera de
organizar los recursos usados para almacenar permanentemente datos en un
sistema informático
Qué es un dato?
Un dato es la representación de una
variable que puede ser cuantitativa o cualitativa, indican un valor que
se le asigna a las cosas. Los datos son información. Los datos describen en
su conjunto nos
hablan de hechos empíricos. Un dato por sí solo no puede demostrar demasiado,
siempre se evalúa el conjunto para poder examinar los resultados. Para
examinarlos, primero hay que organizarlos o tabularlos
hay dos tipos de datos:
- Cualitativos: Son aquellos que
responden a la pregunta ¿cuál? O ¿cuáles? Aquí hay datos como el color, los
sentimientos, etcétera.
- Cuantitativos: Son aquellos datos
que siempre están referidos a los números. Por ejemplo precio, altura,
edad, etcétera.
Índice de Base de Datos
Un índice es una estructura
de datos definida sobre una columna de tabla (o varias) y que permite
localizar de forma rápida las filas de la tabla en base a su
contenido en la columna indexada además de permitir recuperar las filas de la
tabla ordenadas por esa misma columna.
Índice único
Índice único es aquel en el que no se
permite que dos filas tengan el mismo valor en
la columna de clave del índice. Es decir
que no permite valores duplicados.
VISTAS
Una vista se puede considerar una tabla
virtual o una consulta almacenada que devuelve un conjunto de resultados y a la
que se le pone un nombre pero que no almacena datos físicamente y se consulta
igual que una tabla.
Una VISTA es una tabla virtual derivada de
otras tablas (que pueden ser tablas base o también otras vistas). n Sus tuplas no se
almacenan sino que se generan a partir de las tablas de las que depende (no
necesariamente existen en forma física, por ello se las Vistas: conceptos
considera tablas virtuales) n Son útiles para usar, como si fueran
tablas, consultas que se efectúan frecuentemente, y también para cuestiones de
seguridad.
·
Una vista es una tabla
lógica basada en una tabla u otra vista.
·
No contiene datos en sí
misma, pero es como una ventana a través de la cual se pueden ver o cambiar los
datos de las tablas.
·
Podemos representar con
ellas subconjuntos lógicos o combinaciones de datos.
·
Las tablas sobre las
cuales se basa una vista se llaman tablas base.
¿Qué es una consulta o query a una base de
datos?
Una consulta o query de una base de datos,
es un lenguaje estándar que permite traer datos de una o más tablas, actualizar
contenidos o eliminarlos, de una manera rápida y poderosa; conocido
generalmente como lenguaje SQL.
Funcionalidades
Las funciones más importantes que nos puede permitir realizar un Sistema gestor de base de datos son las siguientes:
a. API (Application Programming Interface): permite a los usuarios avanzados acceder a algunos recursos internos del programa, para configurarlo.
Las funciones más importantes que nos puede permitir realizar un Sistema gestor de base de datos son las siguientes:
a. API (Application Programming Interface): permite a los usuarios avanzados acceder a algunos recursos internos del programa, para configurarlo.
b. Soporte BD ¨S Multiplataforma: indica la compatibilidad entre los distintos Sistemas gestores de bases de datos.
c. Soporte SQL: sirve para establecer indicaciones a la hora de realizar búsquedas y consultas en la base de datos.
d. Programación visual: permite crear una especie de lenguaje de forma gráfica, para establecer parámetros personalizados.
No hay comentarios:
Publicar un comentario