2017-09-04 5 views
6

クエリは整数配列データ型にどのくらい複雑になりますか?ここでのpythonでの私のクラスはelasticsearchにデータを注入することである:私は、キャプチャの整数の配列を注入していますpython_dslを使用してelasticsearchで配列データ型を照会

class Paragraph(DocType): 
    body = Text(analyzer="standard") 
    published_from = Date() 
    lines = Integer() 
    n_paragraph = Integer() 
    capture = Integer() 

    class Meta: 
     index = "my_index" 

    def save(self, **kwargs): 
     self.lines = len(self.body.split()) 
     return super(Paragraph, self).save(**kwargs) 

。ここで興味深いの行は次のようになります。

paragraph.capture = [1, 0, 5, 7] 
  1. 私は数がリストにある場合に照会する管理:: cnx = Search().using(client) s = cnx.query("match", capture=5)

  2. @valたちはクエリに合計が含まれている別のフィールドを追加することができます言ったように和

特定のインデックスを照会する方法paragraph.capture[1] >= 1

我々は、Elasticsearch query on array indexが関連しているのを見ましたが、私はリンクを作ることができませんでした。

答えて

1

合計を照会する最善の方法は、検索時に高価なscriptクエリを実行する必要がないように、それを含む別のフィールドを追加することです。

captureフィールドの通常のrangeクエリで、少なくとも1つの数値が4よりも優れているかどうかを問い合わせることができます。

関連する問題