18
Bases de datos y sus características para recuperación, extracción y estructuración de información Ignacio Arroyo-F ernández 1 [email protected] 1 Bases de datos para estructuración de información En esta categoría se encuentran en general bases de datos ( DBs ) de grafos ( GDBs : Graph DataBases ”), las cuales están diseñadas de una manera distinta a las DBs comunes, mismas que almacenan los datos en campos de tablas. En el caso de las GDBs también se tienen tablas, pero éstas almacenan nodos, que rep resentan entidades y relaci one s entre ellos. Dicha org anización esta diseñada para almacenar objetos (estructuras de datos) con sus respectivas propiedades, de manera que cada consul ta hecha en el front end  de la GDB carga automáticamente apuntadores a cada una de estas propiedades (lo que hace más rápida a una GDB que a una DB), las cuales opcionalmente pueden estar almacenadas en archivos locales o en URLs externas. Existen varias GDBs implementadas y reconocidas, pero en la Wikipedia se mencionan las siguientes (sólo se listan las más populares según el ranking de htt p ://  db -engines .com /en /r anki ng /graph + dbms ): Ranking GDB (DBMS) Modelo Score 1  Neo4j Esquema regular de una GDB 22.5 (con una alza moderada y constante) 2  Titan Esquema regular de una GDB 1.86 3  OrientDB Esquema regular de una GDB + Document store 1.73 4  Sparksee Esquema regular de una GDB 0.82 5  Giraph Esquema regular de una GDB 0.41 6  ArangoDB Esquema regular de una GDB + Document store + Key value store 0.20 (con una alza acelerada) Además de la s GDBs qu e se han li st ado, existen otras qu e son ampl iamente usadas pa ra la incorporación de conocimiento en cualquier aplicación comercial. Tal es el caso del grafo de Google llamado FreeBase , del cual se hablará un poco a continuación, antes de analizar una posible elección entre las que se han mencionado en la tabla anterior con lo que además, se mencionarán algunos puntos básicos sobre las GDBs en general. 1  Estudiante de Doctorado en el Posgrado en ciencias e ingeniería de la computación, de la Universidad Nacional Autónoma de México (UNAM), integrante del Grupo de Ingeniería Lingüística (http://www. describe.com.mx/~iarroyof). Este es un trabajo exploratorio realizado para la construcción del corpus electrónico del Seminario universitario de estudios del discurso forense (SUEDIF;  http://discursoforense.unam.mx ), bajo la dirección del Dr. Carlos F. Méndez Cruz y la Dra. Margarita Palacios Sierra. 1

Bases De datos y sus caracterìsticas para extracción y estrucuturación de información

Embed Size (px)

DESCRIPTION

Descripción general de bases de datos para almacenamiento y procesamiento de documentos y relaciones, tutorial de instalación y uso básico de Solr

Citation preview

  • 5/21/2018 Bases De datos y sus caractersticas para extraccin y estrucuturacin de informacin

    1/17

    Bases de datos y sus caractersticas pararecuperacin, extraccin y estructuracin de

    informacinIgnacio Arroyo-Fernndez1

    [email protected]

    1 Bases de datos para estructuracin de informacin

    En esta categora se encuentran en general bases de datos DBs! de grafos GDBs: "GraphDataBases#!, las cuales estn dise$adas de una manera distinta a las %Bs comunes, mismas &uealmacenan los datos en campos de tablas' En el caso de las (%Bs tambi)n se tienen tablas, pero )stasalmacenan nodos, &ue representan entidades y relaciones entre ellos' %ic*a organizacin estadise$ada para almacenar ob+etos estructuras de datos! con sus respectias propiedades, de manera&ue cada consulta *ec*a en elfront endde la (%B carga automticamente apuntadores a cada una de

    estas propiedades lo &ue *ace ms rpida a una (%B &ue a una %B!, las cuales opcionalmente puedenestar almacenadas en arc*ios locales o en ./s externas'

    Existen arias (%Bs implementadas y reconocidas, pero en la 0i1ipedia se mencionan las siguientesslo se listan las ms populares seg2n el ran1ing dehttp ://db -engines .com /en /ranking /graph + dbms!3

    .an1ing (%B %B45! 4odelo 5core

    6 Neo4j Es&uema regular de una (%B 77'8 con una alzamoderada y constante!

    7 Titan Es&uema regular de una (%B 6'9:

    ; OrientDB Es&uema regular de una (%B < %ocument store 6'=;

    > Sparksee Es&uema regular de una (%B ?'97

    8 Giraph Es&uema regular de una (%B ?'>6

    : ArangoDB Es&uema regular de una (%B < %ocument store< @ey alue store

    ?'7? con una alzaacelerada!

    Adems de las (%Bs &ue se *an listado, existen otras &ue son ampliamente usadas para laincorporacin de conocimiento en cual&uier aplicacin comercial' al es el caso del grafo de (oogle

    llamado FreeBase, del cual se *ablar un poco a continuacin, antes de analizar una posible eleccinentre las &ue se *an mencionado en la tabla anterior con lo &ue adems, se mencionarn algunospuntos bsicos sobre las (%Bs en general'

    1 Estudiante de Doctorado en el Posgrado en ciencias e ingeniera de la computacin, de la ni!ersidad "acional #utnoma de$%&ico '"#$(, integrante del )rupo de *ngeniera ingstica 'http://.describe.com.m&/iarroo0(. Este es un trabao

    e&ploratorio reali2ado para la construccin del corpus electrnico del 3eminario uni!ersitario de estudios del discurso 0orense

    '3ED*45http://discurso0orense.unam.m&

    (, bao la direccin del Dr. 6arlos 4. $%nde2 6ru2 la Dra. $argarita Palacios 3ierra.

    1

    http://db-engines.com/en/ranking/graph+dbmshttp://db-engines.com/en/ranking/graph+dbmshttp://db-engines.com/en/ranking/graph+dbmshttp://discursoforense.unam.mx/http://discursoforense.unam.mx/http://db-engines.com/en/ranking/graph+dbmshttp://db-engines.com/en/ranking/graph+dbmshttp://db-engines.com/en/ranking/graph+dbmshttp://db-engines.com/en/ranking/graph+dbmshttp://db-engines.com/en/ranking/graph+dbmshttp://db-engines.com/en/ranking/graph+dbmshttp://db-engines.com/en/ranking/graph+dbmshttp://db-engines.com/en/ranking/graph+dbmshttp://db-engines.com/en/ranking/graph+dbmshttp://db-engines.com/en/ranking/graph+dbmshttp://db-engines.com/en/ranking/graph+dbmshttp://db-engines.com/en/ranking/graph+dbmshttp://db-engines.com/en/ranking/graph+dbmshttp://db-engines.com/en/ranking/graph+dbmshttp://db-engines.com/en/ranking/graph+dbmshttp://discursoforense.unam.mx/
  • 5/21/2018 Bases De datos y sus caractersticas para extraccin y estrucuturacin de informacin

    2/17

    1.1 FreeBase

    FreeBase es una base de datos construida mediante grafos dirigidos cuyo propietario es(oogle' Existe una ersin libre y una ersin comercial' /a diferencia entre ellas es &ue en la primerase tiene un acceso limitado a los datos mientras &ue en la segunda se tiene acceso total a cambio de uncargo' abe mencionar &ue FreeBase no es una plataforma para uso p2blico sino &ue se puede acceder

    de manera remota a ella mediante una ACI, si se tiene una aplicacin &ue re&uiere de conocimientoexterno' /os datos &ue mane+a s son de uso p2blico regular o comercial!D es decir, (oogle tienedisponible el (rafo en cdigo propio usando el modelo .%F! para su descarga y carga sobre cual&uierotra plataforma diferente a FreeBase, siempre y cuando la plataforma deseada tenga la capacidad decargar los arc*ios, conocidos como ertederos de datos "RDF data dumps!7'

    En FreeBase cada )rtice del grafo representa por lo general un tpico o entidad no siempre es untpico!, as mismo cada arista representa una relacin &ue por lo general, apunta *acia una propiedaddel tpico' Cor e+emplo en pseudocdigo!3

    Albert Einstein: Es un cientfico, es una persona, es un autor,...

    iendo )sto como el resultado de una consulta, el tpico Albert Einstein! puede pertenecer aarios subtpicos simultneamente o propiedades, como se obsera en el e+emplo!' A su ez, cadasubtpico contendr una lista de elementos relacionados con el tpico buscadoD para el e+emplo, elsubtpico autorestara estructurado as en pseudocdigo!3

    Albert Einstein.is_a.autor -> {"Electroin!mica e los cuerpos en moimiento","#unamentos e la teora e la relatiia general","$obre la teora el campo unificao","%is ieas y opiniones","&a fsica, aentura el pensamiento",

    "$obre la teora e la relatiia especial y general","El significao e la relatiia",'(

    /o mismo sucedera entonces con los dems subtpicos, de manera &ue se puede acceder directamentesin necesidad de indexado! a cada propiedad del ob+eto Albert Einstein' abe se$alar &ue cadauna de estas entidades nodos!, se consideran, seg2n lo establecido en el modelo .%F, como recursosde la 0EBD de manera &ue seg2n sea el caso FreeBase puede o no almacenar datos traducibles ainformacin slo lo necesario!' Cor lo regular, slo se almacenan referencias encapsuladas en unob+eto, lo cual *ace muy eciente la ar&uitectura de FreeBase' Esto 2ltimo, desde luego, es unaarmacin dependiente de la aplicacin, pero es as para FreeBase dado &ue est pensada para mane+arreferencias a datos en la 0EB' na aplicacin muy general'

    5e *a mencionado al modelo .%F Resource Description Framework!' %ic*o modelo est dise$ado pararepresentar conocimiento en forma de su)eto-preicao-ob)eto en donde el su+eto indica elrecurso o contiene su referencia y el predicado denota rasgos o aspectos de tal recurso' El ob+eto porsu parte, puede estar explcito o implcito en el predicado a tra)s de relaciones su)eto-ob)eto' 5etiene el siguiente e+emplo3

    *El cielo tiene el color a+ul

    7https ://de!elopers .google .com /0reebase /! 1/rd0-o!er!ie

    7

    https://developers.google.com/freebase/v1/rdf-overviewhttps://developers.google.com/freebase/v1/rdf-overviewhttps://developers.google.com/freebase/v1/rdf-overviewhttps://developers.google.com/freebase/v1/rdf-overviewhttps://developers.google.com/freebase/v1/rdf-overviewhttps://developers.google.com/freebase/v1/rdf-overviewhttps://developers.google.com/freebase/v1/rdf-overviewhttps://developers.google.com/freebase/v1/rdf-overviewhttps://developers.google.com/freebase/v1/rdf-overviewhttps://developers.google.com/freebase/v1/rdf-overviewhttps://developers.google.com/freebase/v1/rdf-overviewhttps://developers.google.com/freebase/v1/rdf-overviewhttps://developers.google.com/freebase/v1/rdf-overviewhttps://developers.google.com/freebase/v1/rdf-overviewhttps://developers.google.com/freebase/v1/rdf-overviewhttps://developers.google.com/freebase/v1/rdf-overviewhttps://developers.google.com/freebase/v1/rdf-overviewhttps://developers.google.com/freebase/v1/rdf-overviewhttps://developers.google.com/freebase/v1/rdf-overviewhttps://developers.google.com/freebase/v1/rdf-overview
  • 5/21/2018 Bases De datos y sus caractersticas para extraccin y estrucuturacin de informacin

    3/17

    GGGGGGGGGGGGGGHGGGGGGGGGGGGGGHmodelo entidad-atributo-alorHH orientado a ob+etos! HJJJJJJJJJJJJJJJJJJJJJJJJJJJJHJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ

    ob)eto*El cielo/ atributo*color/ ob)eto*a+ul/

    En lo referente al formato de los arc*ios de conocimiento construidos usando el modelo .%F, puede*aber ariaciones en la forma de codicarlos, es decir &ue no existe un formato 2nico o estndar oprotocolo! para almacenar un grafo de .%F' Cor lo tanto, si se deseara descargar los ertederos .%F deFreeBase, *abr &ue estar preparado para adaptar el cdigo, de forma &ue nuestra aplicacin puedacargarlos ya &ue el formato no necesariamente es compatible' Aun&ue suele ser muy sencilloD )ase acontinuacin un e+emplo de una porcin del contenido de un arc*io ertedero su)eto-preicao-

    ob)eto!3

    01ttp:22en.3i4ipeia.org25ony_6enn> 01ttp:22purl.org2c2elements27.72title> "5ony 6enn" .01ttp:22en.3i4ipeia.org25ony_6enn> 01ttp:22purl.org2c2elements27.72publis1er> "8i4ipeia" .

    En particular esta (%B utiliza un lengua+e de consulta propio llamado MQLMetaweb Quer Lan!ua!e!

    por lo &ue es necesario usar una ACI para incorporar conocimiento en alguna aplicacin' Existen ACIsdisponibles en el sitio 0EB de FreeBase para los lengua+es de programacin ms populares tales comoKaa5cript, Cyt*on y 'LE3

    888 import 0reebase

    888 0reebase.m9lread';id;: ;/en/da!id

  • 5/21/2018 Bases De datos y sus caractersticas para extraccin y estrucuturacin de informacin

    4/17

    interconexiones creadas, tambi)n en formato 5' /o anterior permite ir construyendo el grafo demanera incremental y sistemtica' %esde un punto de ista particular, este sistema de ad&uisicin dedatos de la (%B es ideal cuando se est desarrollando una aplicacin en e&uipos &ue pueden estarintegrados por personal de cual&uier niel y tipo de orientacin t)cnica' Cor lo tanto para la posibleaplicacin en el seminario del discurso forense, lo 2nico &ue representa atencin especial en t)rminosde la t)cnica es, seg2n los tutoriales bsicos de Leo>+, el lengua+e de consulta yp*er y cmo usarlo

    para ad&uirir datos del corpus'

    1.* +itan

    /a (%B itan es un tanto ms orientada a desarrolladores, es decir &ue la forma de importardatos desde alg2n arc*io *acia la (%B es muc*o menos intuitia y por lo tanto orientada *acia unrango reducido de posibles integrantes de un e&uipo de traba+o, seg2n su tipo de instruccinacad)mica' En cuanto a la isualizacin de la informacin, con esta (%B se tiene la necesidad de crearuna interfaz propia, lo &ue la *ace ms personalizable pero exige mayor tiempo de desarrollo en cuantola interaccin con el usuario'

    Al igual &ue Leo+>, es posible importar arc*ios 5' 5in embargo, no tiene soporte para otro tipo dearc*ios como 4icrosoft excel o C%F' abe mencionar &ue esto por el momento no es una limitante,puesto &ue el proyecto 5E/IFO! ya tiene una aplicacin especializada para ello misma &ue slo seracuestin de modicar para producir arc*ios 5 omma 5eparated alues! en lugar de P'

    na posible desenta+a con respecto a Leo>+ es &ue el lengua+e de consulta de itan es poco *abitual ypodra considerarse de ms ba+o niel &ue yp*er, se llama "Grem#in# y slo cuenta con soporte ACI!para Kaa o bien para (rooy en lo personal nunca lo *aba escuc*ado pero se parece a pyt*on!'Aun&ue (remlin parece ser un poco ms complicado y por lo tanto re&uiere tiempo para suaprendiza+e dado &ue los grafos se deben construir en cdigo3 github .com /)etting -3tarted!, parece &ue el*ec*o de &ue sea de ms ba+o niel o ms bien, de menos alto niel! &ue yp*er, permite *aceroperaciones matemticas ms sosticadas usando m)todos espectrales incluso! con los grafos, cosa

    &ue es, al parecer, algo com2nmente re&uerido por el tipo de usuarios de itan desarrolladores en(remlin!' Es de suponer entonces &ue el tipo de aplicaciones &ue se pueden pensar para itanprobablemente ms sosticadas e incluso cientcas3 github .com /)remlin! es diferente al &ue se podranpensar para Leo>+ tal ez ms comerciales!' Esta 2ltima comparacin, seg2n la aplicacin, podra serclae en una posible decisin sobre usar una u otra de las dos (%Bs ms populares del ran1ing'Adicionalmente, itan cuenta con soporte natio para /ucene y @ey/ines aplicacin frontend para(%Bs con soporte para las ms populares como Leo>+, Itan, Innte(rap*, etc'!

    Existen bases de datos multi-propsito, las cuales tienen incluidos seridores *asta para tres tipos dealmacenamiento3 @ey-alue, %ocumentos y (rafos en caso de Arango%B!' En la siguiente seccin seer a Orient%B para %ocumentos y (rafos! y algunas de sus caractersticas posiblemente releantespara el proyecto del 5E/IFO'

    1.' ,rientDB

    Orient%B es una base de datos cuya principal caracterstica es &ue es multipropsito dospropsitos *asta a*ora3 %ocumentos-grafos!' Esto signica &ue de manera natia cuenta coninstrucciones de consulta para procesamiento de texto y para mane+o de grafos, simultneamente' Estabase de datos es desarrollada en .eino unido, por lo &ue la mayora de usuarios se encuentra eneuropa' El lengua+e de consulta es tipo 5N/ de *ec*o muy parecido! y cuenta con soporte paradiferentes lengua+es driers, ACIs! tales como CQC, Cyt*on y, principalmente, Kaa' Est basada en

    B

    https://github.com/thinkaurelius/titan/wiki/Getting-Startedhttps://github.com/tinkerpop/gremlin/wiki/The-Benefits-of-Gremlinhttps://github.com/tinkerpop/gremlin/wiki/The-Benefits-of-Gremlinhttps://github.com/thinkaurelius/titan/wiki/Getting-Startedhttps://github.com/thinkaurelius/titan/wiki/Getting-Startedhttps://github.com/thinkaurelius/titan/wiki/Getting-Startedhttps://github.com/thinkaurelius/titan/wiki/Getting-Startedhttps://github.com/thinkaurelius/titan/wiki/Getting-Startedhttps://github.com/thinkaurelius/titan/wiki/Getting-Startedhttps://github.com/thinkaurelius/titan/wiki/Getting-Startedhttps://github.com/tinkerpop/gremlin/wiki/The-Benefits-of-Gremlinhttps://github.com/tinkerpop/gremlin/wiki/The-Benefits-of-Gremlinhttps://github.com/tinkerpop/gremlin/wiki/The-Benefits-of-Gremlinhttps://github.com/tinkerpop/gremlin/wiki/The-Benefits-of-Gremlinhttps://github.com/tinkerpop/gremlin/wiki/The-Benefits-of-Gremlin
  • 5/21/2018 Bases De datos y sus caractersticas para extraccin y estrucuturacin de informacin

    5/17

    Apac*e, por lo &ue es de cdigo abierto' Es posible adicionar mdulos con la nalidad de agregarcaractersticas, como por e+emplo @ey/ines para su isualizacin'

    En general esta base de datos es un grafo, pero *a sido optimizada aun&ue por el momentodesconocemos exactamente en &u) aspectos! para almacenar documentos como nodos de la (%B' Corlo tanto el acceso es totalmente transparente' 5in embargo *asta a*ora slo se *an detectado m)todos

    y operadores de recuperacin de documentos completos mas no de extraccin de contenido' Es posible*acer tal cosa, pero una ez cargados dic*os documentos en memoriaD es decir, se utiliza tiempo por unlado en la b2s&ueda y otro tiempo un tanto menor en la extraccin del contenido deseado para lasconcordancias!'

    Existe otra (%B multipropsito &ue tambi)n est en desarrollo3 -ran!oDB' uenta exactamente con lasmismas caractersticas &ue Orient%B aun&ue se dice en su sitio 0EB &ue est dise$ada para trespropsitos! y as tambi)n con las mismas limitaciones' 5igue siendo 2nicamente una (%B no unadocument DB!'

    En algunos foros de consulta ociales de Leo>+ 5tac1OerRoM, (oogle(roups!, no se recomienda estaar&uitectura almacenamiento de documentos como nodos del grafo! para traba+ar con documentos

    demasiado grandesD es decir, no mayores de miles de palabras' 5i se tuiese un re&uerimiento mayor, serecomienda el uso de dos bases de datos' Ba+o esta sugerencia como paradigma de ar&uitectura, escom2n considerar a Leo>+ o itan como bases de datos de almacenamiento de relaciones y aElastic5earc* o 2nicamente /ucene como bases de texto' )ase un caso en la siguiente seccin'

    Aun&ue Orient%B cuenta con uno de los primeros lugares en popularidad, sus caractersticas deb2s&ueda en texto extraccin de informacin! son nueas y cuentan con poco soporte' Lo se sabetampoco si son lo sucientemente robustas y rpidas' Incluso *asta el a$o 7?67, los desarrolladores de,rien+echno#o!ies fabricante de Orient%B! recomendaban el uso adicional de /ucene para este tipo detareas en especco'

    2 Bases de datos orientadas a documentos y recuperacin de informacinEn esta categora se tienen muc*as opciones Incluyendo las rmas ms acreditadas del

    mercado como Oracle con su poderosa librera especializada llamada ,rac#e +et, parte de la OracleDataBase 1&c!BD sin embargo, nueamente se *ablar de las ms populares /ucene, Elastic5earc* y 5olr!y de cdigo abierto dado &ue se espera tener el mayor soporte posible con la comunidad dedesarrolladores, adems se *a *ec*o una exploracin de las caractersticas con las &ue cuentan dic*asopciones de cdigo abierto en cuanto a extraccin de informacin y se *an seleccionado slo a&uellas&ue cuenten con capacidades interconstruidas para resoler concordancias de palabras, es decir, &uepermitan *acer indexado no slo de documentos, sino de elementos bsicos de su contenido i' e'palabras y sus desplazamientos!'

    &.1 -pache LuceneApac*e /ucene es una librera &ue permite construir y poblar una base de datos base de

    textos! para cual&uier aplicacin desarrollada en Kaa, as mismo posee un motor de b2s&uedaorientado a .ecuperacin de informacin en la respectia base textos' /ucene cuenta con soportemediante puertos3 Lucene ports! para algunos de los lengua+es de programacin ms usados Kaanatio! para aplicaciones 0EB tales como 'LE lucene'net!, Cyt*on py/ucene! y Cerl /ucy!' ambi)n

    Bhttp://.oracle.com/technetork/database/enterprise-edition/inde&-CB7.html

    F

    http://www.oracle.com/technetwork/database/enterprise-edition/index-098492.htmlhttp://www.oracle.com/technetwork/database/enterprise-edition/index-098492.html
  • 5/21/2018 Bases De datos y sus caractersticas para extraccin y estrucuturacin de informacin

    6/17

    es posible usar esta librera con CQC, pero se tiene muc*o menos soporte ya &ue no existe unacomunidad formalmente dedicada a ello' 5i la nalidad es adaptar /ucene a una ariedad ms amplia delengua+es de programacin, la comunidad recomienda usar "o#r backendF basado en /ucene! ya &uecuenta con ser/icios de ##amadaa los m)todos de /ucene para muc*os lengua+es de programacin talescomo:CQC, Q4/, .uby, Cerl, etc'

    Sa se *a mencionado a 5olr y algunas de sus enta+as con respecto al uso directo de /ucene, de *ec*ocuenta con las mismas caractersticas &ue /ucene en cuanto a sus capacidades de Extraccin deinformacin 5erm9ectoromponentG con el cual 5olr accede a las opciones del ndice de /ucene

    ;nex+ &ue tiene el mismo

    F Hanto el t%rmino backend como frontend indican el inicio 0inal, respecti!amente, de un proceso. Podran !erse tambi%n comola base la cubierta de una aplicacin.I SolrJes la #P* de 3olr para Ja!a.Ghttps ://ciki.apache .org /con0luence /displa /solr /Hhe + Herm + Kector + 6omponenthttp ://stacko!er0lo .com /9uestions /1B7C7G@/ho -to -make -ord -concordance -ith -solrhttp ://iki.apache .org /solr /LighlightingParameters1C "o se con0unda el t%rmino multiples ncleoscon el concepto de arquitectura distribuidade 3olr, a 9ue lo primero signi0ica 9ue

    se pueden tener !arias colecciones de documentos 'con respecti!os ndices( lo segundo 9ue incluso un slo nMcleo puede

    distribuirse en !arios e9uipos de cmputo donde se instale el ser!idor en 0roma de maestro-multiescla!o.

    I

    http://solr-vs-elasticsearch.com/http://solr-vs-elasticsearch.com/http://solr-vs-elasticsearch.com/https://cwiki.apache.org/confluence/display/solr/The+Term+Vector+Componenthttps://cwiki.apache.org/confluence/display/solr/The+Term+Vector+Componenthttps://cwiki.apache.org/confluence/display/solr/The+Term+Vector+Componenthttps://cwiki.apache.org/confluence/display/solr/The+Term+Vector+Componenthttp://stackoverflow.com/questions/14920273/how-to-make-word-concordance-with-solrhttp://stackoverflow.com/questions/14920273/how-to-make-word-concordance-with-solrhttp://stackoverflow.com/questions/14920273/how-to-make-word-concordance-with-solrhttp://stackoverflow.com/questions/14920273/how-to-make-word-concordance-with-solrhttp://wiki.apache.org/solr/HighlightingParametershttp://wiki.apache.org/solr/HighlightingParametershttp://wiki.apache.org/solr/HighlightingParametershttp://wiki.apache.org/solr/HighlightingParametershttps://cwiki.apache.org/confluence/display/solr/The+Term+Vector+Componenthttps://cwiki.apache.org/confluence/display/solr/The+Term+Vector+Componenthttps://cwiki.apache.org/confluence/display/solr/The+Term+Vector+Componenthttps://cwiki.apache.org/confluence/display/solr/The+Term+Vector+Componenthttps://cwiki.apache.org/confluence/display/solr/The+Term+Vector+Componenthttps://cwiki.apache.org/confluence/display/solr/The+Term+Vector+Componenthttps://cwiki.apache.org/confluence/display/solr/The+Term+Vector+Componenthttps://cwiki.apache.org/confluence/display/solr/The+Term+Vector+Componenthttps://cwiki.apache.org/confluence/display/solr/The+Term+Vector+Componenthttps://cwiki.apache.org/confluence/display/solr/The+Term+Vector+Componenthttps://cwiki.apache.org/confluence/display/solr/The+Term+Vector+Componenthttps://cwiki.apache.org/confluence/display/solr/The+Term+Vector+Componenthttps://cwiki.apache.org/confluence/display/solr/The+Term+Vector+Componenthttps://cwiki.apache.org/confluence/display/solr/The+Term+Vector+Componenthttps://cwiki.apache.org/confluence/display/solr/The+Term+Vector+Componenthttps://cwiki.apache.org/confluence/display/solr/The+Term+Vector+Componenthttps://cwiki.apache.org/confluence/display/solr/The+Term+Vector+Componenthttps://cwiki.apache.org/confluence/display/solr/The+Term+Vector+Componenthttps://cwiki.apache.org/confluence/display/solr/The+Term+Vector+Componenthttps://cwiki.apache.org/confluence/display/solr/The+Term+Vector+Componenthttps://cwiki.apache.org/confluence/display/solr/The+Term+Vector+Componenthttp://stackoverflow.com/questions/14920273/how-to-make-word-concordance-with-solrhttp://stackoverflow.com/questions/14920273/how-to-make-word-concordance-with-solrhttp://stackoverflow.com/questions/14920273/how-to-make-word-concordance-with-solrhttp://stackoverflow.com/questions/14920273/how-to-make-word-concordance-with-solrhttp://stackoverflow.com/questions/14920273/how-to-make-word-concordance-with-solrhttp://stackoverflow.com/questions/14920273/how-to-make-word-concordance-with-solrhttp://stackoverflow.com/questions/14920273/how-to-make-word-concordance-with-solrhttp://stackoverflow.com/questions/14920273/how-to-make-word-concordance-with-solrhttp://stackoverflow.com/questions/14920273/how-to-make-word-concordance-with-solrhttp://stackoverflow.com/questions/14920273/how-to-make-word-concordance-with-solrhttp://stackoverflow.com/questions/14920273/how-to-make-word-concordance-with-solrhttp://stackoverflow.com/questions/14920273/how-to-make-word-concordance-with-solrhttp://stackoverflow.com/questions/14920273/how-to-make-word-concordance-with-solrhttp://stackoverflow.com/questions/14920273/how-to-make-word-concordance-with-solrhttp://stackoverflow.com/questions/14920273/how-to-make-word-concordance-with-solrhttp://stackoverflow.com/questions/14920273/how-to-make-word-concordance-with-solrhttp://stackoverflow.com/questions/14920273/how-to-make-word-concordance-with-solrhttp://stackoverflow.com/questions/14920273/how-to-make-word-concordance-with-solrhttp://stackoverflow.com/questions/14920273/how-to-make-word-concordance-with-solrhttp://stackoverflow.com/questions/14920273/how-to-make-word-concordance-with-solrhttp://stackoverflow.com/questions/14920273/how-to-make-word-concordance-with-solrhttp://wiki.apache.org/solr/HighlightingParametershttp://wiki.apache.org/solr/HighlightingParametershttp://wiki.apache.org/solr/HighlightingParametershttp://wiki.apache.org/solr/HighlightingParametershttp://wiki.apache.org/solr/HighlightingParametershttp://wiki.apache.org/solr/HighlightingParametershttp://wiki.apache.org/solr/HighlightingParametershttp://wiki.apache.org/solr/HighlightingParametershttp://wiki.apache.org/solr/HighlightingParametershttp://wiki.apache.org/solr/HighlightingParametershttp://wiki.apache.org/solr/HighlightingParametershttp://solr-vs-elasticsearch.com/http://solr-vs-elasticsearch.com/http://solr-vs-elasticsearch.com/http://solr-vs-elasticsearch.com/http://solr-vs-elasticsearch.com/http://solr-vs-elasticsearch.com/http://solr-vs-elasticsearch.com/http://solr-vs-elasticsearch.com/http://solr-vs-elasticsearch.com/
  • 5/21/2018 Bases De datos y sus caractersticas para extraccin y estrucuturacin de informacin

    7/17

    propsito, pero &ue al parecer es ms limitado, puesto &ue presumiblemente no est orientado para el

    usuario nal a diferencia de Linkurious!11')ase la ar&uitectura en la gura anterior'

    ! "ruebas de soft#are

    5e nos *a solicitado &ue se realicen pruebas del softMare considerado como me+or opcin' 5e*a decidido implementar un es&uema de integracin multipropsito no necesariamente AuditBuc1ed!con la nalidad de tener una B% *brida documentos-contenido-relaciones!' Cor lo tanto, en lasiguientes secciones sern mostradas algunas pruebas bsicas &ue inolucran la instalacin y uso de*erramientas en las cuales se inolucre tanto a /ucene como a alguna (%B adecuada' Cor el momento,se toma como me+or opcin a itan, ya &ue cuenta con soporte natio para /ucene'

    '.1 2nsta#aci3n de -pache "o#r

    5e *a elegido primero a Apac*e 5olr debido a &ue est basado en /ucene y cuenta con muc*as*erramientas de acceso para diferentes lengua+es de programacin 0EB, as como soporte ampliotanto por Apac*e como por la comunidad de programadores en la 0EB' Cor lo tanto, )ase a

    continuacin detalles sobre su instalacin y puesta a punto17

    algo sencillo en buntu 6>'?>, aun&ue conmuc*os problemas relacionados con ariables de entorno para 0indoMs!3

    1$%escargar la 2ltima ersin desde la 0EB de Apac*e 5orl6;http ://lucene .apache .org /solr /!3

    solr-UersionV'tgz

    e+emplo3solr -B..C.tg2pesa ms de 6??4!

    2$%escomprimir el arc*io descargado en el disco duroD en una ubicacin permanente' Este softMare notiene un instaladorD cuando se descargue el arc*io tgz LO el src ya &ue no funciona!, descomprimirloen la misma ubicacin e' g' 2opt2! de manera &ue el softMare completo ya &ueda instalado en la

    11 # pesar de 9ue inkurious puede !erse como un backend, de 9ue "eoB es la )D? de mAs alto ni!el 9ue se puedeencontrar de 9ue Elastic3earch tambi%n es un backend, los desarrolladores de #uditbucket sostienen 9ue su sistema no

    estA orientado para el usuario 0inal.17 En esencia se han seguido la iki o0icial de 3olr 'http://iki.apache.org/solr( el te&to N3olr in #ctionO por Hre )ringer H.Potter 'disponible en la E?(.1@ #ntes de poder iniciar el ser!idor de 3olr 'paso @ en adelante(, se debe instalar, o !eri0icar si estA instalado, el Java

    Development Kit (JDK) en su !ersin mAs reciente. #l tiempo en 9ue se ha reali2ado este reporte, la Mltima !ersin es la

    'JDQ (. Puede consultarse el procecdimiento de instalacin del JDQ en buntu 1B.CB, distribucin de inu& usada para este

    reporte: http://tecadmin.net/install-oracle-a!a--dk--ubuntu-!ia-ppa.

    G

    http://lucene.apache.org/solr/http://lucene.apache.org/solr/http://apache.webxcreen.org/lucene/solr/4.9.0/solr-4.9.0.tgzhttp://apache.webxcreen.org/lucene/solr/4.9.0/solr-4.9.0.tgzhttp://apache.webxcreen.org/lucene/solr/4.9.0/solr-4.9.0.tgzhttp://wiki.apache.org/solr/http://wiki.apache.org/solr/http://tecadmin.net/install-oracle-java-8-jdk-8-ubuntu-via-ppahttp://tecadmin.net/install-oracle-java-8-jdk-8-ubuntu-via-ppahttp://wiki.apache.org/solr/http://tecadmin.net/install-oracle-java-8-jdk-8-ubuntu-via-ppahttp://lucene.apache.org/solr/http://lucene.apache.org/solr/http://lucene.apache.org/solr/http://lucene.apache.org/solr/http://lucene.apache.org/solr/http://lucene.apache.org/solr/http://lucene.apache.org/solr/http://lucene.apache.org/solr/http://lucene.apache.org/solr/http://lucene.apache.org/solr/http://apache.webxcreen.org/lucene/solr/4.9.0/solr-4.9.0.tgzhttp://apache.webxcreen.org/lucene/solr/4.9.0/solr-4.9.0.tgzhttp://apache.webxcreen.org/lucene/solr/4.9.0/solr-4.9.0.tgz
  • 5/21/2018 Bases De datos y sus caractersticas para extraccin y estrucuturacin de informacin

    8/17

    direccin elegida dado &ue 2optes un directorio de root, al descomprimir el arc*io *abr &ue *acerlocon permisos!3

    C suo m4ir 2opt2solrC suo cp 21ome2user2=o3nloas2solr-D..F.tg+ 2opt2solrC c 2opt2solr

    C suo tar xf+ solr-D..F.tg+

    Ltese &ue no se *an borrado arc*ios ya in2tiles, como el W'tgz &ue ya no ser 2til'

    3$ Iniciar el seridor Meb Ketty incluido por default en la instalacin, aun&ue existen tutoriales para*acerlo con Apac*e omcat!, para ello primero *ay &ue cambiar de directorio, dentro del directoriocreado por la descompresin del arc*io3

    C c 2solr-D..F2example

    posteriormente, una ez en 2example, e+ecutar el script &ue inicia 5olr en Ketty3

    C suo )aa -)ar start.)ar

    Es importante *acer estos pasos con permisos de administrador, ya &ue de no *acerlo el seridor noresponder a peticiones desde el naegador, aun&ue s est) e+ecutndose al intentar isitar el portallocal de 5olr, como en el siguiente paso, el naegador regresar el clsico error '4'!' 5i todo sali bien,la consola se llenar de registros logs! y *asta aba+o se er uno similar al siguiente cada ez &ue 5olrrealice cual&uier accin )sta se er reRe+ada en dic*a consola, misma &ue permanecer fuera decontrol del sistema operatio' Cara interrumpir la operacin del seridor y recuperar el control de laconsola usar trlGc!3

    HIIHHH JKtp7L7MNHOL-7IP ;#< org.apac1e.solr.serlet.$olr=ispatc1#ilter Q

    JaminP 3ebappRnull pat1R2amin2info2loggingparamsR{_R7DFNMM7H7I7DSsinceR7DFNMMNI7H7OMS3tR)son( statusRF 5imeRF

    !$ ericar &ue el seridor est funcionando adecuadamente' Cara ello, abrir una entana delnaegador y escribir en la barra de direcciones3 1ttp:22local1ost:MMH2solr2

    %eber mostrarse un panel como el de la siguiente gura'

    '.& 5sando -pache "o#r

    /o bsico en el uso de 5olr son dos procedimientos3 Indexado de documentos y b2s&ueda dedocumentos' Crimero se describe cmo inde%arlos documentos contenidos en un directorio en este

    caso de e+emplo, para todos los documentos P4/ contenidos en el directorio 2exampleocs!3

    C c 2opt2solr2solr-D..F2example2exampleocsC )aa -)ar post.)ar T.xml

    Al nal de la e+ecucin del script1B,la consola deber mostrar algo como esto3

    1BEl sitio o0icial de 3olr no recomienda el uso de este script para produccin, a 9ue podra no 0uncionar de manera adecuada ptima.

  • 5/21/2018 Bases De datos y sus caractersticas para extraccin y estrucuturacin de informacin

    9/17

    K del panel de consulta' A*ora slo *ay &ue *acer clic1 en el botn azul *asta aba+o! "Execute

    Kuery#' 5e mostrarn como resultados todos arc*ios &ue se agregaron al ndice en un formato comoeste en el lado derec*o de la interfaz!3______________________________________________________________________________{ "responseBeaer": { "status": F, "5ime": D, "params": { "inent": "true",

    "K": "T:T", "_": "7DFNMFNOIHDO", "3t": ")son" ( (, "response": {

    1F3olr puede trabaar con !arios nMcleos del ser!idor a la !e2, sin embargo se trabaa Mnicamente con el a e&istente'collection7( 9ue sir!e para mostrar los eemplos.

    http://localhost:8983/solr/#/collection1/queryhttp://localhost:8983/solr/#/collection1/queryhttp://localhost:8983/solr/#/collection1/queryhttp://localhost:8983/solr/#/collection1/queryhttp://localhost:8983/solr/#/collection1/queryhttp://localhost:8983/solr/#/collection1/queryhttp://localhost:8983/solr/http://localhost:8983/solr/http://localhost:8983/solr/http://localhost:8983/solr/http://localhost:8983/solr/#/collection1/queryhttp://localhost:8983/solr/#/collection1/queryhttp://localhost:8983/solr/#/collection1/queryhttp://localhost:8983/solr/#/collection1/queryhttp://localhost:8983/solr/#/collection1/queryhttp://localhost:8983/solr/#/collection1/queryhttp://localhost:8983/solr/#/collection1/queryhttp://localhost:8983/solr/#/collection1/queryhttp://localhost:8983/solr/#/collection1/queryhttp://localhost:8983/solr/http://localhost:8983/solr/http://localhost:8983/solr/http://localhost:8983/solr/http://localhost:8983/solr/http://localhost:8983/solr/
  • 5/21/2018 Bases De datos y sus caractersticas para extraccin y estrucuturacin de informacin

    10/17

    "num#oun": HI, "start": F, "ocs": J { "i": "U67MFHF5E$5", "name": "5est 3it1 some U67MFHF encoe c1aracters",

    "features": J "o accents 1ere", "", "51is is a feature translate", "", "51is ocument is ery s1iny translate" P, "price": F, "price_c": "F,V$=", "in$toc4": true, "_ersion_": 7DLD7MIIIF7MLNFNFF

    (, { "i": "$IN7D", "name": "$amsung $pinoint 7IF $IN7D - 1ar rie Q INF

    U6 - A5A-7HH", "manu": "$amsung Electronics o. &t.", "manu_i_s": "samsung", "cat": J "electronics", "1ar rie" P, "features": J

    "LIFF?%, M%6 cac1e, ;=E Vltra A5A-7HH", "oiseUuar, $ilent$ee4 tec1nology, #lui =ynamic

    6earing #=6 motor" P, "price": I, "price_c": "I,V$=", "popularity": O, "in$toc4": true, "manufactureate_t": "IFFO-FI-7H57N:IO:HLW", "store": "HN.FLNI,-L.FHI", "_ersion_": 7DLD7MIII7IMMN7FFF (,

    { "i": "OBNFF#F",'En la barra de direcciones del naegador tambi)n se puede realizar la cosulta anterior3

    1ttp:22local1ost:MMH2solr2collection72selectX3tR)sonSinentRonSKRT:T

    GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG

    1C

  • 5/21/2018 Bases De datos y sus caractersticas para extraccin y estrucuturacin de informacin

    11/17

    El e+emplo anterior *a sido sencillo dado &ue se &uiere imprimir testimonio de las primerasexperiencias con 5olr muy agradables por cierto!D sin embargo, el proyecto &ue ocupa este pe&ue$oreporte re&uiere algunas cosas un tanto ms especcas aun&ue posiblemente poco exigentes para lascapacidades reales de 5olr! como lo es la extraccin de "snippets6o bien de prrafos completos, en loscuales un t)rmino buscado &uery! formule una concordancia'

    /a idea es organizar los documentos en formato adecuado para &ue las concordancias en snippets y enprrafos puedan ser recuperadas' Cor lo tanto se deben realizar algunas pruebas para determinar elformato adecuado' 5e sabe &ue 5olr es capaz de extraer e indexar contenido directamente desdedocumentos C%F, para lo cual se usa una *erramienta interconstruida llamada ell cuya operacindetallada no se trata en este reporte!' Adems se tiene la opcin de organizar preiamente elcontenido de los documentos ya sea en P4/ o K5OL, de manera &ue dic*o contenido tenga un formatode ob+eto, donde incluso cada rengln y cada prrafo pueden ser propiedades anidadas de un ob+etollamado =ocumento, sobre el cual el componente de resaltado, Big1lig1tingomponent, podratener )xito para la extraccin de concordancias' Xste tiene la particularidad de &ue no re&uiereindexado de alta granularidad palabra por palabra!, pero *abr &ue ericar sus enta+as en cuanto aldesempe$o de las respuestas del seridor formato y utilidad para la aplicacin nal! y con ol2menesgrandes de documentos'

    '.* 5so de# Big1lig1tingomponent

    Crimero se *a *ec*o una prueba sencilla &ue parece prometedora' onsiste de buscar unt)rmino dentro de un con+unto de arc*ios indexados durante el demo3 "eaiou#' %ic*o t)rmino seencuentra slo en uno de los documentos, mismo &ue est nombrado como "name":"5est 3it1

    some V5#-M encoe c1aracters" y est presente en dos snippets de dic*o documento' )aseprimero el contenido del documento y luego el resultado de la consulta3GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG0Y--

    ontenio el arc1io V5#M5E$5.xml Znico one e 1alla la palabra *eaiou-->0Xxml ersionR"7.F" encoingR"V5#-M"X>0a> 0oc>

    0fiel nameR"i">V5#M5E$502fiel>0fiel nameR"name">5est 3it1 some V5#-M encoe c1aracters02fiel>0fiel nameR"manu">Apac1e $oft3are #ounation02fiel>0fiel nameR"cat">soft3are02fiel>0fiel nameR"cat">searc102fiel>0fiel nameR"features">o accents 1ere02fiel>0fiel nameR"features">51is is an e acute: [02fiel>0fiel nameR"features">eaiou 3it1 circumflexes: \]^`02fiel>0fiel nameR"features">eaiou 3it1 umlauts: d02fiel>0fiel nameR"features">tag 3it1 escape c1ars: Slt/nicetag2Sgt/02fiel>0fiel nameR"features">escape ampersan: 6onnie Samp/ lye02fiel>0fiel nameR"features">0fiel nameR"price">F02fiel>0fiel nameR"in$toc4">true02fiel>

    11

  • 5/21/2018 Bases De datos y sus caractersticas para extraccin y estrucuturacin de informacin

    12/17

    02oc>02a>

    GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG

    A continuacin el &uery &ue se captura directamente en la barra de direcciones del naegador' Estaconsulta6:podra ser encapsulada por alguna funcin de la ACI para alg2n lengua+e de programacin

    por e+emplo 5olrK para Kaa!3

    1ttp:22local1ost:MMH2solr2collection72select2X3tR)sonSinentRonSKReaiouSflRnameS1lRtrueS1l.flRfeaturesS1l.snippetsRH

    _____________________________________________________________________________0Y-- ?espuesta a la consulta en son-->{ "responseBeaer":{ "status":F, "5ime":H, "params":{ "fl":"name", "1l.snippets":"H", "inent":"on", "K":"eaiou", "1l.fl":"features", "3t":")son", "1l":"true"((, "response":{"num#oun":7,"start":F,"ocs":J { "name":"5est 3it1 some V5#-M encoe c1aracters"(P

    (, "1ig1lig1ting":{ "V5#M5E$5":{ "features":J"0em>eaiou02em> 3it1 circumflexes: \]^`", "0em>eaiou02em> 3it1 umlauts: d"P(((______________________________________________________________________________

    En el ob+eto K5OL regresado por la respuesta a la consulta, se tiene una propiedad o campo llamado"1ig1lig1ting":{ ( el cual contiene en forma de lista dos snippets "features":

    Jsnippet7,snippetIP! en los cuales se encontr la cadena buscada' Ltese &ue dic*a cadena est

    marcada con la eti&ueta C.ETCO5 0em>caena02em>, la cual indica )nfasis emp*asis!' En base a lo

    anterior, surge la idea de estructurar parcialmente cada documento como propiedades anidadas de unob+eto' En analoga con el contenido del arc*io de e+emplo3GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG0Xxml ersionR"7.F" encoingR"V5#-M"X>0a> 0oc>

    0fiel nameR"i">=ocumento02fiel>0fiel nameR"name">E)emplo e ocumento02fiel>

    1I "tese el parAmetro de la consulta 9ue acti!a el 1ig1lig1tingomponent : 1lRtrue.

    17

  • 5/21/2018 Bases De datos y sus caractersticas para extraccin y estrucuturacin de informacin

    13/17

    0fiel nameR"autor">Apac1e $oft3are #ounation02fiel>0fiel nameR"si+e">74b02fiel>0fiel nameR"parrafo">Este seria un p!rrafo02fiel>0fiel nameR"parrafo">E aKui otro parrafo02fiel>0fiel nameR"parrafo">otro parrafo Kue contiene a eaiou02fiel>0fiel nameR"parrafo"> Algun otro parrafo el ocumento 02fiel>

    0fiel nameR"parrafo">eaiou esta tambien en El ultimo parrafo elocumento02fiel>

    02oc>02a>

    GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG

    Es intuitio pensar en la salida si se encuentra el nueo documento con este &uery3

    1ttp:22local1ost:MMH2solr2collection72select2X3tR)sonSinentRonSKReaiouSflRnameS1lRtrueS1l.flRparrafoS1l.snippetsR7F

    el cual buscara en los prrafos 0fiel nameR"parrafo">

    ! la misma cadena &ue en el e+emplo

    anterior 0fiel nameR"features">!' /os snippets regresados seran prrafos completos a menos&ue se especi&ue o se procese alguna longitud mxima de cadena! &ue podran ser ex*ibidosfcilmente en alguna interfaz 0EB'

    '.' 2ndeado de archi/os 7DF usando e# Extracting?eKuestBanler de "o#r

    Cuesto &ue en su mayora los arc*ios digitales de los se dispone estn en formato C%F, es unagran enta+a el *ec*o de &ue 5olr cuente con *erramientas interconstruidas de importacin' al es elcaso del Extracting?eKuestBanler1Gel cual es contiene un mdulo, ya mencionado, llamado ell&ue a su ez incorpora a -pache +ika1 como bac1end' En el siguiente e+emplo bsico se tienen >arc*ios pdf3 arc1io_7.pf, arc1io_I.pf, arc1io_H.pf y arc1io_D.pf los cuales

    sern indexados por separado3

    C c 2=ocuments2pf_pruebaC curl "1ttp:22local1ost:MMH2solr2upate2extractXliteral.iRoc7ScommitRtrue" -#

    "myfileR@arc1io_7.pf"C curl "1ttp:22local1ost:MMH2solr2upate2extractXliteral.iRocIScommitRtrue" -#

    "myfileR@arc1io_I.pf"C curl "1ttp:22local1ost:MMH2solr2upate2extractXliteral.iRocHScommitRtrue" -#

    "myfileR@arc1io_H.pf"C curl "1ttp:22local1ost:MMH2solr2upate2extractXliteral.iRocDScommitRtrue" -#

    "myfileR@arc1io_D.pf"

    5i tuo )xito la operacin, despu)s de agregar cada arc*io al ndice se tendr una salida similar a3

    0Xxml ersionR"7.F" encoingR"V5#-M"X>0response>0lst nameR"responseBeaer">0int nameR"status">F02int>0int nameR"5ime">7HIH02int>02lst>02response>

    1Ghttps ://iki.apache .org /solr /E&tractingSe9uestLandler1ibrera de #pache para la e&traccin e importacin de contenido de archi!os de di0erentes 0ormatos 'incluendo PD4, $icroso0tord, TDH, J3T" U$(.

    1@

    https://wiki.apache.org/solr/ExtractingRequestHandlerhttps://wiki.apache.org/solr/ExtractingRequestHandlerhttps://wiki.apache.org/solr/ExtractingRequestHandlerhttps://wiki.apache.org/solr/ExtractingRequestHandlerhttps://wiki.apache.org/solr/ExtractingRequestHandlerhttps://wiki.apache.org/solr/ExtractingRequestHandlerhttps://wiki.apache.org/solr/ExtractingRequestHandlerhttps://wiki.apache.org/solr/ExtractingRequestHandlerhttps://wiki.apache.org/solr/ExtractingRequestHandlerhttps://wiki.apache.org/solr/ExtractingRequestHandlerhttps://wiki.apache.org/solr/ExtractingRequestHandlerhttps://wiki.apache.org/solr/ExtractingRequestHandlerhttps://wiki.apache.org/solr/ExtractingRequestHandlerhttps://wiki.apache.org/solr/ExtractingRequestHandlerhttps://wiki.apache.org/solr/ExtractingRequestHandler
  • 5/21/2018 Bases De datos y sus caractersticas para extraccin y estrucuturacin de informacin

    14/17

    ada arc*io es importado como un ob+eto llamado *i:oc{x({x(Y6, 7, ;, >! en formato xml'

    5u contenido ser almacenado en una propiedad de dic*o ob+eto llamada content y podr seraccesada por cual&uier &uery en 5olr'

    '.8 B9sueda simp#e de concordancias con e# 1ig1lig1tingomponent

    5e retoma el tipo de b2s&ueda *ec*a en una seccin anterior para mostrar el uso del1ig1lig1tingomponentpara la extraccin de concordancias del t)rmino "tutor63

    1ttp:22local1ost:MMH2solr2collection72select2X3tR)sonSinentRonSKRtutorSflRiS1lRtrueS1l.flRcontentS1l.snippetsRN

    con lo &ue se tiene la siguiente salida K5OL en el naegador3GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG{ "responseBeaer":{ "status":F, "5ime":77, "params":{ "1l.snippets":"N", "K":"tutor", "1l":"true", "inent":"true", "fl":"i", "1l.fl":"content", "3t":")son"((, "response":{"num#oun":H,"start":F,"ocs":J {"i":"ocD(, {"i":"ocH(, {"i":"ocI(P (, "1ig1lig1ting":{ "ocD":{ "content":J" n n n n n n n n or meio e la presente informo a ustees Kue tanto mi

    0em>tutor02em>, el =r. Ueraro E. $ierra n n %artne+",

    " 0em>tutor02em> principal y irector e tesis n n I. =r. uan-%anuel 5orres-%orenoirector e tesis n n H. =ra"P(, "ocH":{ "content":J" eben 1aber sio preiamente sehalaas y aprobaas n n por su 0em>tutor02em>. n n

    -ltimo 1istorial aca[mico o", " promeio inferior a n n oc1o, en este caso eber! anexar una carta e )ustificacijn

    firmaa por el 0em>tutor02em>", " beca. $i reKuiere entrar nueamente n n al sistema, eber! solicitarlo a su 0em>tutor02em>

    paso nZmero N el", " correo eniao por $;tutor02em> le asignar! una beca la cual

    tenr! una igencia para su", " solicitu e beca no le asignan n n una, pjngase en contacto con su 0em>tutor02em> paso

    nZmero O el correo eniao"P(, "ocI":{ "content":J" acuero al monto Kue para tal efecto nestable+ca el tutor02em> al becario", ". ompromiso el 0em>tutor02em> o asesor e tesis el estuiante. n n n n Eniar a la

    =ireccijn e 6ecas el

  • 5/21/2018 Bases De datos y sus caractersticas para extraccin y estrucuturacin de informacin

    15/17

    de los resultadosD i' e' longitud de los snippets, posicin del t)rmino buscado dentro de cada snippet, lapalabra buscada como subcadena u omisin de caracteres no imprimibles' 5obre ello sern *ec*as la2ltimas indagatorias sobre el uso de 5olr'

    '.8 2ndeado de m9#tip#es archi/os 7DF usando #a herramienta post.)ar

    En este siguiente e+emplo de uso se tiene un directorio 21ome2user2=o3nloas! &uecontiene 68 arc*ios C%F, los cuales sern indexados usando la *erramienta de experimentacinpost.)ar ya se mencion &ue no debe ser usada para entornos de produccin 7?! empleada en elprimer e+emplo de indexado expuesto en este reporte'

    Crimero *abr &ue ir al directorio donde se encuentra el script3

    C c 2opt2solr-D..F2example2exampleocs

    y posteriormente e+ecutarlo763

    C suo )aa -=auto -)ar post.)ar 21ome2user2=o3nloas2T.pf

    El comando anterior, utiliza la opcin -=autopara indicarle al script &ue deber identicar el tipo de

    arc*io aun&ue despu)s se especica! y &ue deber asignar identicadores campo i &ue en este

    caso comprende la ruta y nombre original de cada arc*io sustituyendo espacios por _! automticos

    a los documentos en el ndice77 de 5olr /ucene!' Es posible adems usar en con+unto la opcin-=recursie para indicar &ue el script deber acceder a todos los subdirectorios del directorioespecicado' /a salida del comando en cuestin deber ser similar a3

    $impleost5ool ersion 7.Nosting files to base url 1ttp:22local1ost:MMH2solr2upate..Entering auto moe. #ile enings consiere arexml,)son,cs,pf,oc,ocx,ppt,pptx,xls,xlsx,ot,op,os,ott,otp,ots,rtf,1tm,1t

    ml,txt,log

  • 5/21/2018 Bases De datos y sus caractersticas para extraccin y estrucuturacin de informacin

    16/17

  • 5/21/2018 Bases De datos y sus caractersticas para extraccin y estrucuturacin de informacin

    17/17

    " seguria e obtener en una prueba e 0em>extraccijn02em> e unanbola, una negra.n n Esecir, e too lo anterior se"P(((