0

以下に示すように、dih-import.xml を構成しました。はFileListEntityProcessor、いくつかのフォルダーをウォークスルーし、各ファイルに対して XPathEntity と DB-Entity を実行します。

約 30.000 個のファイルのフル インポートを実行したところ、インポートに 3 時間近くかかりました。DIH デバッグ コンソールに戻ると、最初に見つかったファイルに対して 2 つの db 呼び出しが行われ、2 番目のファイルでは 4、次に 6、8、..

グーグルはこの件について何も見せてくれなかったので、あなたに期待しています:)

前もって感謝します

<?xml version="1.0" encoding="UTF-8"?>
<dataConfig>
    <dataSource 
        name="cr-db"
        jndiName="xyz"
        type="JdbcDataSource" />
    <dataSource 
        name="cr-xml" 
        type="FileDataSource" 
        encoding="utf-8" />


    <document name="doc">
        <entity 
            dataSource="cr-xml" 
            name="f" 
            processor="FileListEntityProcessor" 
            baseDir="/path/to/xml" 
            filename="*.xml" 
            recursive="true" 
            rootEntity="true" 
            onError="skip">
            <entity
                name="xml-data" 
                dataSource="cr-xml" 
                processor="XPathEntityProcessor" 
                forEach="/root" 
                url="${f.fileAbsolutePath}" 
                transformer="DateFormatTransformer" 
                onError="skip">
                <field column="id" xpath="/root/id" /> 

                <field column="A" xpath="/root/a" />
            </entity>

            <entity 
                name="db-data" 
                dataSource="cr-db"
                query="
                    SELECT  
                        id, b
                    FROM 
                        a_table
                    WHERE 
                        id = '${f.file}'">
                <field column="B" name="b" />
            </entity>
        </entity>
    </document>
</dataConfig>

EDIT はGoogleで問題を発見しましたが、そこにも答えはありません: http://osdir.com/ml/solr-user.lucene.apache.org/2010-04/msg00138.html


そして別の編集

solr を 3.6 から 4.1 にアップデートし、インポーターを実行しました。サブエンティティの呼び出しが 2n (2, 4, 6, 8, ..) ではなく、n 回しかないことだけが問題です。

4

1 に答える 1

1

主な問題が JdbcDataSource を使用するときのデータベースのヒット数である場合は、 CachedSqlEntityProcessor に切り替えてみてください

SOLR-2943を追跡することもできます。彼らはあなたの問題に正確に対処したいので、うまくいけば今後の Solr 4.2 に対応します。

于 2013-03-07T16:17:45.867 に答える