jueves, 10 de noviembre de 2016

Bases de Datos en Cloud para aplicaciones moviles


APLICACIÓN DE LOS SISTEMAS DE BASE DE DATOS.. . .

APLICACIÓN DE LOS SISTEMAS DE BASE DE DATOS.

Las aplicaciones más usuales son para la gestión de empresas e Instituciones públicas. También son ampliamente utilizadas en entornos científicos con el objeto de almacenar la información experimental, en otras palabras las bases de datos serán aplicadas en cualquier parte donde manejen grandes cantidad de de información.

Como por ejemplo:

Creación de actividades de banco de registros de forma colaborativa: bibliografía, catalogación de especies u objetos, etc.


Inserción colaborativa de datos de cualquier tipo para su posterior análisis estadístico.



Líneas aéreas: información de Clientes, horarios, vuelos, destinos, etc. (1ras bases distribuidas geográficamente).




Universidades: información de Estudiantes (perfiles estudiantiles), carreras, horarios, materias, etc
En bancos: transacciones de tarjeta de crédito: para comprar con tarjetas de crédito y la generación de los extractos mensuales.

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.
En las oficinas de patentes, fecha de registro de la patente, datos del desarrollador, planos del producto, etc
Bibliotecas, clasificación de libros, posición o lugar donde se encuentran, cantidad de tomos, cantidad de respaldos, etc.

OTRAS FUNCIONES DEL SISTEMA MANEJADOR DE BASE DE DATOS

MANEJADOR DE DISCO


El manejador de discos es el encargado de todas las operaciones físicas de entrada y salida en el disco duro. Las operaciones que puede realizar el Manejador de Disco son las siguientes: 
  1. Leer una página del conjunto de páginas almacenadas en el disco
  2. Reemplazar una página dentro del conjunto de páginas almacenadas en disco
  3. Añadir una página al conjunto de páginas almacenadas en disco
  4. Eliminar una página del conjunto de páginas almacenadas en el disco
 El acceso a una base de datos se hace de la siguiente manera:

  1. El sistema manejador de base de datos determina cual registro almacenado necesita y pide al manejador de archivos que acceda a este registro.
  2. El manejador de archivos determina cual página tiene el registro deseado y solicita al manejador de disco que acceda a esta página.
  3. El manejador de disco determina la localización física de la página en el disco y realiza la operación de entrada y salida necesaria.
 SISTEMA RELACIONAL

Base de Datos Relacional: Base de datos que el usuario percibe como tablas o conjunto de tablas

Tablas: Esta compuesta por una fila de cabecera de columnas y cero o mas filas de valores de datos.

Tabla Base: Es una tabla que tiene existencia propia es autónoma y nombrada
Vistas: Son tablas virtuales

Operaciones de una Base de Datos: La operaciones que se pueden efectuar en una base de datos son las siguientes: Listar, Agregar, Modificar, Eliminar datos de una tabla en una base de datos relacional.
 VENTAJAS DE LAS VISTAS

Las ventajas de utilizar vistas virtuales son las siguientes:

  1. Facilita la independencia de los datos
  2. Permite a los usuarios ver diferentes partes de una base de datos
  3. Facilita la per sección de los datos
  4. Facilita la seguridad de los datos 

    MODELO RELACIONAL: Es una representación de los datos mediante tablas las cuales se pueden manipular por medio de operaciones. El modelo relacional en cuanto a los datos se ocupa de: Estructuras, Integridad, Manipulación.
    Estructura de los datos: Para poder relacionar una tabla con otra en el modelo relacional de base de datos, se debe tener en cuenta la estructura de los datos de la siguiente manera:

    Relación: Es la estructura básica del modelo relacional que sirve para representar los objetos de la información y las asociaciones entre ellos.
    • Tabla
    • En una sola tabla

    Atributos: Son las propiedades de las relaciones y corresponde a una columna en estas relaciones
    • Campos
    • Encabezado de columna de una tabla

    Tupla: Corresponde a una fila dentro de una relación
    ·         Fila de datos en una tabla

    Grado: Numero de atributos dentro de una relación
    ·         Numero de columnas en una tabla

    Cardinalidad: Numero de tuplas que tiene una relación

    Dominio: Conjunto de valores de las cuales uno o más atributos obtienen su valor real. Este puede ser de dos formas

    ·         Por Extensión: Cuando se dan sus posibles valores
    ·         Por Intensión: Cuando se define el tipo de datos

    Las características de los dominios son los siguientes:

    Un atributo esta siempre asociado a una relación mientras que un dominio tiene existencia propia

    Un atributo toma valores de un dominio

    Varios atributos distintos pueden tomar valores de un mismo dominio
     PROPIEDADES DE LAS RELACIONES

    No existen tuplas repetidas, como el cuerpo de una relación es un conjunto de tuplas por definir, matemáticamente un conjunto no posee elementos repetidos.

    Las tuplas no están ordenadas en una relación por definir. Matemáticamente en un conjunto sus elementos no están ordenados.

    Los atributos no están ordenados, como una cabecera es un conjunto de atributos por definir. Matemáticamente los conjuntos no están ordenados.

    Todos los valores de los atributos atómicos en la intersección de una fila con columna. Debe haber un solo valor y no una lista de valores.


     INTEGRADAD DE LOS DATOS

    Si se quiere hablar de integridad de datos debemos hablar de reglas de integridad relacional que son las que permiten informar al sistema manejador de base de datos sobre ciertas restricciones existentes en los datos. Para que no se presenten ocurrencias no validas en los datos.
    Existen restricciones particulares en una base de datos
    Existen restricciones generales para las bases de datos representadas en dos reglas de integridad.

    1.      Regla de integridad de las entidades (clave primaria)
    2.      Regla de integridad referencial (Clave ajena)

    Clave Primaria: Es el identificador único de una relación, una clave primaria puede ser sencilla formada por un solo atributo o puede ser compuesta conformada por varios atributos.

    Clave candidata: Una relación puede contener varios atributos que sirvan como identificador único, a cada uno de estos atributos se denomina clave candidato.

    Clave Ajena: Una clave ajena es un atributo (puede ser compuesto) de una relación r2 cuyos valores deben concordar con los de una clave primaria en una relación r1.


    Relación Referencial: Es la relación que contiene la clave ajena
    Relación Referida: Es la relación que contiene la clave primaria




DESVENTAJAS DE LAS BASES DE DATOS

DESVENTAJAS DE LAS BASES DE DATOS
ü  Complejidad:
Los SGBD son conjuntos de programas que pueden llegar a ser complejos con una gran funcionalidad. Es preciso comprender muy bien esta funcionalidad para poder realizar un buen uso de ellos.
ü  Coste del equipamiento adicional:
Tanto el SGBD, como la propia base de datos, pueden hacer que sea necesario adquirir más espacio de almacenamiento. Además, para alcanzar las prestaciones deseadas, es posible que sea necesario adquirir una máquina más grande o una máquina que se dedique solamente al SGBD. Todo esto hará que la implantación de un sistema de bases de datos sea más cara.
ü  Vulnerable a los fallos:

El hecho de que todo esté centralizado en el SGBD hace que el sistema sea más vulnerable ante los fallos que puedan producirse. Es por ello que deben tenerse copias de seguridad (Backup).

VENTAJAS DE LAS BASES DE DATOS

VENTAJAS DE LAS BASES DE DATOS

ü  Control sobre la redundancia de datos:
Los sistemas de ficheros almacenan varias copias de los mismos datos en ficheros distintos. Esto hace que se desperdicie espacio de almacenamiento, además de provocar la falta de consistencia de datos.
En los sistemas de bases de datos todos estos ficheros están integrados, por lo que no se almacenan varias copias de los mismos datos. Sin embargo, en una base de datos no se puede eliminar la redundancia completamente, ya que en ocasiones es necesaria para modelar las relaciones entre los datos.

ü  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. Si un dato está duplicado y el sistema conoce esta redundancia, el propio sistema puede encargarse de garantizar que todas las copias se mantienen consistentes.

ü  Compartir 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.

ü  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. Estos estándares pueden establecerse sobre el formato de los datos para facilitar su intercambio, pueden ser estándares de documentación, procedimientos de actualización y también reglas de acceso.
ü  Mejora en la integridad de datos:
La integridad de la base de datos se refiere a la validez y la consistencia de los datos almacenados. Normalmente, la integridad se expresa mediante restricciones o reglas que no se pueden violar. Estas restricciones se pueden aplicar tanto a los datos, como a sus relaciones, y es el SGBD quien se debe encargar de mantenerlas.

ü  Mejora en la seguridad:
La seguridad de la base de datos es la protección de la base de datos frente a usuarios no autorizados. Sin unas buenas medidas de seguridad, la integración de datos en los sistemas de bases de datos hace que éstos sean más vulnerables que en los sistemas de ficheros.

ü  Mejora en la accesibilidad a los datos:
Muchos SGBD proporcionan lenguajes de consultas o generadores de informes que permiten al usuario hacer cualquier tipo de consulta sobre los datos, sin que sea necesario que un programador escriba una aplicación que realice tal tarea.
ü  Mejora en la productividad:
El SGBD proporciona muchas de las funciones estándar que el programador necesita escribir en un sistema de ficheros. A nivel básico, el SGBD proporciona todas las rutinas de manejo de ficheros típicas de los programas de aplicación.
El hecho de disponer de estas funciones permite al programador centrarse mejor en la función específica requerida por los usuarios, sin tener que preocuparse de los detalles de implementación de bajo nivel.
ü  Mejora en el mantenimiento:
En los sistemas de ficheros, las descripciones de los datos se encuentran inmersas en los programas de aplicación que los manejan.
Esto hace que los programas sean dependientes de los datos, de modo que un cambio en su estructura, o un cambio en el modo en que se almacena en disco, requiere cambios importantes en los programas cuyos datos se ven afectados.
Sin embargo, los SGBD separan las descripciones de los datos de las aplicaciones. Esto es lo que se conoce como independencia de datos, gracias a la cual se simplifica el mantenimiento de las aplicaciones que acceden a la base de datos.
ü  Aumento de la concurrencia:
En algunos sistemas de ficheros, si hay varios usuarios que pueden acceder simultáneamente a un mismo fichero, es posible que el acceso interfiera entre ellos de modo que se pierda información o se pierda la integridad. La mayoría de los SGBD gestionan el acceso concurrente a la base de datos y garantizan que no ocurran problemas de este tipo.

ü  Mejora en los servicios de copias de seguridad:
Muchos sistemas de ficheros dejan que sea el usuario quien proporcione las medidas necesarias para proteger los datos ante fallos en el sistema o en las aplicaciones. Los usuarios tienen que hacer copias de seguridad cada día, y si se produce algún fallo, utilizar estas copias para restaurarlos.
En este caso, todo el trabajo realizado sobre los datos desde que se hizo la última copia de seguridad se pierde y se tiene que volver a realizar. Sin embargo, los SGBD actuales funcionan de modo que se minimiza la cantidad de trabajo perdido cuando se produce un fallo.
Sistema de Gestión de Base de Datos (SGBD)

Los Sistemas de Gestión de Base de Datos (en inglés DataBase Management System) son un tipo de software muy específico, dedicado a servir de interfaz entre la base de datos, el usuario y las aplicaciones que la utilizan. Se compone de un lenguaje de definición de datos, de un lenguaje de manipulación de datos y de un lenguaje de consulta.

Aplicaciones de bases de datos:

Aplicaciones de bases de datos:

  • Formas. Se emplean para introducir información a la base de datos. En algunas ocasiones los identificadores (ID) de los objetos no son desplegados en la aplicación. La razón es que en el modelo del usuario no existen y por lo tanto carecen de significado para él. Se utilizan para que el DBMS identifique cada fila de cada tabla y se denominan claves sustitutas.


  • Consultas. Se usan cuando los usuarios desean consultar los datos para contestar preguntas o para identificar problemas o situaciones particulares. Para expresar las consultas se puede usar el lenguaje SQL de acceso a los datos, otra posibilidad es usar la consulta por ejemplo (QBE). En la mayoría de los DBMS las consultas se pueden guardar como parte de la aplicación, de modo que sea posible volverlas a ejecutar. Además en las consultas se pueden especificar parámetros, lo que significa que se estructuran de forma tal que acepten valores de criterios durante su funcionamiento.
  • Reportes. Un reporte es una presentación que tiene un formato de la información de una base de datos. Suelen estar divididos por secciones como Encabezado, títulos, grupos, detalles, subtotales, totales y pié de página. La presentación de la información casi siempre tiene uno o más ordenamientos.
  • Menús. Se usan para organizar los distintos componentes de la aplicación con el propósito de que el usuario final acceda a ellos con facilidad, mostrándole las opciones disponibles y ayudándole a seleccionar las acciones que desea realizar.
  • Programas de aplicación. Los programas de aplicación vienen a ser como el pegamento que nos permite unir el resto de los componentes de manera coherente y permite realizar procesos y cálculos a la aplicación. Adicionalmente suele haber algunas limitaciones que los DBMS no pueden enforzar directamente en la estructura de los datos y que deben ser codificadas en el programa de aplicación. 


ARQUITECTURA DE LAS BASES DE DATOS . . .

ARQUITECTURA DE LAS BASES DE DATOS


La arquitectura de un sistema de base de datos está influenciada por el sistema informático que soporta la instalación del SGBD, lo que reflejará muchas de las características propias del sistema subyacente en el SGBD.
Por otra parte 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




1. Nivel interno: es el nivel más bajo de abstracción, y define cómo se almacenan los datos en el soporte físico, así como los métodos de acceso.
2. Nivel conceptual: es el nivel medio de abstracción. Se trata de la representación de los datos realizada por la organización, que recoge las vistas parciales de los requerimientos de los diferentes usuarios y las aplicaciones posibles. Se configura como visión organizativa total, e incluye la definición de datos y las relaciones entre ellos.
3. Nivel externo: es el nivel de mayor abstracción. A este nivel corresponden las diferentes vistas parciales que tienen de la base de datos los diferentes usuarios. En cierto modo, es la parte del modelo conceptual a la que tienen acceso.




FUNCIONES DEL SISTEMA MANEJADOR DE BASE DE DATOS

FUNCIONES DEL SISTEMA MANEJADOR DE BASE DE DATOS
El sistema manejador de base de datos cumple las siguientes funciones:

  1. Manipulación de datos: El sistema manejador de base de datos debe ser capaz de atender solicitudes de usuarios para extraer y actualizar datos existentes o para agregar datos nuevos, existen solicitudes planeadas y solicitudes no planeadas.

  1. Seguridad e integridad de los datos: El sistema manejador de base de datos debe supervisar las solicitudes de los usuarios y rechazar los intentos de violar las medidas de seguridad e integridad definidas por el administrador de la base de datos.

  1. Recuperación y concurrencia de los datos: El sistema manejador de base de datos debe cumplir ciertos controles de recuperación y concurrencia, para evitar la pérdida de los datos en la base de datos.

  1. Diccionario de datos: El sistema manejador de base de datos debe contar con un diccionario de datos, el cual debe tener toda la información de los campos que conforman las tablas de la base de datos.

  1. Desempeño: El sistema manejador de la base de datos deberá ejecutar todas las funciones especificadas de la manera más eficiente posible.

TIPOS DE DATOS PARA LOS CAMPOS DE UNA TABLA
TEXTO: Admite contenido de caracteres alfanuméricos, el tamaño estará entre 1 y 255 Bytes y el valor por defecto de esta tamaño es de 50 Bytes.     
MEMO: Admite contenido de tipo alfanumérico, el tamaño está entre 1 y 64.000 Bytes (64Kas).
NUMERICOS: Admite contenido de caracteres numéricos, el tamaño será entre 1, 2, 4 y 8 Bytes, dependiendo del formato de tipo numérico. El formato de tipo numérico puede ser de tipo: DOUBLE, FLOAT, INTEGER, etc...  
Este tipo de datos solo se utilizara cuando vayamos a realizar operaciones con ellos.
FECHA Y HORA: Solo admite horas y fechas. Este tipo de dato ocupa 8 Bytes.

MONEDA: Admite contenido de caracteres numéricos, dándoles a estos un formato automático para una moneda (Puntos de millar, símbolo de la peseta, etc...) dependiendo este formato de la configuración regional del panel de control. Este tipo de datos puede llevar decimales y se utilizara siempre que hablemos de cantidades monetarias.

AUTONUMERICO: Este campo lo crea Access con nuestro consentimiento de una manera automática, para establecerlo como una clave principal. Es de tipo numérico, y es incrementada automáticamente por Access cada vez que añadimos un nuevo registro a la tabla. Este tipo de claves principal, no suelen usarse, ya que es preferible definir nuestras propias claves, aunque puede ser usada como una posible puerta trasera en alguna ocasión.


TIPOS DE INDEPENDENCIA DE DATOS

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.



COMPONENTES DE UNA BASE DE DATOS

COMPONENTES DE UNA BASE DE DATOS


•Datos: Es la parte esencial de la información, es decir, la información que llega a la base de datos.
•Atributos: Son los diferentes campos que conforman la estructura de una base de datos.
•Campos: Es la unidad más pequeña de datos.
•Registro: Es un conjunto de campos o atributos relacionados entre sí.

•Archivo: Es un conjunto de registros relacionados.

ELEMENTOS DE UNA BASE DE DATOS

ELEMENTOS DE UNA BASE DE DATOS 
  • Datos: Es la unidad mínima de información que representa un valor que es un carácter de un objeto o algo.
  • Información: Es un conjunto de Datos


  • Sistema de Información: Es un conjunto de elementos que permiten manipular información de determinada empresa, entre estos podemos encontrar el equipo computacional y el Software del sistema.
  • Sistema de Base de Datos: Es un sistema computacional que permite manipular información de una empresa en particular y además esta información debe estar disponible cuando se necesite.

Cuatro Elementos de una Base de Datos o Componentes
1. Información: Esta debe ser:
•Integrada: La información en una base de datos debe existir con un mínimo de redundancia, debe estar en un mismo lugar para ser utilizada cuando se necesite.
•Compartida: Varios usuarios pueden ingresar al mismo tiempo y la información debe estar disponible para todos ellos.
La redundancia en una base de datos se minimiza no se elimina.
2. Equipo: Son los dispositivos físicos que se necesitan, para almacenar y suministrar la información de una base de datos.
3. Programas: Software por medio del los cuales manipulan una serie de datos sin importar su género o categoría.
Sistema manejador de bases de datos (SMBD): Es la aplicación que permite manipular directamente la base de datos y así mismo administrarla.
4. Usuario: Los usuarios de la base datos son las personas encargadas de manipular la información contenida en ella. Los usuarios se clasifican de la siguiente manera:
•Programador: Es el encargado de crear las aplicaciones para la manipulación de la base de datos

•Administrador: Es la persona encargada de la administración de la base de datos, tiene un perfil más general que el técnico.

Modelos de bases de datos

Modelos de bases de datos 
Además de la clasificación por la función de las bases de datos, éstas también se pueden clasificar de acuerdo a su modelo de administración de datos.
Un modelo de datos es básicamente una "descripción" de algo conocido como contenedor de datos (algo en donde se guarda la información), así como de los métodos para almacenar y recuperar información de esos contenedores. Los modelos de datos no son cosas físicas: son abstracciones que permiten la implementación de un sistema eficiente de base de datos; por lo general se refieren a algoritmos, y conceptos matemáticos.

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.
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. 

Base de datos relacional
Éste es el modelo más utilizado en la actualidad para modelar problemas reales y administrar datos dinámicamente. 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 normalización de una base de datos.
Durante los años '80 (1980-1989) 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 multidimensional 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 informáticos orientados a objetos, trata de almacenar en la base de datos los objetos completos (estado y comportamiento).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.Se está trabajando en SQL3, que es el estándar de SQL92 ampliado, que soportará los nuevos conceptos orientados a objetos y mantendría compatibilidad con SQL92.
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. 
Base de datos deductivas
Un sistema de base de datos deductivas, 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. También las bases de datos deductivas son llamadas base de datos lógica, a raíz de que se basan en lógica matemática.



Tipos de base de datos

TIPOS  DE BASE DE DATOS
En la actualidad se pueden encontrar diversas bases de datos como son:
Bases de datos estáticas

Éstas son bases de datos de sólo lectura, utilizadas primordialmente para almacenar datos históricos que posteriormente se pueden utilizar para estudiar el comportamiento de un conjunto de datos a través del tiempo, realizar proyecciones y tomar decisiones

Bases de datos dinámicas
Éstas son bases de datos donde la información almacenada se modifica con el tiempo, permitiendo operaciones como actualización y adición de datos, además de las operaciones fundamentales de consulta. Un ejemplo de esto puede ser la base de datos utilizada en un sistema de información de una tienda de abarrotes, una farmacia, un videoclub, etc. 
Según el contenido
Bases de datos bibliográficas
Solo contienen un surrogante (representante) de la fuente primaria, que permite localizarla. Un registro típico de una base de datos bibliográfica contiene información sobre el autor, fecha de publicación, editorial, título, edición, de una determinada publicación, etc. Puede contener un resumen o extracto de la publicación original, pero nunca el texto completo, porque sino estaríamos en presencia de una base de datos a texto completo (o de fuentes primarias—ver más abajo). Como su nombre lo indica, el contenido son cifras o números. Por ejemplo, una colección de resultados de análisis de laboratorio, entre otras.
Bases de datos de texto completo
Almacenan las fuentes primarias, como por ejemplo, todo el contenido de todas las ediciones de una colección de revistas científicas.

Directorios
Un ejemplo son las guías telefónicas en formato electrónico.
Bases de datos o "bibliotecas" de información Biológica
Son bases de datos que almacenan diferentes tipos de información proveniente de las ciencias de la vida o médicas. Se pueden considerar en varios subtipos:
  • Aquellas que almacenan secuencias de nucleótidos o proteínas.
  • Las bases de datos de rutas metabólicas
  • Bases de datos de estructura, comprende los registros de datos experimentales sobre estructuras 3D de biomoléculas
  • Bases de datos clínicas
  • Bases de datos bibliográficas (biológicas)