問題タブ [elasticsearch-java-api]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
987 参照

java - 複数フィールドでのフレーズ一致

これが私が今それを行う方法です:

.. .setQuery( filteredQuery( multiMatchQuery(String.format("*%s*", query), "name", "address", "phone") .type(MultiMatchQueryBuilder.Type.CROSS_FIELDS), geoDistanceFilter("location") .distance(radius, DistanceUnit.KILOMETERS) .geoDistance(GeoDistance.PLANE) .point(latitude, longitude) ) ) ..

問題は、部分的なフレーズや単語の一部を検索しないことです..ワイルドカードを使用しても..

見つけましmatchPhraseQueryたが、1つのフィールドでしか機能しないようです..そのような検索を実装する他の方法はありますか?

0 投票する
1 に答える
583 参照

java - Websphere から Elasticsearch Java クライアントを使用する際のエラー

Elasticsearch の公式 Java クライアントを使用する Web アプリケーションがあります。IBM JVM Java 7 を使用して Websphere 8.5.5 でその Web アプリケーションを使用すると、以下のエラーが発生します。Transport Client と Node Client を使ってみました。また、Elasticsearch の JVM として Oracle JavaSE 7 および 8 を使用してみました。しかし、何もうまくいきませんでした。Elasticsearch は IBM JVM では実行されず、Websphere は IBM JVM でのみ実行されます。

Websphere上のアプリケーションからelasticsearchの公式Javaクライアントを使用する方法を知っている人はいますか?

以下は、エラー スタック トレースです。

0 投票する
1 に答える
869 参照

elasticsearch - インデックス付きフィールド内の特殊文字

クエリ文字列フィルターを使用して電子メール アドレスを検索しているときに、いくつかの興味深い動作に直面しています。

クエリとして渡すdomain.comと(インデックスにそのような値があると仮定)-結果は問題ありませんが、渡すと@domain.com結果は空になります..特殊記号に制限はありますか?

0 投票する
1 に答える
170 参照

java - Elasticsearch から必須フィールドを取得する

エラスティックサーチに以下のフィールドがあります

java apiを使用してelasticsearchからcpu_stat_sおよびmemory_stat_sフィールドを取得したいだけです。クエリフィルターを検索し、また実行しました

しかし、必須フィールドではなく、すべてのフィールドを受け取りました。

すべてのフィールドを取得してから for ループを使用し、応答からソースを取得することでこれを行うことができますが、数十億のレコードの場合は CPU 時間が増加します。私を助けることができた

0 投票する
1 に答える
1942 参照

java - Elasticsearch の Java API を使用して Groovy スクリプトを呼び出す方法

Java API を使用して Groovy スクリプトを呼び出す方法を知るためのポインタを探しています。

test.groovy

次のクエリを Java で翻訳したい:

0 投票する
0 に答える
85 参照

rest - Elastic Search インデックスの定義がオーバーライドされる

次のJavaコードを使用してエラスティック検索インデックスを作成しようとしています

customMapping.json は次のようになります

今、マッピングを作成した後、elasticsearch 驚異プラグインで次を実行すると

私は得る

これは正確です。

今、このデータを取り込もうとすると

何らかの理由で、popkDate フィールドは Date ではなく String としてインデックス付けされています。さて、もう一度見ると

今回は、

この重複したマッピングが作成されたのはなぜですか? 同じタイプの?JAVA API を使用せずに、つまり curl コマンドを使用してマッピングを作成すると、この動作は観察されず、popkDate フィールドは期待どおりにインデックス付けされることに注意してください。これはなぜですか?

お知らせ下さい。

0 投票する
1 に答える
119 参照

java - 挿入するドキュメントに応じて Elasticsearch で異なるアナライザーを使用する方法は?

私のマッピングには 4 つの文字列フィールドがあります。

  • "名前"
  • "情報"
  • "言語"
  • "ジャンル"

および 4 つのカスタム アナライザー:

  • "english_custom_analyzer"
  • "french_custom_analyzer"
  • "spanish_custom_analyzer"
  • "arab_custom_analyzer"

言語フィールドを使用してドキュメントを挿入するときに使用するアナライザーを指定できるようにしたいと考えています。したがって、言語が英語の場合はドキュメント フィールドに英語のアナライザーを使用し、言語がフランス語の場合はフランス語のアナライザーを使用します。

「language_name_analyzer」という追加フィールドを作成し、挿入時にそのフィールドにアナライザー名を入力して、アナライザー名を「language_name_analyzer」に設定しようとしました。しかし、私はこのエラーが発生します:

ありがとうございました