ElasticSearch

De Ardemans Wiki
Revisión a fecha de 11:24 30 jul 2014; Pmblanco (Discusión | contribuciones)

(dif) ← Revisión anterior | Revisión actual (dif) | Revisión siguiente → (dif)
Saltar a: navegación, buscar

Algunos apuntes sobre ElasticSearch

Insertar elementos

Hay muchas formas de insertar elementos en los indices de ElasticSearch. El siguiente ejemplo indexa datos con un ID aleatorio

curl -XPOST http://192.168.5.51:9200/testindex/testtype/ -d '
{
  "name" : "Un ejemplo",
  "begin_of_process" : "20-12-2014 23:59:00",
  "description" : "Un elemento de prueba"
}'

Si quisiéramos asignarle un ID propio podríamos añadirselo a continuación de la URL, después del testtype

Templates

Los templates se aplican a la hora de crear un índice. En estos templates van los datos de que carácterísticas va a tener el ínidice, como el numero de shards que vamos a usar, el índice de replica de esos shards, y también cosas como el mapeo de campos y tipos de datos

Un ejemplo de como se insertaría un template

curl -XPUT http://192.168.5.51:9200/_template/playser -d '
{
  "template" : "*",
  "settings" : {
    "analysis" : {
	   "analyzer" : {

   "mappings" : {
    "_default_" : {
      "properties" : {
        "begin_of_process" : {
          "index"  : "not_analyzed",
          "type"   : "date",
          "format" : "dd-MM-yyyy HH:mm:ss"
        },
        "end_of_process" : {
          "index"  : "not_analyzed",
          "type"   : "date",
          "format" : "dd-MM-yyyy HH:mm:ss"
        },
        "name" : {
          "index"  : "analyzed",
          "type"   : "string"
        },
        "description" : { 
          "index"  : "analyzed",
          "type"   : "string"
        }
      }
    } 
  }
}'


Busqueda con rango de fecha

curl -XGET http://192.168.5.51:9200/testindex/_search?pretty -d '
{
  "query" : {
    "range" : {
      "begin_of_process" : {
        "gte" : "19-12-2014 22:00:00"
      }
    }
  }
}'