Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
instalacion_y_configuracion_de_sphinx_para_orfeo [2024/08/21 13:35] kasandrainstalacion_y_configuracion_de_sphinx_para_orfeo [2024/10/18 16:15] (actual) kasandra
Línea 3: Línea 3:
 ===== Descripción ===== ===== Descripción =====
  
-Como agregar la característica de full-text-search para Orfeo+Como agregar la característica de full-text-search para Orfeo 6
  
 ===== Prerequistos ===== ===== Prerequistos =====
Línea 11: Línea 11:
 Instalar dependencias para los extractores Instalar dependencias para los extractores
  
-$> apt-get install bc lynx unoconv poppler-utils+    apt-get install bc lynx unoconv poppler-utils
  
  
Línea 24: Línea 24:
 Instalelo logueandose como el usuario para forzar el propietario Instalelo logueandose como el usuario para forzar el propietario
  
-   psql -h localhost -d demo_odb -U demo_usr -W -f /tmp/datosocr.sql +    psql -h localhost -d demo_odb -U demo_usr -W -f /tmp/datosocr.sql 
-   psql -h localhost -d demo_odb -U demo_usr -W -f /tmp/sphinx_index_meta.sql +    psql -h localhost -d demo_odb -U demo_usr -W -f /tmp/sphinx_index_meta.sql 
-   psql -h localhost -d demo_odb -U demo_usr -W -f /tmp/sphinx_index_remove.sql+    psql -h localhost -d demo_odb -U demo_usr -W -f /tmp/sphinx_index_remove.sql
  
-**$%%**%% sphinx_index_meta.sql** : Esta tabla  tiene un registro que funciona como contador si no se carga junto con la estructura, puede fallar la indexación\\ +OJO: sphinx_index_meta.sql: Esta tabla  tiene un registro que funciona como contador si no se carga junto con la estructura, puede fallar la indexación 
-\\ + 
-$%%**%% En OrfeoNG las tablas cambian y ya vienen incluidas por defecto\\+OJO: En OrfeoNG las tablas cambian y ya vienen incluidas por defecto\\
  
  
Línea 36: Línea 36:
  
 Descargue el instalador de de la 2.2.11 estable\\ Descargue el instalador de de la 2.2.11 estable\\
-\\ + 
-http:%%//%%sphinxsearch.com/downloads/sphinx-2.2.11-1.rhel7.x86_64.rpm/thankyou.html\\ +http://sphinxsearch.com/downloads/sphinx-2.2.11-1.rhel7.x86_64.rpm/thankyou.html\\ 
-http:%%//%%sphinxsearch.com/downloads/sphinxsearch_2.2.11-release-1~jessie_i386.deb/thankyou.html\\ +http://sphinxsearch.com/downloads/sphinxsearch_2.2.11-release-1~jessie_i386.deb/thankyou.html\\ 
-\\+
 Instale con "rpm -Uvh" en RH  o con "dpkg -i " den Debian\\ Instale con "rpm -Uvh" en RH  o con "dpkg -i " den Debian\\
-\\ 
-$%%**%% No hay nada de lo que hagamos que limite la ejecucion a sphinx 2 ... o sea debe poderse instalar sphinx3 
  
-==== 3. Copie el archivo de configuracion ====+NOTA: No hay nada de lo que hagamos que limite la ejecucion a sphinx 2 ... o sea debe poderse instalar sphinx3 desde repositorios
  
-El archivo de configuracion sphinx.conf modelo esta en trunk/instalacion/PSQL sphinx.conf  (MSSQL, MySQL - MariaDB,ORACLE) copielo a /etc/sphinx/\\+==== 3. Copie el archivo de configuración ====
  
 +El archivo de configuración sphinx.conf modelo esta en trunk/instalacion/PSQL sphinx.conf  (MSSQL, MySQL - MariaDB,ORACLE) copielo a /etc/sphinx/
  
-Y cambie los datos de la base de datos .. nombre, usuario y contraseña (puede sacarlog del config.php de orfeo)\\ + 
-\\ +Y cambie los datos de la base de datos .. nombre, usuario y contraseña (puede sacarlos del config.php de orfeo) 
-$%%**%% OJO .. cheque los paths que coincidan con /var/lib/sphinx/dataorfeo\\ + 
-\\ +OJO .. cheque los paths que coincidan con /var/lib/sphinx/dataorfeo 
-$%%**%% Si Usa [[egroupware/index.php?menuaction=wiki.wiki_ui.view&page=ODBC|ODBC]] (MSSQL y [[https://datacadamia.com/db/oracle/odbc_linux|ORACLE]]) .. vea el wiki para ponerlo a funcionar\\ + 
-\\ +Si Usa ODBC (MSSQL y [[https://datacadamia.com/db/oracle/odbc_linux|ORACLE]]) .. vea el wiki para ponerlo a funcionar 
-$%%**%% Dependiendo del numero de documentos, depronto es buena idea cambiar el parametro sql_range_step+ 
 +%%**%% Dependiendo del numero de documentos, de pronto es buena idea cambiar el parámetro sql_range_step
  
 ==== 4. Cree el directorio de los indices ==== ==== 4. Cree el directorio de los indices ====
  
-**Nota:** según la versión de linux el directorio puede llamarse sphinx o sphinxsearch (tambien toca cambiarlo en sphinx.conf)\\+Nota: según la versión de linux el directorio puede llamarse sphinx o sphinxsearch (tambien toca cambiarlo en sphinx.conf) 
 + 
 + 
 +    mkdir /var/lib/sphinx/dataorfeo/ 
 +    chown -R sphinx:sphinx /var/lib/sphinx/dataorfeo/ 
 +    mkdir /var/lib/sphinx/indice/ 
 +    chown -R sphinx:sphinx /var/lib/sphinx/indice/ 
 + 
 +O en Debian 
 + 
 +    mkdir /var/lib/sphinxsearch/dataorfeo/ 
 +    chown -R sphinxsearch:sphinxsearch /var/lib/sphinxsearch/dataorfeo/ 
 +    mkdir /var/lib/sphinxsearch/indice/ 
 +    chown -R sphinxsearch:sphinxsearch /var/lib/sphinxsearch/indice/ 
 + 
 +OJO dependiendo del tamaño de la base de datos .. es posible que esto toque enviarlo a un directorio diferente
  
 +NOTA: Hasta aquí están los modelos de orfeoexpress .. lo que sigue hace falta hacerlo.
  
- $>  mkdir /var/lib/sphinx/dataorfeo/\\ +El pinche pide un /var/data  .. que voy a poner en /var/lib/sphinx/data y pone un link
- $>  chown -R sphinx:sphinx /var/lib/sphinx/dataorfeo/\\ +
- $>  mkdir /var/lib/sphinx/indice/\\ +
- $>  chown -R sphinx:sphinx /var/lib/sphinx/indice/\\ +
-\\ +
-O en Debian\\ +
-\\ +
-mkdir /var/lib/sphinxsearch/dataorfeo/\\ +
-chown -R sphinxsearch:sphinxsearch /var/lib/sphinxsearch/dataorfeo/\\ +
-mkdir /var/lib/sphinxsearch/indice/\\ +
-chown -R sphinxsearch:sphinxsearch /var/lib/sphinxsearch/indice/\\ +
-\\ +
-OJO dependiendo del tamaño de la base de datos .. es posible que esto toque enviarlo a un directorio diferente\\ +
-\\ +
-%%**%% Hasta aqui estan los modelos de orfeoexpress .. lo que sigue hace falta hacerlo.+
  
- El pinche pide un /var/data  .. que voy a poner en /var/lib/sphinx/data y pone un link\\ +    mkdir /var/lib/sphinx/data 
-\\ +    ln -s /var/lib/sphinx/data /var/data 
-  $>  mkdir /var/lib/sphinx/data\\ +    chown -R sphinx:sphinx /var/lib/sphinx
-  $>  ln -s /var/lib/sphinx/data /var/data\\ +
-  $>  chown -R sphinx:sphinx /var/lib/sphinx+
  
 ==== 5. Debe funcionar ==== ==== 5. Debe funcionar ====
  
-Pruebe corriendo el indexador \\ +Pruebe corriendo el indexador  
-\\ + 
-**Nota:** La primera indexación debe crear los archivos que se usan de indice el el dirrectorio /var/lib/sphinx/dataorfeo\\ +Nota: La primera indexación debe crear los archivos que se usan de indice el el directorio /var/lib/sphinx/dataorfeo 
-\\ + 
-  $>  /usr/bin/indexer --rotate --config /etc/sphinx/sphinx.conf --all\\ +    /usr/bin/indexer --rotate --config /etc/sphinx/sphinx.conf --all 
-\\ + 
-**Nota:** Este comando también se puede usar para re-indexar toda la información que se encuentre en la tabla datosocr quitando todo lo\\+Nota: Este comando también se puede usar para re-indexar toda la información que se encuentre en la tabla datosocr quitando todo lo\\
 que alguna vez fue indexado, por eso se usa para inicializar los indices que alguna vez fue indexado, por eso se usa para inicializar los indices
  
 ====  6. Verfique que el servicio esta arriba ==== ====  6. Verfique que el servicio esta arriba ====
  
- $>  systemctl enable searchd\\ + $>  systemctl enable searchd 
- $>  systemctl status searchd\\+ $>  systemctl status searchd
  $>  systemctl restart searchd  $>  systemctl restart searchd
  
 ==== 7. No olvide agregar al cron de sphinx.cron ==== ==== 7. No olvide agregar al cron de sphinx.cron ====
  
-Copie el sphinx.cron a /etc/cron.d/sphinx\\ +Copie el sphinx.cron a /etc/cron.d/sphinx 
-\\ + 
-**Nota:** Dentro del cron se ejecutan dos comandos para sphinx que se encargan de hacer la indexación incremental, no se usa\\ +Nota: Dentro del cron se ejecutan dos comandos para sphinx que se encargan de hacer la indexación incremental, no se usa 
-el comando mencionado anteriormente en los cron\\ +el comando mencionado anteriormente en los cron
-\\+
  
  
 ==== 8. Copie el código propio de busquedaOCR en el directorio de orfeo ==== ==== 8. Copie el código propio de busquedaOCR en el directorio de orfeo ====
  
-cp -Rpd busquedaOCR /var/www/html/orfeo-58/\\ +    cp -Rpd busquedaOCR /var/www/html/orfeo-58/ 
-\\+
  
  
 ===== Trucos ===== ===== Trucos =====
  
-**Comandos utiles:**+==== 1. Comandos utiles ====
  
 Para ingresar al MySQL - MariaDB propio que monta sphinx ejecute en consola (debe tener instalado el cliente de MySQL - MariaDB): Para ingresar al MySQL - MariaDB propio que monta sphinx ejecute en consola (debe tener instalado el cliente de MySQL - MariaDB):
  
 1) Ingreso a consultar la db interna de sphinx = MySQL - MariaDB -h 0 -P 9306 1) Ingreso a consultar la db interna de sphinx = MySQL - MariaDB -h 0 -P 9306
-2) Consultar la información dentro del indice "orfeo_ocr "  (los resultadpos siempre aparecen limitados a 20 ), ejemplos: +2) Consultar la información dentro del indice "orfeo_ocr "  (los resultados siempre aparecen limitados a 20 ), ejemplos: 
  
-   MySQL - MariaDB> select id,anex_desc, ocr from orfeo_ocr limit 100;  \\ +    select * from orfeo_ocr;   
-   MySQL - MariaDB> select id from orfeo_ocr where match ('contraseña') limit 100;\\+    select id,anex_desc, ocr from orfeo_ocr limit 100;  \\ 
 +    select id from orfeo_ocr where match ('contraseña') limit 100;\\
  
 Consultar directamente en la DB interna de sphinx le permite validar que se cargo realmente desde la tabla datosocr, cuando tiene problemas Consultar directamente en la DB interna de sphinx le permite validar que se cargo realmente desde la tabla datosocr, cuando tiene problemas
 como que no encuentra resultados de registros ya cargados  (Util cuando las bases de datos dan problemas por la configuración del conjunto de caracteres) como que no encuentra resultados de registros ya cargados  (Util cuando las bases de datos dan problemas por la configuración del conjunto de caracteres)
  
-Utilidades de sphinx+==== 2. Utilidades de sphinx ====
  
- $>  indexer --buildstops word_freq.txt 3000  --config /etc/sphinx/sphinx.conf --all   [Guarda el top de palabras indexadas con un limite de 3000]+Guarda el top de palabras indexadas con un limite de 3000
  
- $>  indexer --rotate --config /etc/sphinx/sphinx.conf --all --print-queries  [Entrega las sentencias inset que ejecuto por cada registro a indexar, util para ver problemas con acentos]+    indexer --buildstops word_freq.txt 3000  --config /etc/sphinx/sphinx.conf --all
  
- $>  indextool --dumpdict orfeo_ocr  [Entrega cada una de las palabras indexadas]\\+Entrega las sentencias inset que ejecuto por cada registro a indexar, util para ver problemas con acentos 
 +    indexer --rotate --config /etc/sphinx/sphinx.conf --all --print-queries 
 + 
 +Entrega cada una de las palabras indexadas\\ 
 + 
 +    indextool --dumpdict orfeo_ocr
  
  
Línea 144: Línea 149:
 ==== 1. Permisos ==== ==== 1. Permisos ====
  
-Generalmente lo que tiende a molestar en el proceso de instalacion es la primera ejecución, recuerde primero ejecutar\\ +Generalmente lo que tiende a molestar en el proceso de instalación es la primera ejecución, recuerde primero ejecutar\\ 
-la primera indexación, tener los directorios de los indices con los permisos adecuados y luego levantar el servicio de sphinx, si tiene algun error, generalmente el comando de indexación es\\+la primera indexación, tener los directorios de los indices con los permisos adecuados y luego levantar el servicio de sphinx, si tiene algún error, generalmente el comando de indexación es\\
 el que le indica que esta saliendo mal.\\ el que le indica que esta saliendo mal.\\
 +
 +==== 2.  ERROR: nothing to do. ====
  
  
Línea 158: Línea 165:
  
  
----- 
- 
-__**Advertencia**__ 
- 
-Este documento es privado y es de u so exclusivo de sus autores y de SKINA TECH. Cualquier uso sin una autorización escrita es contra la ley de derechos de autor y de propiedad intelectual, y será motivo de una acción legal. 
  
  
Volver arriba