Hi,

I am indexing some pretty big ammount of positions in ES (like 150M ) in 
monthy based indexes (201312 , 201311 etc)

One document has a timestamp and location.

My queries are like :
Give me all positions inside this boundig box... etc

I have 2 types of indexes with exaclty the same mapping except the location 
fields.
Ex:
loc: {
  type: geo_point
}



loc: {
  tree: quadtree
  type: geo_shape
}


It seems to me that there is big difference in the speed of the queries 
agains the two types of indexes.

The index with location of type geo_shape is MUCH faster that the index 
with geo_point.
With cold caches the query with geo_point runs for aout 26 seconds , where 
the query with geo_shape runs for like 2 seconds.
Also the query with geo_point type loads huge ammount of data in field 
cache (8GB for just one month data). With geo_shape field data is much less.

The geo_shape mapping is with default precision and qudtree type.
Both queries have the same logic. 

I would like to undestand why it is much fatser with geo_shape than 
geo_point.
Can someone shade some light on this matter ?

Ofc the index with geo_shape is like 30% bigger in size.

Example query for index type geo_shape
{
  "query": {
    "bool": {
      "must": [
        {
          "range": {
            "ts": {
              "from": "2013-11-01",
              "to": "2013-12-30"
            }
          }
        },
        {
          "geo_shape": {
            "loc": {
              "shape": {
                "type": "envelope",
                "coordinates": [
                  [ 1.6754645,53.786        ],
                  [14.345234, 51.3453      ]
                ]
              }
            }
          }
        }
      ],
    }

  },
  "aggregations": {
    "agg1": {
      "terms": {
        "field": "e_id"
      }
    }
  },
  "size": 0
}


Example query for index type geo_point
{
  "query": {
    "bool": {
      "must": [
        {
          "range": {
            "ts": {
              "from": "2013-11-01",
              "to": "2013-12-30"
            }
          }
        },
        {
          "geo_bounding_box" : {
              "loc" : {
                  "top_left" : {
                      "lat" : 40.73,
                      "lon" : -74.1
                  },
                  "bottom_right" : {
                      "lat" : 40.01,
                      "lon" : -71.12
                  }
              }
            }
        }
      ],
    }
  },
  "aggregations": {
    "agg1": {
      "terms": {
        "field": "e_id"
      }
    }
  },
  "size": 0
}

-- 
You received this message because you are subscribed to the Google Groups 
"elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elasticsearch/4e721191-8164-40cf-aa3f-d882dec10cad%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to