1

〜 30 GB のデータを含むデータベース テーブルがあります。DIHで索引付けしています。データのインデックス作成には 1 時間 15 分しかかかりませんが、検索は非常に遅く、約 1 分かかり、正しくないようです。誰かが同じ問題に直面している場合は、助けてください。

ファイルの内容を証明しています。

データ構成.xml

<dataConfig>
  <dataSource type="JdbcDataSource" 
              driver="com.mysql.jdbc.Driver"
               url="jdbc:mysql://Battrdbtest20/test_results"
              batchSize="-1"
              user="results" 
              password="resultsloader"/>
   <document>
    <entity name="Syndrome" 
        pk="test_file_result_id"
      query="SELECT * FROM Syndrome">  

        <Field column="test_file_result_id" name="test_file_result_id"/>
        <Field column="syndrome" name="syndrome"/>
    </entity>
  </document>
</dataConfig>

schema.xml (自分のデータに合わせてフィールドのみを変更)

 <fields>

     <field name="test_file_result_id" type="slong" indexed="true" stored="true" required="true" omitNorms="true" multivalued="false" />
     <field name="syndrome" type="string" indexed="true" stored="true" required="true" omitNorms="false" multivalued="false" />

 </fields>

 <uniqueKey>test_file_result_id</uniqueKey>

 <defaultSearchField>syndrome</defaultSearchField>

solrconfig.xml に変更なし

test_file_result_id は 10 桁の ID です。また、シンドローム フィールドには、膨大なデータ (ログ ファイルの内容の種類) を含む BLOB が格納されます。

test_file_result_id で検索すると、検索結果が 1 秒以内に表示されますが、シンドロームの場合は 1 分以上かかります。

前もって感謝します!!

4

1 に答える 1