2017-09-02 7 views
0

アナライザ(elasticsearch内)はマスターノードにのみ実装するか、すべてのノードで個別に実装する必要があることを知りたいですか?クラスタ内のelasticsearchのストップワードアナライザ

正確な回答が見つかりませんでした。

助けてください!

おかげログの追加


{ 
 
filter: { 
 
spanish_stemmer: { 
 
type: "stemmer", 
 
language: "spanish" 
 
}, 
 
spanish_stop: { 
 
type: "stop", 
 
stopwords: "_spanish_" 
 
} 
 
}, 
 
my_analyzer: { 
 
spanish: { 
 
filter: [ 
 
"lowercase", 
 
"spanish_stop", 
 
"spanish_stemmer" 
 
], 
 
tokenizer: "standard" 
 
} 
 
}, 
 
mappings: { 
 
customparent: { 
 
properties: { 
 
name: { 
 
type: "string", 
 
analyzer: "my_analyzer" 
 
}, 
 
title: { 
 
type: "string", 
 
analyzer: "my_analyzer" 
 
}, 
 
fullImageAltDescription: { 
 
type: "string", 
 
analyzer: "my_analyzer" 
 
} 
 
} 
 
} 
 
} 
 
}

: - 私はelasticsearchからデータをフェッチするためにElasticsearch(2.4.1v)春データ転送クライアントを使用しています

は捕まってしまいました以下のエラー: -

org.elasticsearch.action.search.SearchPhaseExecutionException:すべてのシャードが失敗しました org.elasticsearch.action.search.Abs​​tractSearchAsyncAction.onFirstPhaseResult(AbstractSearchAsyncAction.java:206)〜[elasticsearch-2.4.0.jar:2.4.0] at org.elasticsearch.action.ActionSearchAsyncAction $ 1.onFailure(AbstractSearchAsyncAction.java:152)〜[elasticsearch-2.4.0.jar:2.4.0] at org.elasticsearch.action.ActionListenerResponseHandler.handleException(ActionListenerResponseHandler.java:46) )〜[elasticsearch-2.4.0.jar:2.4.0] at org.elasticsearch.transport.TransportService $ DirectResponseChannel.processException(TransportService.java:872)〜[elasticsearch-2.4.0.jar:2.4.0] org.elasticsearch.transport.TransportService $ DirectResponseChannel.sendResponse(TransportService.java:850)〜[elasticsearch-2.4.0.jar:2.4.0] at org.elasticsearch.transport.TransportService $ 4.onFailure(TransportService.java:387)〜[elasticsearch-2.4.0.jar:2.4.0] at org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable .java:39)〜[elasticsearch-2.4.0.jar:2.4.0] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)〜[na:1.8.0_101] at java.util .concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:624)〜[na:1.8.0_101] java.lang.Thread.run(Thread.java:748)〜[na:1.8.0_101] によって引き起こされる:org.elasticsearch.index.query.QueryParsingException:[match] analyzer [my_analyzer]が見つかりません at org.elasticsearch.index.query.MatchQueryParser.parse(MatchQueryParser.java:101)〜[elasticsearch-2.4.0.jar: 2.4.0] at org.elasticsearch.index.quer (IndexQueryParserService.java:320)〜[elasticsearch-2.4.0.jar:2.4.0] で、 2.4.0.jar:2.4.0] 、org.elasticsearch.index.query.IndexQueryParserService.parse(IndexQueryParserService.java:223)〜[elasticsearch-2.4.0.jar:2.4.0] at org.elasticsearch。 index.query.IndexQueryParserService.parse(IndexQueryParserService.java:218)〜[elasticsearch-2.4.0.jar:2.4.0] at org.elasticsearch.search.query.QueryParseElement.parse(QueryParseElement.java:33)〜[ elasticsearch-2.4.0.jar:2.4.0] at org.elasticsearch.search.SearchService.parseSource(SearchService.java:856)〜[elasticsearch-2.4.0.jar:2.4.0] at org.elasticsearch。 search.SearchService.createContext(SearchService.java:667)〜 [elasticsearch-2.4.0.jar:2.4.0] at org.elasticsearch.search.SearchService.createAndPutContext(SearchService.java:633)〜[elasticsearch-2.4.0.jar:2.4.0] at org.elasticsearch .search.SearchService.executeDfsPhase(SearchService.java:264)〜[elasticsearch-2.4.0.jar:2.4.0] at org.elasticsearch.search.action。SearchServiceTransportHandler.messageReceived(SearchServiceTransportAction.java:360)〜[elasticsearch-2.4.0.jar:2.4.0] at org.elasticsearch.search.action.SearchServiceTransportAction $ SearchDfsTransportHandler.messageReceived(SearchServiceTransportAction.java:357)〜[ elasticsearch-2.4.0.jar:2.4.0] at org.elasticsearch.transport.TransportRequestHandler.messageReceived(TransportRequestHandler.java:33)〜[elasticsearch-2.4.0.jar:2.4.0] at org.elasticsearch。 transport.RequestHandlerRegistry.processMessageReceived(RequestHandlerRegistry.java:77)〜[elasticsearch-2.4.0.jar:2.4.0] at org.elasticsearch.transport.TransportService $ 4.doRun(TransportService.java:376)〜[elasticsearch-2.4 .0.jar:2.4.0] 、org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:37)〜[elasticsearch-2.4.0.jar:2。 4.0] ... 3共通フレームの省略 00:52:06.100 [http-bio-8080-exec-3] DEBUG o.s.sw.c.HttpSessionSecurityContextRepository - SecurityContextが空であるか、内容が匿名である - コンテキストがHttpSessionに格納されない。 00:52:06.100 [http-bio-8080-exec-3] DEBUG osswcSecurityContextPersistenceFilter - リクエスト処理が完了したのでSecurityContextHolderがクリアされました。 Sep 05、2017 12:52:06 AM org.apache.catalina.core.StandardWrapperValve invoke SEVERE:パス[/ api]のコンテキスト内のサーブレット[appServlet]のServlet.service()が例外をスローしました[要求処理に失敗しました。フェーズ[dfs]を実行できませんでした。すべてのシャードは失敗しました。 shudFailures {[tdPbTD9IQhSuvkFMYt1WbA] [catalogviews] [0]:RemoteTransportException [[Shellshock] [my_ip:9300] [インデックス:データ/読み取り/検索[phase/dfs]]]; ["from":0、 "size":10、 "query":{"一致":{"タイトル":{"クエリ": "トップコート"、 "タイプ" : "boolean"、 "operator": "OR"、 "analyzer": "my_analyzer"、 "fuzziness": "1"、 "minimum_should_match": "95%"}}}}]];ネストされた:QueryParsingException [[match]アナライザ[my_analyzer]が見つかりません。 } [{tdPbTD9IQhSuvkFMYt1WbA] [カタログビュー] [1]:RemoteTransportException [[Shellshock] [my_ip:9300] [インデックス:データ/読み取り/検索[phase/dfs]]]; ["from":0、 "size":10、 "query":{"一致":{"タイトル":{"クエリ": "トップコート"、 "タイプ" : "boolean"、 "operator": "OR"、 "analyzer": "my_analyzer"、 "fuzziness": "1"、 "minimum_should_match": "95%"}}}}]];ネストされた:QueryParsingException [[match]アナライザ[my_analyzer]が見つかりません。 } [{tdPbTD9IQhSuvkFMYt1WbA] [catalogviews] [2]:RemoteTransportException [[Shellshock] [my_ip:9300] [インデックス:データ/読み取り/検索[phase/dfs]]]; ["from":0、 "size":10、 "query":{"一致":{"タイトル":{"クエリ": "トップコート"、 "タイプ" : "boolean"、 "operator": "OR"、 "analyzer": "my_analyzer"、 "fuzziness": "1"、 "minimum_should_match": "95%"}}}}]];ネストされた:QueryParsingException [[match]アナライザ[my_analyzer]が見つかりません。 } [{tdPbTD9IQhSuvkFMYt1WbA] [catalogviews] [3]:RemoteTransportException [[Shellshock] [my_ip:9300] [インデックス:データ/読み取り/検索[phase/dfs]]]; ["from":0、 "size":10、 "query":{"一致":{"タイトル":{"クエリ": "トップコート"、 "タイプ" : "boolean"、 "operator": "OR"、 "analyzer": "my_analyzer"、 "fuzziness": "1"、 "minimum_should_match": "95%"}}}}]];ネストされた:QueryParsingException [[match]アナライザ[my_analyzer]が見つかりません。 } [{tdPbTD9IQhSuvkFMYt1WbA] [カタログビュー] [4]:RemoteTransportException [[Shellshock] [my_ip:9300] [インデックス:データ/読み取り/検索[phase/dfs]]]; ["from":0、 "size":10、 "query":{"一致":{"タイトル":{"クエリ": "トップコート"、 "タイプ" : "boolean"、 "operator": "OR"、 "analyzer": "my_analyzer"、 "fuzziness": "1"、 "minimum_should_match": "95%"}}}}]];ネストされた:QueryParsingException [[match]アナライザ[my_analyzer]が見つかりません。 }]]根本原因で [catalogviews] QueryParsingException [一致するアナライザ[my_analyzer]が見つかりません] at org.elasticsearch.index.query.MatchQueryParser.parse(MatchQueryParser.java:101) at org.elasticsearch.index.query org.elasticsearch.index.query.IndexQueryParserService.parseでorg.elasticsearch.index.query.IndexQueryParserService.innerParse(IndexQueryParserService.java:320) で.QueryParseContext.parseInnerQuery(QueryParseContext.java:250) (IndexQueryParserService.java:223 org.elasticsearch.index.query.IndexQueryParserService.parse(IndexQueryParserService.java:218) で) org.elasticsearch.search.SearchServiceでorg.elasticsearch.search.query.QueryParseElement.parse(QueryParseElement.java:33) で。parseSource(SearchService.java:856) at org.elasticsearch.search.SearchService.createContext(SearchService.java:667) at org.elasticsearch.search.SearchService.createAndPutContext(SearchService.java:633) at org.elasticsearch。 org.elasticsearch.search.action.SearchServiceTransportAction $ SearchDfsTransportHandler.messageReceivedでorg.elasticsearch.search.action.SearchServiceTransportAction $ SearchDfsTransportHandler.messageReceived(SearchServiceTransportAction.java:360) (でsearch.SearchService.executeDfsPhase(SearchService.java:264) SearchServiceTransportAction.java:357) at org.elasticsearch.transport.TransportRequestHandler.messageReceived(TransportRequestHandler.java:33) at org.elasticsearch.transport.RequestHandlerRegistry.processMessageReceived(RequestHandler (AbstractRunnable.java:37) at java (ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748)。 )

答えて

0

ところで、問題はAnsaldosが述べたようにアナライザマッピング自体に問題がありました。 my_analyzerをアナライザーブロックに置く必要がありました。私は以下の正しいマッピングを追加しました。

{ "設定":{ "分析":{ "フィルタ":{ "spanish_stop":{ "タイプ": "停止"、 "ストップワード": "スペイン"}、 "spanish_stemmer" {"type": "stemmer"、 "language": "spanish"}}、 "analyzer":{"my_analyzer":{ "tokenizer": "standard"、 "filter": "小文字"、 " "" {"title":{"type": "string"、 "analyzer": "my_analyzer"}、 {0} {0}}}} "fullImageAltDescription":{"type": "string"、 "analyzer": "my_analyzer" } "name":{"type": "string"、 "analyzer": "my_analyzer"}}}}}}}

0

すべてのノードに設定する必要があります。

たとえば、シノニムアナライザーを独自の辞書で設定する場合は、synonym.txtをすべてのノードの特定のフォルダーに配置する必要があります。

編集: マッピングが正常であるようですが、アナライザーに「タイプ」カスタムを追加してみてください。

"analyzer": { 
    "spanish": { 
     "type": "custom", 
     "tokenizer": "standard", 
     "filter": [ 
      "lowercase", 
      "spanish_stop", 
      "spanish_stemmer" 
     ] 
    } 
} 
+0

よろしくお願いします。 – Dipt166

+0

こんにちはAnsaldos、私はエラーが表示されます: - 例外はフェーズ[dfs]を実行できませんでした。 shardFailures ------->と------> QueryParsingException [[match] analyzer [] not found ............助けてもらえますか? – Dipt166

+0

あなたのアナライザには例外がありません - 多分あなたはすべてのノードに追加するのを忘れていました。もう一度チェックしてください。問題が解決しない場合は、マッピングを表示してください。 – Ansaldos

関連する問題