2011-08-08 7 views
0

私はテキストファイルのSphinxインデックスを持っています。テキストファイルをインデックス付けする際にSphinxが見つけたkeytermsのリストを検索したいと思います。これはどうすればいいですか?Sphinxインデックスから最も頻繁に出現するキーワードをどのように検索しますか?

可能であれば、実数と幹の両方を取得したいと考えています。

私は、インデックスの呼び出しにPHP APIを使用しています。以下は

は、このインデックスのための私のSphinx.conf設定です:

source srcDatasheets 
{ 
    type    = mysql 
    sql_host   = localhost 
    sql_user   = user 
    sql_pass   = pass 
    sql_db    = db 
    sql_port   = 3306 

    sql_query   = \ 
     SELECT id, company_id, title, brief, content_file_path \ 
     FROM datasheets 

    sql_attr_uint  = company_id 
    sql_file_field  = content_file_path 
    sql_query_info  = SELECT * FROM datasheets WHERE id=$id 
} 


index datasheets 
{ 
    source    = srcDatasheets 
    path    = /usr/local/sphinx/var/data/datasheetsStemmed 
    docinfo    = extern 
    charset_type  = sbcs 
    morphology   = stem_en 
    min_stemming_len = 1 
} 

答えて

0

一つはスフィンクスでライブインデックスから直接キーワード密度を取得することはできません。データはこれを可能にする方法で格納されません。ここにはa response from the Sphinx forumsがあります。

しかし、できることは、--buildstops、--buildfreqs(see the docs)でインデクサーを実行することです。インデクサーは、そのインデックスの.confファイルにある設定に基づいて、最も頻繁に発生する用語と頻度のtxtファイルを出力します。

これは、リストとテキストファイルを作成するためにデータセットを処理し、実際には新しい検索可能なインデックスを作成しません。

私は、最小単語長と最小ステミング長さが5文字のテキストファイル(変換pdfs)のインデックスについてテストを行いました。約20秒で70,000ファイルが処理されます(最小文字制限を1に設定して5分)。

関連する問題