martes, 4 de octubre de 2011

02.- Recuperación de información en bases de datos

¿Qué es una base de conocimiento?
Es cualquier colección o fondo documental que constituye el corpus de un sistema de recuperación de información. Habitualmente esta base de conocimiento se organiza y estructura en bases de datos para su mejor gestión, tratamiento y recuperación. Esto significa que base de conocimiento puede ser desde un compendio de datos, cifras y cadenas de texto inconexas, hasta documentos, referencias bibliográficas y compendios informativos y semánticos con plena significación.

¿Qué es una base de datos?
La base de datos es el sistema que posibilita la organización y estructuración de los contenidos o bases de conocimiento en tablas y éstas a su vez en campos, de tal forma que cada campo represente una característica o rasgo descriptivo de la información o contenido registrado en la base de datos y cada tabla represente el dominio general que se está almacenando. Por ejemplo una tabla de usuarios contendrá campos lógicos que definan, describan e identifiquen a cada usuario. Por ejemplo el nombre, apellidos, dni, direccion, correo, website, telefono, cp, etc. Dentro de las distintas tablas de una base de datos es posible encontrar relaciones evidentes, ampliando la magnitud de la información. Es el caso de las bases de datos relacionales. Por ejemplo la tabla usuarios puede estar relacionada con la tabla prestamos en la que se relacionan los documentos y materiales librarios que se les presta. Esta operación en todo caso requiere de un campo clave de relación, que puede ser el identificador del usuario, sobre el que se registra los datos del préstamo y el identificador del libro que se le está prestando. Este mecanismo tan sencillo hace posible que distintas tablas queden vinculadas y puedan ser contrastadas y filtradas. Pero una base de datos comporta muchos más aspectos, el tipo de campos, sus características especiales para almacenar determinados contenidos, por ejemplo datos binarios, imágenes, textos de gran extensión, numeración en coma flotante, etc. Todos estos componentes hacen que cualquier base de conocimiento pueda ser recogida sea cual sea su naturaleza y características.

¿Qué es un gestor de bases de datos?
El manejo de las bases de datos habitualmente se lleva a cabo mediante comandos bien definidos en terminales especializados, shell (Linux), cmd (Windows). Estos comandos en la mayoría de los casos responden al lenguaje de consulta normalizado SQL (Structured Query Language) con el que la base de datos entiende qué debe hacer. Mediante este lenguaje es posible dar ordenes al sistema para que inserte un registro, lo borre, lo edite y por supuesto recupere un determinado dato, información o documento. Dado que este método de comunicación requiere un tecleado continuo para interactuar con el sistema, se han desarrollado programas informáticos que llevan a cabo dicha función de manera automática, facilitando al administrador un interfaz gráfico para la edición, tratamiento y recuperación de la información. Estos programas que permiten trabajar con las bases de datos, las tablas, los campos y los datos almacenados en ellas se denominan gestores de bases de datos. Uno de los más conocidos y utilizados en todo el mundo es PhpMyAdmin. Diseñado para trabajar principalmente con bases de datos que emplean el lenguaje SQL.

¿Qué es MySQL?
MySQL es la principal base de datos que alambica la web. Utiliza el lenguaje de consulta SQL y es utilizada conjuntamente con el lenguaje de programación PHP para crear las principales aplicaciones de la red. Normalmente actúa como un componente más que se instala en el paradigma de desarrollo web WAMP (SO. Windows, Servidor http Apache, BD MySQL, intérprete PHP), LAMP (SO. Linux, Servidor http Apache, BD MySQL, intérprete PHP) o MAMP (SO. Mac, Servidor http Apache, BD MySQL, intérprete PHP). Dicho de otra forma es la base de datos que sirve para almacenar la mayoría de los datos y transacciones comunicativas que se producen en internet. Es muy notable su utilización en Sitios Web, CMS (Content Management System) o gestores de contenidos, Sistemas de Gestión Integral de Bibliotecas, Archivos, Museos y un largo etcétera de herramientas y aplicaciones de software libre. Entre sus características más importantes destaca su capacidad para ejecutar múltiples consultas en distintos hilos de ejecución por segundo, gran capacidad de almacenamiento y motor de almacenamiento que efectúa un proceso de indexación automático de los contenidos y en todo caso de la base de conocimiento con que se alimente. Estas últimas características permiten hablar de recuperación de información y no de recuperación de datos, ya que efectúa por si solo los procesos de tratamiento previos a la recuperación de información. 
  • Eliminación de palabras vacías
  • Indexación de contenidos
  • Creación de fichero inverso
  • Análisis de frecuencias de cada término
  • Recuperación booleana
  • Recuperación a texto completo
  • Recuperación con lenguaje natural
  • Recuperación con expansión de consulta

    ¿Cómo funciona?
    Para trabajar con MySQL se necesita previamente instalarlo. Esta tarea se lleva a cabo con la instalación de un servidor http y sus componentes habituales, utilizando uno de los paradigmas de desarrollo web mencionados anteriormente. Por ejemplo mediante la instalación de una distribución WAMP ( AppServ ), LAMP ( Xampp ) o MAMP ( mamp ). Una vez instalado se requieren unos datos de conexión fundamentales para empezar a operar, estos son:
    • Nombre del servidor. Esto es la dirección IP o el nombre de dominio o la máquina en el que está instalado el servicio HTTP, la base de datos MySQL y el intérprete PHP. Por ejemplo si se trata de una instalación local que corresponde a nuestro equipo u ordenador, la dirección IP del servidor siempre será 127.0.0.1 y el nombre de servidor localhost, normalmente.
    • Nombre de la base de datos. Para que MySQL sepa con que base de datos se va a trabajar, es necesario indicar o seleccionar en todo caso su nombre. Se debe pensar que MySQL puede generar tantas bases de datos como requiera el usuario, lo que implica que en todo momento es necesario distinguir sobre cuál se desea operar.
    • Usuario y contraseña MySQL. Es el nombre del usuario y su contraseña de acceso a la base de datos MySQL. Éste puede ser un simple usuario con unos privilegios limitados o el administrador del sistema. En una instalación local de prueba, tanto el usuario como la contraseña siempre será root (Convenido por defecto).   
    Ejemplo de sintaxis de conexión en PHP
    <?php  
    $con = mysql_connect('localhost', 'root', 'root') or die ('error: no se pudo conectar a mysql');
    $database = 'openbiblio';
    ?>

    Especificados los datos de conexión e introducidos en el sistema MySQL, se hace posible su consulta y operación mediante sentencias SQL o bien empleado el interfaz gráfico de un gestor de bases de datos como el mencionado anteriormente.

      2 comentarios: