Lucene search config xml - PullRequest
       3

Lucene search config xml

0 голосов
/ 14 января 2020

Я беспокоюсь о поддержке одного PHP проекта с интегрированным поиском Lucene. Проблема в том, что клиент жалуется, что в производственной среде возвращаются не все результаты поиска.

Я установил этот проект локально, и мне не удалось найти что-либо для поиска. В базе данных есть таблица, которая содержит индексированное содержимое, но когда я пытаюсь найти содержимое, которое на 100% в этой индексной таблице - я получаю 0 результатов. Я подозреваю, что эта проблема может быть связана с производственной проблемой.

В этом проекте нет документации, связанной с поиском lucene, и я не могу найти никакой информации о том, как создать или изменить файл конфигурации индекса.

В этом проекте есть только файл lucene-search.jar, никаких других java файлов.

Каталог / индекс содержит два небольших файла размером 20-30 байтов:

segments.gen
segments_1

Таблица с индексированным содержимым содержит много строк. Я переиндексировал содержимое.

Вот часть кода, которая запускает поиск:

$cmd = "java -jar lucene-search.jar -o search -l " . $lang_rec['id'] . ' -i ' . $lang_rec['iso'] . ' -q ' . escapeshellarg($q) . ' -p ' . floor($offset / $limit) . ' -s ' . $limit . ' -a';
$output = shell_exec($cmd);

Вот созданный журнал:

0    [main] INFO  bi.search.lucene.Main  - Started at 14.01.2020 08:31:40
3    [main] INFO  bi.search.lucene.Main  - Path to config file not specified, using default file
935  [main] INFO  bi.search.lucene.LuceneIndex  - Analyzer for language lv found
949  [main] DEBUG bi.search.lucene.LuceneIndex  - Escaped search query: example
980  [main] DEBUG bi.search.lucene.LuceneIndex  - Records found: 0
980  [main] DEBUG bi.search.lucene.LuceneIndex  - Using highlighting pre-tag:
 <span class=\"hightlight\">

980  [main] DEBUG bi.search.lucene.LuceneIndex  - Using highlighting post-tag:
 </span>

981  [main] DEBUG bi.search.lucene.LuceneIndex  - Using highlighting fragment size: 300
983  [main] DEBUG bi.search.lucene.LuceneIndex  - Search took: 48
1515 [main] DEBUG bi.search.lucene.Main  - Total execution time: 1514

Вот indexing-config . xml содержание:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<tns:config xmlns:tns="http://www.bi.lv/search" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.bi.lv/search schema/bi-search.xsd ">
    <tns:datasource>
        <tns:driverName>com.mysql.jdbc.Driver</tns:driverName>
        <tns:jdbcUrl>jdbc:mysql://***.***.***.***/develop_***</tns:jdbcUrl>
        <tns:username>********</tns:username>
        <tns:password>********</tns:password>
    </tns:datasource>
    <tns:index>
        <tns:folder>index/</tns:folder>
    </tns:index>
    <tns:content>
        <tns:tables>
            <tns:languagesMap>
                <tns:sql>
                    select id, iso from site_langs
                </tns:sql>
                <tns:idColumnName>id</tns:idColumnName>
                <tns:isoColumnName>iso</tns:isoColumnName>
            </tns:languagesMap>
            <tns:table>
        <tns:name>search_index</tns:name>
        <tns:sql><![CDATA[select * from search_index where lang_id = {LANG_ID}]]></tns:sql>
        <tns:columns>
          <tns:column>
            <tns:name>id</tns:name>
            <tns:type>RECORD_ID</tns:type>
          </tns:column>
          <tns:column>
            <tns:name>url</tns:name>
            <tns:type>URL</tns:type>
          </tns:column>
          <tns:column>
            <tns:name>content_type</tns:name>
            <tns:type>CONTENT_TABLE_NAME</tns:type>
          </tns:column>
          <tns:column>
            <tns:name>title</tns:name>
            <tns:type>TITLE</tns:type>
          </tns:column>
          <tns:column>
            <tns:name>contents</tns:name>
            <tns:type>CONTENT</tns:type>
          </tns:column>
          <tns:column>
            <tns:name>title</tns:name>
            <tns:type>CONTENT</tns:type>
          </tns:column>
          <tns:column>
            <tns:name>orig_content_id</tns:name>
            <tns:type>CONTENT_RECORD_ID</tns:type>
          </tns:column>
          <tns:column>
            <tns:name>lang_id</tns:name>
            <tns:type>LANGUAGE</tns:type>
          </tns:column>
          <tns:column>
            <tns:name>file_local_paths</tns:name>
            <tns:type>FILE_LOCAL_PATH</tns:type>
          </tns:column>
          <tns:column relatedToColumn="file_local_paths">
            <tns:name>file_public_paths</tns:name>
            <tns:type>FILE_PUBLIC_PATH</tns:type>
          </tns:column>
          <tns:column relatedToColumn="file_local_paths">
            <tns:name>file_names</tns:name>
            <tns:type>FILE_NAME</tns:type>
          </tns:column>
        </tns:columns>
        <tns:langVariableName>{LANG_ID}</tns:langVariableName>
      </tns:table>
        </tns:tables>
    </tns:content>
    <tns:resultFormat>
        <tns:highlighting enabled="true">
            <tns:preTag>
<![CDATA[ <span class=\"hightlight\"> ]]>
            </tns:preTag>
            <tns:postTag>
<![CDATA[ </span> ]]>
            </tns:postTag>
            <tns:fragmentSize>300</tns:fragmentSize>
        </tns:highlighting>
    </tns:resultFormat>
    <tns:argsEncoding>UTF8</tns:argsEncoding>
</tns:config>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...