Navegando en la web: La Word Wide Web (www) empezó a finales de 1980´s(85), y nadie se imaginaba el impacto que este iba a cuasar al mundo entero. En cuestión de manejo de información, actualmente ya se sabe que se puede manejar no solo texto sino también imágenes, audio, video, etc. En la web podemos manejar todo tipo de archivos, pero para poder realizar esto necesitamos una base de datos, a su ves también necesitamos de otras herramientas eficaces para manipular estos archivos, de tal manera que podamos filtrar y extraer información de la base de datos. Por este problema se inventaron los famosos buscadores o motores de búsqueda, para que de esta maneara encontremos por medio de una par se comandos lo que necesitemos para realizar este tipo de búsquedas en la web. Estos motores de búsqueda funcionan por medio de textos el cual es el tema que nos interesa buscar de esta manera mandamos la información a las base de datos y dependiendo del texto que mandemos es el resultado que este nos regrese el buscador por medio de hiperlinks. Existen dos tipos de búsqueda la primera por texto completo y la segunda por index o palabras claves. Desafíos En general podemos decir que existen muchos problemas en la web, pero estos los podemos clasificar de 2 maneras: El problema con los datos mismos. El problema con la interacción del usuario para ver y recuperar la Información. 1.- Los problemas relacionados con los datos son: Distribución de datos. El fuerte porcentaje de datos volátiles. Grandes volúmenes en la web. Datos no estructurados y redundantes. Calidad de datos. Datos Heterogéneos. 2.- El problema de los usuarios con la web Como especificar el query adecuadamente. Como interpretar la respuesta por el sistema. Características de la web Midiendo la web Hoy en día existen mas de 40 millones de computadoras en mas de 200 países conectados a Internet, muchos de ellos son web servers. El numero estimado de web servers según NetSizer es de 2.4 millones esto en noviembre 1998. otro dato importante es de acuerdo con la entrevista de Internet Domain en Julio del 98, 780 000 nombres de dominios empezaban con www. Tomando en cuenta de que estamos en 2002 me atrevo a decir que estas cifras están duplicadas o triplicadas. El formato mas popular para la web es en código HTML, utilizando mayormente para las imágenes GIF y JPG y en cuestión de texto el codigo ASCII y PostScrips , la compresión mas popular es GNU y ZIP. Las paginas HTML no son estándares ya que existen muchísimas formas de diseñar una, ustedes se preguntaran porque usar este codigo, pues esto es porque le codigo HTML ocupa muy poco espacion aproximadamente estan entre los 2 y 5 kb, esto contando con que la mayoria de las veces tiene imágenes de mas o menos 14 kb. La mayoria de las pag web tiene de 5 a 15 links si no es que mas. Entre las 10 webs mas conocidas estan la de Google, Microsoft,Yahoo, Hotmail, NetScape, Yahoo y unas de las que mas me gustan desde mi punto de vista son Metacrawler, y C4, la mayoría de estas son motores de búsqueda o buscadores. Estas son páginas muy visitadas ya que su base de datos o información que tiene en ellas es bastante grande, como un ejemplo en yahoo la capacidad es de tenia 1.5 terabyts esto unos años atrás ahora seria inimaginable la capacidad que este tiene en estos momentos. Si a esto le agregamos que esta pagina tiene diferentes versiones (en cuestión de lenguajes). El total de lenguas que se utilizan en la red es un aproximado de 100 lenguas diferentes. Modelando la web: En cuestión de lenguaje si se puede tener una manera o modelo de distribuirlo, esto utilizando un lenguaje correcto y con palabras, las cuales el usuario debe comprender con claridad, pero desde mi punto de vista esto es demasiado difícil ya que, dependiendo a quien se dirija el que construye la web. En cuestión de modelar la web podría existir un modelo, esto depende del documento y como se acomode en la web, dependiendo de este modelo sera el tamaño de la web. La probabilidad de encontrar un archivo con un numero x de bytes es de esta manera dado que tengan tamaños similares y una varian grande : Donde el promedio ( ) y desviación estándar ( ) es de 9.357 y 1.318. La formula para el parámetro de distribución es: Search Engine: El término “Search Engine” (motor de búsqueda), en el mundo computacional, se refiere principalmente a cualquier software usado para realizar una búsqueda en una base de datos. En este caso, estamos hablando de que la base de datos a explorar es la Web. El search engine son los programas que utilizan las páginas browser, como Altavista, Yahoo, Hotbot, Lycos, etc. Obviamente, cada una funciona de diferente manera. Los search engines funcionan a base de índices que se conservan en la base de datos de la página principal, y es de ahí de donde jalan las páginas que correspondan al query realizado. Se considera que los search engines más grandes son los de Altavista, yahoo, HotBot, Northern Light y Excite, que abarcan más de la mitad de todas las páginas disponibles en la Web. La mayoría de los search engines están basados en Estado Unidos. Sin embargo, hay búsquedas especializadas en diferentes idiomas y países, capaces incluso de hacer queries en alfabeto kanji. También hay search engines para temas más específicos, como DejaNews o Search Net. Existen dos tipos principales de search engines: 1) De arquitectura centralizada (crawlers) 2) De arquitectura distribuida (harvest) La mayoría de los search engines utiliza una arquitectura centralizada, utilizando los programas conocidos como crawlers (también llamados robots, spiders, wanderers, etc.). A pesar de su nombre, los crawlers en realidad no van de servidor en servidor buscando información. Más bien, funcionan dentro de un solo sistema (el servidor de la página browser) y envía peticiones a los servidores de Web. Así es como van almacenando la información que les va llegando en un índice en el servidor browser, y pueden responder a los queries de los usuarios. El principal problema de este tipo de arquitectura es la recopilación de la información. Obviamente, otro gran problema es el tamaño de la información. Se piensa que en un futuro cercano la arquitectura crawler no podrá lidiar con el rápido crecimiento de la Web. Esta arquitectura tiene algunas desventajas: 1) Los servidores reciben peticiones de muchos y diferentes crawlers, incrementando su carga. 2) El tráfico de la Web incrementa mucho porque los crawlers traen objetos enteros, pero mucho de su contenido es descartado. 3) La información es juntada por cada crawler, sin coordinación entre todos los search engines. Una de las principales variantes al search engine tradicional es el que usa arquitectura distribuida, llamado comúnmente Harvest (cosecha). Realmente, una arquitectura distribuida es más eficiente recopilando información que una arquitectura distribuida, pero también requiere requiere mucha más coordinación entre servidores de Web. Para resolver los problemas de los crawlers, Harvest tiene dos importantes elementos: los gatheres (coleccionador) y los brokers (corredores). Los gatherers juntan los índices de varios servidores y los brokers proveen el mecanismo indexador y la interfaz a la información juntada. Los brokers juntan información de uno o más gatherers o de otros brokers. También un Harvest junta la información por temas, lo que puede llegar a hacer más atractivo para algunos usuarios. Todos los search engines constan de una interfaz para poder introducir un query, y una interfaz de respuestas. Por lo general, la interfaz básica de un query consiste en un textbox donde introduces una o más palabras. Aquí hay que recordar que diferentes search engines pueden obtener diferentes resultados a una misma búsqueda. También, todas las páginas browser poseen una interfaz para queries más avanzados, como operadores booleanos, búsqueda de frase, etc. Obviamente, también constan de numerosos filtros para reducir aún más el número de páginas correspondientes. Estas páginas correspondientes aparecen en la interfaz de respuestas, que generalmente contiene los sitios mejor rankeados de la Web. También es posible ordenar las respuestas por fechas o por URL. El usuario puede después refinar la búsqueda basado en la interfaz de respuestas. Clasificación: Muchos motores de búsqueda usan variaciones de los modelos booleanos y vectoriales para hacer la clasificación de páginas. Como en la búsqueda, la clasificación tiene que hacerse sin acceder al texto, solo al índice. Yuwono y Lee, proponen tres algoritmos de clasificación, la extensión booleana, la extensión vectorial y el mas-citado. Los primeros dos son los algoritmos normales de clasificación boleanos y vectoriales, con la peculiaridad de que se incluyen páginas señaladas por una página en la respuesta, o páginas que señalan a una página de la respuesta. El tercero, el mas-citado se basa solamente en los términos incluidos en las páginas que tienen un acoplamiento a las páginas en la respuesta. Algunos de los nuevos algoritmos también usan información referenciada (hyperlink), ésta es una de las más importantes diferencias entre la red y las bases de datos. La cantidad de información referenciada que apuntan a una página provee de una medida de popularidad y calidad. También muchos enlaces en común entre páginas o páginas referenciadas por la misma página a menudo indican una relación entre esas páginas. Ahora se presentaran tres técnicas que explotan estos factores, con la diferencia en que las dos primeras dependen de preguntas y la última no. Una navegación Gráfica usando WebQuery, Este toma un conjunto de páginas y las clasifica basándose en como están conectadas. Adicionalmente se extiende el conjunto encontrando con páginas que están fuertemente conectadas al conjunto original. Una mejor idea la dio Kleinberg la cual hace uso de HITS (Búsqueda de temas inducida por hipertexto). Este esquema de clasificación depende de las preguntas y considera el conjunto de páginas “S” que apuntan o son apuntadas por páginas en la respuesta. Las páginas que tienen muchos enlaces hacia si mismas dentro de “S” son llamadas páginas autoridad. Paginas que tienen muchas enlaces hacia fuera son llamadas hubs. Así mejores páginas autoridad provienen de bordes entrantes de buenas páginas hubs y mejores páginas hub provienen de bordes salientes de buenas páginas autoridad. Deje H(p) y A(p) sean el valor del Hub y de la página autoridad. Estos valores están definidos cuando las siguientes ecuaciones son satisfechas para todas las páginas. H(p) = ∑ uєS | p→u A(u), A(p) = ∑ H(v). uєS | v→p En donde H(p) y A(p) para todas las páginas están normalizadas (La suma de todos los cuadrados de cada medida debe dar uno). Estos valores pueden ser determinados por un algoritmo iterativo. El último es mediante el PageRank, éste es parte del algoritmo de clasificación usado por Google. PageRank simula a un usuario navegando aleatoriamenté en la red, el cual salta a páginas aleatorias con una probabilidad “q” o sigue una información referenciada con una probabilidad de “1-q”. Se asume que éste nunca regresa a una página previamente visitada. Al ser calculadas las probabilidades el valor es usado como parte del mecanismo de clasificación de Google. Deja que C(a) sea el número de enlaces salientes de una página “a” y supone que la página “a” es apuntada por las paginas “p1” y “pn” Entonces, el PageRank, PR(s) de a es definido como: n PR(a) = q + (1-q) ∑ PR(p1)/C(pi) i=1 en donde “q” debe ser dado por el sistema ( su valor tipico es 0.15). El PageRank puede ser determinado por un algoritmo iterativo. Avanzando dentro de la Red: La forma mas simple es empezar con un conjunto de URLs (localizador de recurso uniforme) y de ahí extraer otras URLs recursivamente en una manera breath-first o depth first. Una variación a esto es empezar con un conjunto de URLs populares, ya que podemos esperar que estas tengan la información más solicitada. Otra técnica es particionar la red usando códigos de región o nombres de Internet, y asignar uno o más robots para cada partición, y así explorar cada partición exhaustivamente. Mientras que un usuario define un número de páginas para avanzar en unos días o semanas, así también algunos motores de búsqueda atraviesan todo el sitio Web, mientras otros seleccionan una muestra de páginas. Las páginas no definidas esperan semanas o meses a ser detectadas. Hay algunos motores de búsqueda que aprenden de la frecuencia de cambios de una página y la visitan consecuentemente, también pueden avanzar con mas frecuencia en paginas populares. En total los más rápidos avanzadores (Crawlers) de la red pueden atravesar más de 10 millones de páginas por día. El orden en que las URLs son atravesadas es importante. Usando una política de breadth first, nosotros entramos en todas las páginas que se enlazan a la página actual, y después realizamos lo mismo con cada una. En el caso de depth first, nosotros seguimos el primer enlace de una página y hacemos lo mismo en esa página hasta que no podamos llegar mas lejos, regresando recursiva mente. Índices: La Mayoría de los índices usan variantes de archivos invertidos. En resumen, un archivo invertido es una lista de palabras ordenadas, cada una con un conjunto de apuntadores a las páginas donde ocurren. Algunos motores de búsqueda eliminan signos de puntuación y caracteres de paro para reducir el tamaño del índice. También es importante recordar que la manera más lógica de mirar un texto es por medio del índice. Para darle al usuario alguna idea de cada documento recuperado, el índice esta complementado con una descripción corta de cada Página. (Día en que fue creada, tamaño, el título y las primeras líneas o algunos títulos son típicos). Asumiendo que 500 bytes son requeridos para almacenar la URL y la descripción de cada página. Nosotros necesitamos 50 GB para almacenar la descripción de 100 millones de páginas. Como el usuario inicialmente recibe solamente un subconjunto de respuestas a cada pregunta, el motor de búsqueda usualmente guarda el conjunto completo de respuestas en memoria. Avanzadas técnicas pueden reducir el tamaño del archivo invertido alrededor de un 30% del tamaño del texto. Usando técnicas de compresión el archivo índice puede ser reducido en un 10% del texto. Una pregunta es contestada haciendo una búsqueda binaria de la lista de palabras ordenadas del archivo implementado. Si nosotros estamos buscando múltiples palabras, el resultado tendrá que ser combinado para generar la respuesta final. Este paso es eficiente si las palabras no están repetidas. Los archivos invertidos también pueden apuntar a ocurrencias reales de una palabra en un documento (inversión completa). Sin embargo, esto es muy costoso en términos de tamaño en Red, porque cada apuntador tiene que especificar la página y la posición adentro de la página (el número de palabra puede ser usado en lugar de bites reales). Por otra parte, teniendo la posición de las palabras en la página, nosotros podemos contestar búsquedas de frases o preguntas encontrando palabras que están pegadas unas a otras en la página. Actualmente, algunos motores de búsqueda implementan los buscadores de frases aunque no se sabe como lo implementan. Encontrar palabras que empiezan con el prefijo dado requiere de dos búsquedas binarias en la lista de palabras ordenadas. Búsquedas mas complejas, como palabras con errores, o en general cualquier expresión regular en una palabra, puede ser realizada mediante un escaneo secuencial en el vocabulario. Esto puede parecer lento pero los mejores algoritmos secuénciales para este tipo de preguntas pueden buscar alrededor de 20 MB de texto almacenado en RAM en un segundo (5 MB es más o menos el tamaño de el vocabulario del texto de 1 GB). Así, para varios gigas, nuestras preguntas pueden ser respondidas en tan solo unos pocos segundos. Para la red esto sigue siendo muy lento pero no completamente inadmisible. Browsing: En esta sección nos dedicaremos a herramientas basadas en browsing y searching. En especial los directorios. El mejor ejemplo de directorio es Yahoo!, que es la herramienta más utilizada. Otras herramientas de búsqueda como Altavista, Excite, AOL, incluyen subcategorías Los directorios son taxonomías jerárquicas que clasifican el conocimiento humano. Esto esta hecho basándose en categorías y subcategorías Aunque la taxonomía se podría verse como un árbol hay referencias cruzadas así que realmente es un grafo acíclico dirigido. La ventaja de estas técnicas de categorización es que generalmente encontramos lo que estamos buscando. Sin embargo la desventaja es que la clasificación no esta muy especializada y que no todas las páginas Web están clasificadas. A esto se le suma el factor que la clasificación la hace un número restringido de seres humanos. Debido a que el procesamiento de lenguaje natural no es 100% efectivo. Combinando el Searching con el Browsing. Generalmente si uno busca en estos directorios puede haber casos en que una categoría taxonómica no incluya algo relevante por no ser parte de la misma categoría. WebGlimpse es una herramienta que trata de resolver estos problemas combinado browsing con searching. Esto lo hace añadiendo una pequeña cajita de búsqueda en la parte inferior de cada página, con la cual realiza búsqueda de ligas de hipertexto relacionadas entre si. Esto lo hace muy útil en combinación con los directorios, los cuales dan la dirección de una página y con WebGlimpse marca los índices de posibles páginas relacionadas. Como su nombre lo dice WebGlimpse utiliza Glimpse como su search engine. Herramientas: Existen muchas herramientas, algunas de estas son Add-ons a los browsers, como es Alexa. Alexa es un servicio de navegación por la Web gratuito. Este software provee de información útil acerca de los sitios visitados, como su popularidad, su velocidad de acceso, etc. Hay otras herramientas que sirven para visualizar información. Pueden ser de dos tipos: Herramientas que analizan un subconjunto de la Web, y las herramientas diseñadas para visualizar cantidades grandes de resultados. Ambos necesitan representar grandes cantidades de información gráficamente de una manera útil Herramientas como el SiteAnalyst de Microsoft (antes NetCarta), MAPA de Dynamic Diagrams o Mapuccino de IBM (antes WebCutter) son ejemplos de estos programas llamados Metaphors. Los Metaphors no están completamente utilizados en la Web porque no hay manera estándar de comunicar a éstos resultados con los search engines. Una posible solución es utilizar XML. MetaSearchers: Los Metasearchers son servidores de Web que envían un query a varios search engines, directorios de Web y otras bases de datos, recolecta resultados y los unifica. Algunos ejemplos son Metacrawler y SavvySearch. Sus ventajas son que los Metasearchers pueden ordenar sus respuestas por diferentes atributos como host, palabras claves, fecha etc. Por lo tanto es una búsqueda más simple y mejor. Por otra pare los resultados no son necesariamente todas las páginas encontradas con el query, puesto que el número de resultados de un Metasearcher es limitado. Esperamos que hagan un mejor ranking los Metasearchers con relación a sus búsquedas. El primer paso es Inquirus del Instituto de Investigación de Metasearchers y Engines de NEC, su diferencia principal es que Inquirus realmente analiza cada página Web obtenida y después la despliega. Marcando donde los términos del query fueron encontrados. Los resultados son desplegados tan pronto son disponibles de manera progresiva, de otra manera el tiempo sería demasiado grande. Esto ayudaría a limpiar resultados de páginas no existentes. Por otra parte Inquirus hasta la fecha no esta disponible al público en general. El uso de Metasearchers es justificable debido a que un pequeño porcentaje de las páginas de Internet (alrededor de 1%) se encuentran en todos los search engines. Este hecho es sorprendente y todavía no es explicado. El uso de Metasearcher para tópicos especializados se pueden considerar como agentes de software. Encontrando la aguja en el pajar: Problemas con el usuario. Ya se ha visto los problemas a los que se enfrenta el usuario cuando interactúa con un sistema de búsqueda para la red son bastantes, dando como resultado a las consultas respuestas no deseadas o con información no deseada. El usuario muchas veces no entiendo o no sabes usar los conjuntos de palabras para hacer su búsqueda. Obtener respuestas erróneas dado que no conoce como funciona dicha “engine”. Se puede dar que el usuario introduzca mayúsculas o solo minúsculas y la “engine” no es “case sensitive”. Debido a variaciones en palabras y letras, de las búsquedas que “machean” se pierden alrededor del 20 %.Nombres extranjeros o palabras difíciles de deletrear pueden aparecer incorrectas lo que nos da una perdida de alrededor del 50 % de los sitios posibles. Muchas veces los usuarios tienen problemas con la lógica boleana y muchas veces un “and” y un “or” quieren decir exactamente lo contrario y dependen del contexto. Las maquinas de búsqueda deberían ser más clara con respecto a los campos de búsqueda y que es y no es relevante para hacer el “query”. En general una maquina de búsqueda es lenta y la respuesta es muy larga, no muy relevante y no siempre actual. Datos estadísticos: 25 % de los usuarios utiliza solo una palabra para hacer un “query” y en promedio las búsquedas no tienen mas de tres palabras. 15 % restringe el “query” a un tópico especifico. 80 % no modifica su query. 85 % no pasa de la primera pagina de resultados. 64 % de los “queries” son únicos. Algunos ejemplos Las búsquedas a texto completo tienen una desventaja, y es que el que muchos de los resultados son efectivos otros mas son una total decepción. El principal problema de una búsqueda a texto completo es que no captura la semántica de un documento, y el que hay mucha información de contexto es también un problema, aunado se tiene perdida de tiempo en la indización (indexing). Si quisiéramos hacer una búsqueda de Shogi (juego similar al ajedrez pero versión China) o de Go, esto se convertiría en un problema porque los resultados serian enormes y con mucha basura ya que “Go” es una palabra muy usada en el inglés y que nos arrojaría una cantidad enorme de textos sin utilidad. El problema anterior solo se da cuando la palabra clave que se da para el “query” es una palabra muy común y con muchos significados en un ambiente donde predomina la palabra go y los articulo son en ingles. Caso diferente para Shogi ya que esta no es tan común. Polisemia : Cuando hay varios significados para una palabra. Enseñando al usuario. Las interfaces han ido lentamente asesorando al usuario en formas efectivas de realizar sus consultas para recuperar información. Es algo esencial que las maquinas de búsqueda especificaran al usuario que tipo de palabras son importantes para hacer un “query” efectivo y cuales no. Los usuarios deberían tratar de introducir lo que desean para efectuar la búsqueda y lo que esperan como resultado de ésta, y restringir hasta donde sea posible el “query”. El usuario debería aprender de la experiencia y usar una maquina de búsqueda siempre que lo crea necesario y es necesario que tome en cuenta su experiencia. Por ejemplo si el usuario busca una institución en la Web debería tratar con el URL directo y entonces si no lo logra tratar en un buscador. Si se esta buscando un articulo sobre genética, seria muy bueno considerar buscar información en base a cosas íntimamente relacionadas con el documento como son los autores y el tema y darlos como búsqueda para delimitar la búsqueda lo más posible. En la practica es mucho más fácil enseñarle al usuario como hacer uso de el motor de búsqueda que tratar de adivinar lo que este desea. “Engines” regresan mucha paja con la aguja. “Web directories” son poco profundos para encontrar la aguja. Se recomienda: Specific queries : Se refiere a hacer uso racional de los medios y buscar lo más directo posible en los medios más específicos. (una definición en una enciclopedia) Broad queries : Se refiere a usar directorios Web para un buen comienzo Vague queries : Se refiere a usar las maquinas de búsqueda con relativa eficacia al formular nuestros “queries”. Hyperlinks para las búsquedas: Esto se refiere a otros paradigmas para hacer búsquedas en la Web. Las cuales se basan en explotar los hyperlinks. En estos se ve lo que son los Web query languages y la búsqueda dinámica. Aunque estas ideas no son ampliamente usadas debido a muchas razones entre ellas el que tienen limitantes de desempeño y la carencia de productos comerciales. WQL (Web Query Languages) Los “queries” pueden incluir la liga que conecta a las paginas Web. Veamos un ejemplo: A nosotros nos gustaría buscar todas las paginas que contengan al menos una imagen y que sea accesible desde un sitio dado con una lejanía de no más de tres ligas. Para lo anterior existen muchos proyectos de estudio con respecto a este tópico y muchos modelos han sido desarrollados, el mas aceptado es el modelo etiquetado como modelo grafico para representar las paginas como nodos y los hyperlinks como los bordes entre las paginas y una semiestructura de modelo de datos para representar el contenido de las paginas. En los modelos más recientes la estructura no es usualmente conocida ya que puede ser larga y descriptiva. Muchos lenguajes han sido desarrollados para poder establecer un estándar, entre dichos lenguajes se encuentran W3SQL, WebSQL, WebLog y WQL, como parte de la primera generacion. En la segunda generación a dicho tipo de lenguaje se le llamo “Lenguaje de manipulación de datos para la Web” (Web data Manipulation Language) los cuales mantienes énfasis en la semiestructura de datos, y los lenguajes que han sido parte de esta segunda generación son STRUQL, FLORID y WEBOQL. Todos esos programas desarrollados han sido diseñados para usuarios intermedios no finales. Búsqueda dinámica y agentes de software. La búsqueda dinámica en la Web es el equivalente a hacer una búsqueda secuencial en un texto la idea es usar una búsqueda en línea para descubrir información relevante siguiendo las ligas, la ventaja de esto es que buscas en la actual estructura de la Web y no en algo almacenado, aunque este método es lento. La primera heurística ideada fue la búsqueda de pez (fish search), la cual intuye que los documentos relevantes tienen vecinos que también deben ser relevantes. La anterior fue mejorada por la búsqueda de tiburón (shark search), la cual hace una relevancia mejor de los documentos. Tendencias y tópicos de investigación: Hay muchos tópicos para investigar acerca de la IR de la Web, a continuación algunos de los más importantes. Modeling : Modelos de IR adaptados a las necesidades de la Web. Buscaremos la información o esta nos llegara. Querying : Se necesita combinar estructuras y contenido en los “queries”. Distributed Architectures : Se necesitan de nuevas esquemas de computación distribuida que estén enfocados y con un diseño propio para enfrentar los problemas que aquejan la Web. ¿Que será el cuello de botella en el futuro? Ranking: Idear un sistema mejor para hacer el ranking de los documentos, explotar la estructura y el contenido. Indenxing : ¿Qué es lo más lógico para ver un texto?, ¿Qué debe ser indexado?, ¿Cómo explotar mejor la compresión de texto para hacer una búsqueda rápida y evitar el tráfico pesado? Dynamic pages : Muchas paginas son creadas a diario, no se puede con técnicas actuales buscar en esa (hidden Web) Web dinámica. Duplicated data : Mejores mecanismos para evitar paginas repetidas o con la misma estructura Multimedia : Se busca mas que texto en la red. Objetos multimedios. User interfaces : Mejores y más especificas interfaces se necesitan y que permitan ser mas objetivos en una búsqueda. Browsing : unificar y mejorar la búsqueda con la navegación. Con todo lo anterior se intuye que se necesita la creación de un protocolo, para poder elegir las mejores fuentes para ejecutar “queries”, un protocolo como tal, haría que fuese más fácil hacer “metasearchers” pero también es un motivo mas para no hacerlo pues entonces ya no habría muchos sentido en el trabajo que harían las maquinas de búsqueda. Hay una tendencia mas que se llama “Web minino” que se refiere a extraer información acerca de los archivos en la red, es claro que esto no es búsqueda en la red pero es una opción viable.