Taller: Publicación de bases de datos ISIS en la Web ● Solsoft de Costa Rica S.A. ● Prof. Braulio José Solano Rojas ● Director General de Solsoft ●

Slides:



Advertisements
Presentaciones similares
Braulio Solano Rojas Director General de Solsoft de Costa Rica S.A.
Advertisements

Estructuras de control
Búsqueda de una frase exacta
Sistema de Información Cultural, CONACULTA México, 2006 SiC / RENiC Aspectos técnicos relevantes para un Sistema de Información (SI)
Internet y tecnologías web
ADELA TORRES JONATHAN BEJARANO
Unidad 1 DISEÑO DE ALGORITMOS ING. Nelwi Baez. MSC
Estructuras de Información y Archivos
Modelando aplicaciones
COLEGIO DE BACHILLERES PLANTEL 13 XOCHIMILCO-TEPEPAN MATERIA:TIC EQUIPO:23 PRESENTACION: BASE DE DATOS ALUMNAS: Velazquez Corona Elsa Ponciano Antonio.
Acceso a bases de datos MySQL en PHP
Desarrollo de Aplicaciones para Internet
Tecnologías Cliente / Servidor Capitulo III Richard Jiménez V. clienteserver.wordpress.com.
Estructura de un Sistema Operativo
FLAN “F- LINKS AND NODES”
PHP-MYSQL OPERADORES EN PHP
BASE DE DATOS MICROSOFT ACCESS
Bases de Datos Introducción.
Desarrollo de Aplicaciones para Internet
ALGORÍTMICA Dpto. Ingeniería de Sistemas y Automática
Páginas web dinámicas. Olga García Collado.
TIPOS DE SERVIDORES 4/2/2017 3:29 PM
Servidores de nombres de dominio (DNS):
Servidores de nombres de dominio (DNS)
DE LAS CUENTAS DE USUARIO Y OPCIONES DE CARPETA
Por: Santiago Toro Rendón Raquel Sepúlveda.  El SO se instala en una sección definida de la unidad de disco duro, denominada partición de disco. Existen.
Con fines prácticos se puede clasificar al software en tres tipos: Software de sistema Software de programación Software de aplicación.
TÉCNICO EN PROGRAMACIÓN DE SOFTWARE Instructor: Ingeniero Adrián Guerrero Taborda
Al término de la clase, el alumno reconoce las ventajas de usar JAVASCRIPT para un proyecto web.
TRADUCTOR DE UN PROGRAMA
MAIRA LUCIA ORTIZ CAMILO ORTEGON DIAZ CRISTIAN CAMILO VARGAS
Servicios de las Redes Por: Karen Caraballo Álvarez Marisol Sánchez Márquez Educ. 676 Prof. Carmen Robles Sánchez (Ed, D (c) )
Bases de datos en la Web n Las bases de datos permiten almacenar de una forma estructurada y eficiente toda la información de un sitio web n Ventajas –Proporcionar.
InfoPath Ventajas y Uso.
Material de apoyo Unidad 4 Estructura de datos
Ventajas de Aleph Por: Luisa Fernanda Ruiz E. Astrid Girlesa Uribe M.
Por Isabel Ramírez Ríos Valery Ocampo Ortiz 2014.
Hermilia Molina Acevedo
Cuentas de usuarios y grupos en windows 2008 server
INTERNET.
Introducción al Lenguaje. ¿ Qué es PHP ? O Hypertext Pre-processoes (PHP) es un lenguaje de "código abierto" interpretado, de alto nivel, embebido en.
COLEGIO DE BACHILLERES PLANTEL 13 XOCHIMILCO-TEPEPAN MATERIA:TIC EQUIPO:21 PRESENTACION: BASE DE DATOS ALUMNAS: Adán Millán Sánchez.
Taller de Herramientas de Presentación
EQUIPO:#3 GRUPO:304 NOMBRES: Lizbeth Nava Barón y Erick Ali Mejía.
Tema 6 – Servicio de Correo Electrónico
La administración de dominios
¿Qué son los motores de búsqueda? Son los que permiten buscar y recuperar información en Internet a través de la utilización palabras clave y combinaciones.
Manual violento de Navicat
SHUTTENBORG ACCESS CONOCE LOS PROGRAMAS. Cortés Gamboa Lizzeth
Que es un navegador de Internet. Un navegador web o de Internet, es un programa que permite visualizar la información que contiene una página web (que.
Práctica Profesional PHP.
1
INTRODUCCIÓN A MICROSOFT WINDOWS XP LIC. SAIDYS JIMÉNEZ QUIROZ ÁREA DE TECNOLOGÍA E INFORMÁTICA CESCOJ2011.
TRABAJO MONOGRÁFICO – 4º ESO
Colegio de Bachilleres Plantel 13 Xochimilco - Tepepan
Motor de búsqueda Un motor de búsqueda es una aplicación de software diseñado para encontrar los recursos digitales como páginas web, textos, noticias.
Internet Internet es una red de alcance mundial, compuesta por redes de datos privadas y públicas que se comunican entre si, independientemente del hardware.
APLICACIONES DEL COMPUTADOR Y EL CELULAR
Sistema de Dominio DNS Por: Cesar Posada Octavio Sucerquia Yefferson Henao.
Repositorios en la Web Desarrollo de aplicaciones web Prof: Jimi Quintero Dalia Rangel C.I: v
World Wide Web. ¿ Que es la world wide web ?  La world wide web o www, nació a principios de los 90 en suiza Su función es ordenar y distribuir la información.
En Internet: Los datos se transforman en información cuando una persona los lee, los comprende y los usa con algún fin: para estudiar, para trabajar,
Visual Basic Prof.: Carol Briones García. Uso de Archivos  Definición  Es un conjunto de información que se almacena en algún medio de escritura que.
¿Qué es una base de datos? Una base de datos se puede definir como un conjunto de información relacionada que se encuentra agrupada ó estructurada. Desde.
1.ª Parte: Dónde y cómo buscar información.  Cuando se busca información sobre un tema, es necesario emplear una «estrategia de búsqueda» para optimizar.
GESTIÓN Y ADMINISTRACIÓN WEB. INTRODUCCIÓN A INTERNET Internet constituye una vía de comunicación y una fuente de recursos de información a escala mundial.
Definición: Es un estilo de programación, su objetivo primordial es la separación de la capa de presentación, capa de negocio y la capa de datos. ARQUITECTURA.
PRODUCTOS INTEGRADOS EN LA NUBE OFIMATICA EN LA NUBE VS MICROSOFT OFFICE.
Transcripción de la presentación:

Taller: Publicación de bases de datos ISIS en la Web ● Solsoft de Costa Rica S.A. ● Prof. Braulio José Solano Rojas ● Director General de Solsoft ●

Intr. sobre la Recuperación de Información y OpenIsis ● Un modelo de recuperación de la información es una cuadrupleta [D, Q, F, R(q i,d j )] donde (1) D es un conjunto compuesto de vistas lógicas (o representaciones) para los documentos en la colección. (2) Q es un conjunto compuesto de vistas lógicas (o representaciones) para las necesidades de información del usuario. Tales representaciones son llamadas consultas.

Intr. sobre la Recuperación de Información y OpenIsis (3) F es un marco para modelar representaciones de documentos, consultas y sus relaciones. (4) R(q i,d j ) es una función de relevancia que asocia un número real con una consulta q i que pertenece a Q y una representación de documento d j que pertenece a D. Tal relevancia define un orden entre los documentos con respecto de la consulta q i.

Intr. sobre la Recuperación de Información y OpenIsis ● OpenIsis para “caber” en el marco formal anterior se debe considerar un sistema de recuperación de información cuyo dominio de relevancia es booleano, es decir, la función de relevancia siempre devuelve 1 ó 0. ● Existen muchos sistemas de recuperación de la información en la actualidad. Los más famosos son los buscadores de Internet como Yahoo, Google, Altavista, etc. Sin embargo, las primeras instituciones en adoptar estos sistemas fueron las bibliotecas.

Ventajas de OpenIsis ● OpenIsis comparado a Microisis, Winisis, etc. posee las siguientes ventajas. – Es software libre *MÁS IMPORTANTE*. – Posee un servidor (Malete) que utiliza normas conocidas Z39.2 y Z – Su desarrollo técnico rompe barreras de tamaño de archivo, escritura concurrente, etc.

Ventajas de OpenIsis: Software Libre 1.Libertad para utilizar el programa (o biblioteca) para cualquier propósito. 2.Libertad para estudiar como funciona el programa y adaptarlo a las necesidades locales. 3.Libertad de distribuir copias, con lo cual se ayuda a la comunidad. 4.Libertad de mejorar el programa (o biblioteca) y hacer públicas las mejoras a los demás, de modo que toda la comunidad se beneficie.

Ventajas de OpenIsis: Servidor ● Una de las ventajas atractivas de OpenIsis es que puede ser utilizado como servidor (Malete) o como una biblioteca de funciones que podemos agregar a nuestras aplicaciones. ● En el sitio de OpenIsis existen bibliotecas en diferentes lenguajes para crear clientes. ● El servidor además cumple con las normas Z39.2 y Z39.50.

Ventajas de OpenIsis: Servidor ● Una de las ventajas de tener un servidor es que se simplifica la concurrencia. Ahora no es el cliente el que se encarga de bloquear registros para la escritura, sino el servidor. ● La lectura y escritura se vuelven transparentes para los clientes. ● Se mejora la consistencia pues no aparecen registros aún bloqueados.

Ventajas de OpenIsis: Otras ● Mi preferida: textualidad. ● Existen dos diseños relacionados: – El diseño de formatos de archivos para mantener datos de aplicaciones en un almacenamiento permanente. – El diseño de protocolos de aplicaciones para pasar datos y comandos entre aplicaciones colaborativas, posiblemente en una red.

Ventajas de OpenIsis: Otras ● Importancia de ser textual: – Transparencia – Encapsulación – Extendibilidad

Ventajas de OpenIsis: Otras ● El archivo maestro de OpenIsis tiene un formato de texto, esto significa que no tiene las limitaciones de los formatos binarios. En otras palabras es textual. ● El protocolo del servidor también es textual. ● Las especificaciones para la serialización se encuentran documentadas en los sitios de OpenIsis y Malete.

Compilación de OpenIsis y Malete ● Típicamente OpenIsis se ha compilado con la técnica que llamamos “cross compiling”. ● Esta compilación cruzada permite compilar en una plataforma para otra. ● OpenIsis se compila utilizando las herramientas de compilación de GNU. ● Aunque existen portes contribuidos compilados con Microsoft Visual C

Instalación de PHP-OpenIsis en Windows y Unix ● En ambas plataformas el principio es el mismo. ● Debe colocarse la extensión ya compilada en el directorio que se indica en el archivo de configuración de PHP (php.ini). ● Luego debe agregarse la extensión ● Aún así, cada plataforma tiene su idiosincracia.

El API de PHP-OpenIsis ● INI entries: (php.ini) – isis.default_dir = hilera – isis.default_database = hilera (esta es también la razón por la cual isis_open puede no tener parámetros)

Abriendo y cerrando bases de datos ● Se puede abrir una base de datos ISIS utilizando la función isis_open(). V.G.: – $dbname = "/var/db/isis/cds/cds" $args = "-encoding Cp850" $dbid = isis_open($dbname, $args); ● Después de esto se puede utilizar $dbid en las otras funciones. ● Si isis_open() no recibe parámetros entonces tratará de utilizar los valores por omisión del archivo INI.

Abriendo y cerrando bases de datos ● isis_close() debe ser llamada únicamente luego de que no se necesite la base de datos; i.e., cuando usted no vaya a hacer búsquedas o a utilizar resultados de búsqueda. ● Si no se llama a isis_close() PHP la llamará, dado que existen registrados destructores para todos los recursos. ● isis_close() recibe como parámetro el $dbid regresado por isis_open().

Buscando en las bases de datos ● Hay tres funciones para búsqueda: – isis_search() – isis_query() – isis_terms() ● Las dos primeras devuelven un tipo resultado y la últma regresa un arreglo de términos.

Buscando en las bases de datos ● isis_search e isis_query: – isis_search puede únicamente buscar un término mientras que isis_query puede hacer búsquedas más complejas (consultas) como "PHP/(24) * Braulio/(14)" ● isis_terms puede ayudar a dar pistas a los usuarios acerca de los términos en el índice; V.G.: usted puede mostrar los términos que comienzan con a utilizando isis_terms("a$")

Buscando en las bases de datos ● Ejemplo: – $dbname = "/var/db/isis/cds/cds"; $args = "-encoding Cp850"; $dbid = isis_open($dbname, $args); if (trim($_POST['search']) == "$") { $result = isis_search($_POST['search'],$dbid); } else { $result = isis_query($_POST['search'],$dbid); }

Iterando sobre los resultados ● Se puede iterar en los resultados con las siguientes funciones: – isis_fetch_array – isis_fetch_flat_array – isis_data_seek – isis_mfn_data_seek – isis_num_rows

Iterando sobre los resultados ● isis_fetch_array() e isis_fetch_flat_array() – Estas funciones regresan un arreglo (un registro) de un resultado, avanzando el puntero interno hacia el siguente arreglo (registro). – El arreglo retornado por isis_fetch_array depende de la estructura de la base de datos y puede ser muy complejo, en cambio el arreglo devuelto por isis_fetch_array es un simple arreglo de arreglos que contienen una etiqueta y un valor. – Si el puntero está al final de los resultados isis_fetch_array y isis_fetch_flat_array() regresan FALSE. Esto puede ser utilizado como condición.

Iterando sobre los resultados ● Ejemplo de isis_fetch_array(): – $dbid = isis_open("/var/db/isis/cds/cds"); $result = isis_search("$",$dbid); while ($record = isis_fetch_array($result)) { echo " “; echo var_dump($record); echo " "; } isis_close($dbid);

Iterando sobre los resultados ● Ejemplo de isis_fetch_flat_array(): – $dbid = isis_open("/var/db/isis/cds/cds"); $result = isis_search("$",$dbid); while ($record = isis_fetch_flat_array($result) ) { print (" MFN: $record[mfn] \n"); for ($i=0; $i \n". " $tag \n". " ".htmlspecialchars($value)." \n". " \n"); } }

Iterando sobre los resultados ● Usted también puede iterar sobre los resultados utilizando isis_data_seek() e isis_num_rows(). ● isis_data_seek permite mover el puntero interno dentro de los resultados. ● isis_num_rows devuelve el número de registros devueltos en el resultado por la búsqueda.

Iterando sobre los resultados ● isis_data_seek() e isis_num_rows(): – $dbid = isis_open("/var/db/isis/cds/cds"); $result = isis_search("$",$dbid); for ($i=0; $i "; echo var_dump($record); echo " "; }

Iterando sobre los resultados ● isis_mfn_data_seek() es útil para mover el puntero interno del resultado hacia un MFN específico. ● Esta función fue agregada debido a una petición en la lista

Iterando sobre los resultados ● Ejemplo de isis_mfn_data_seek(): – function mfnrange($db, $from, $count) { $dbid = isis_open($db); $result = isis_search("$",$dbid); if (!isis_data_seek($result, $from)) return FALSE; $i = 0; while ($record = isis_fetch_array($result)) { echo " “; var_dump($record); " "; $i++; if ($i > $count) break; } }

Utilización de Malete ● Malete es el servidor con OpenIsis 1.0 (versión final con todas las características). ● Malete puede correr solo o como servidor. ● Sirve para importar y exportar bases de datos de diferentes formatos. ● El formato de uso es: – malete comando [opciones de comando y generales] [db0 opciones [db1 opciones...]]

Bibliografía ● Baeza Ricardo, Ribeiro Berthier. Modern Information Retrieval. Addison Wesley. EE.UU ● Malete, ● OpenIsis,