質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Elasticsearch

Elasticsearchは、クラウド向けに構築された、RESTful な API を提供する分散型のサーチエンジンアプリケーションです。

Q&A

解決済

1回答

492閲覧

レスポンスを小さくしたい

退会済みユーザー

退会済みユーザー

総合スコア0

Elasticsearch

Elasticsearchは、クラウド向けに構築された、RESTful な API を提供する分散型のサーチエンジンアプリケーションです。

0グッド

0クリップ

投稿2019/02/01 07:46

編集2019/02/01 07:48

ES で 数千件のデータの1つのフィールドを取得したいのですが
レコード1つに対してほしいのは _source の中の数バイトなのに

`{"_index"=>"", "_type"=>"", "_id"=>"", "_score"=>0.0, "_source":""}

こういうデータがついてくるためレスポンスサイズが数倍になってしまい
took はミリ秒程度なのに実際にレスポンスをうけとるのに数十秒かかってしまいます

余計なデータを除去する方法
あるいはレスポンスサイズをなるべく小さくする方法はないでしょうか

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

Response Filteringを使うと、必要なフィールドだけ返すことができます。
https://www.elastic.co/guide/en/elasticsearch/reference/current/common-options.html#common-options-response-filtering

必要な_source以下の項目だけを指定しておけば、metaデータのfieldも返らなくなります。

使用例

POST metricbeat-6.6.0/_search?filter_path=hits.hits._source.host.os.name { "query": { "match_all": {} } }

返される結果例

json

1{ 2 "hits" : { 3 "hits" : [ 4 { 5 "_source" : { 6 "host" : { 7 "os" : { 8 "name" : "Windows 8.1 Pro" 9 } 10 } 11 } 12 }, 13 {

また、jsonの{や”の記号部分すらも削りたい、ということであれば、SQL queryでフォーマットをCSVに指定するなどが考えられそうです。

https://www.elastic.co/products/stack/elasticsearch-sql

POST _xpack/sql?format=csv { "query": "SELECT host.os.name FROM \"metricbeat-6.6.0\" LIMIT 10" }

とすると、こうなります。

csv

1host.os.name 2Windows 8.1 Pro 3Windows 8.1 Pro 4Windows 8.1 Pro 5Windows 8.1 Pro 6Windows 8.1 Pro 7Windows 8.1 Pro 8Windows 8.1 Pro 9Windows 8.1 Pro 10Windows 8.1 Pro 11Windows 8.1 Pro

投稿2019/02/02 13:20

tsgkdt

総合スコア83

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2019/02/03 11:03

無理だと思ってたので別のデータベースにしようかと考えていたんですが ちゃんと必要な機能はあるのですね 調べ方が足りませんでした 本当にありがとうございます
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問