2017-05-03 11 views
0

現在、Apache Nutch 1.13とSolr 4.10.4を使用してクロールを実行中にWebグラフ構造を抽出しようとしています。Nutch 1.13 index-links configuration

ドキュメントによると、index-linksプラグインは、outlinksinlinksをコレクションに追加します。

私はSolrのコレクションを変更して(schema.xmlの各フィールドを渡してSolrを再起動しました)、solrマッピングファイルを適合させましたが、役に立たなかった。 結果のエラーを以下に示します。 I一度、しかし

bin/nutch indexchecker http://www.my-domain.com/ 
fetching: http://www.my-domain.com/ 
robots.txt whitelist not configured. 
parsing: http://www.my-domain.com/ 
contentType: application/xhtml+xml 
tstamp : Wed May 03 11:40:57 CEST 2017 
digest : e549a51553a0fb3385926c76c52e0d79 
host : http://www.my-domain.com/ 
id : http://www.my-domain.com/ 
title : Startseite 
url : http://www.my-domain.com/ 
content : bla bla bla bla. 

bin/nutch index -D solr.server.url=http://localhost:8983/solr/collection1 crawl/crawldb/ -linkdb crawl/linkdb/ crawl/segments/* -filter -normalize -deleteGone 
Segment dir is complete: crawl/segments/20170503114357. 
Indexer: starting at 2017-05-03 11:47:02 
Indexer: deleting gone documents: true 
Indexer: URL filtering: true 
Indexer: URL normalizing: true 
Active IndexWriters : 
SOLRIndexWriter 
    solr.server.url : URL of the SOLR instance 
    solr.zookeeper.hosts : URL of the Zookeeper quorum 
    solr.commit.size : buffer size when sending to SOLR (default 1000) 
    solr.mapping.file : name of the mapping file for fields (default solrindex-mapping.xml) 
    solr.auth : use authentication (default false) 
    solr.auth.username : username for authentication 
    solr.auth.password : password for authentication 


Indexing 1/1 documents 
Deleting 0 documents 
Indexing 1/1 documents 
Deleting 0 documents 
Indexer: java.io.IOException: Job failed! 
    at org.apache.hadoop.mapred.JobClient.runJob(JobClient.java:865) 
    at org.apache.nutch.indexer.IndexingJob.index(IndexingJob.java:147) 
    at org.apache.nutch.indexer.IndexingJob.run(IndexingJob.java:230) 
    at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70) 
    at org.apache.nutch.indexer.IndexingJob.main(IndexingJob.java:239) 

は興味深いことに、私自身の研究は、(プラグインなし)結果の解析は、このようになりますので、それは、実際には非自明であるという仮定に私を導きましたindex-linksを有効にすると、出力が突然次のようになります。

明らか
bin/nutch indexchecker http://www.my-domain.com/ 
fetching: http://www.my-domain.com/ 
robots.txt whitelist not configured. 
parsing: http://www.my-domain.com/ 
contentType: application/xhtml+xml 
tstamp : Wed May 03 11:40:57 CEST 2017 
outlinks : http://www.my-domain.com/2-uncategorised/331-links-administratives 
outlinks : http://www.my-domain.com/2-uncategorised/332-links-extern 
outlinks : http://www.my-domain.com/impressum.html 
id : http://www.my-domain.com/ 
title : Startseite 
url : http://www.my-domain.com/ 
content : bla bla bla 

、これは単一のフィールドに収まらないことができますが、私はちょうどすべてのと単一のリストを持っていると思います(私はinlinksが動作しないと読んだが、とにかくそれらは必要ない)。

答えて

1

あなたはアンリロードへのSolrの完全な再起動などのコレクションを、確認して、その後solrindex-mapping.xml

このような
<field dest="inlinks" source="inlinks"/> 
<field dest="outlinks" source="outlinks"/> 

のフィールドを指定する必要があります。

あなたはschema.xmlのフィールドを実装しますが、私のために、以下に働いたかを正確に指定されていませんでした:

<!-- fields for index-links plugin --> 
<field name="inlinks" type="url" stored="true" indexed="false" multiValued="true"/> 
<field name="outlinks" type="url" stored="true" indexed="false" multiValued="true"/> 

よろしくと幸運!

+0

ああ、ヒントありがとう!私はそれが実際にコレクションをリロードする必要があるとは思わなかった...愚かな私は、ヒントのおかげで! – dennlinger