03.- Elasticsearch crear documento (insert) desde terminal [Tutorial en Español ??]

Crear un documento con un ID especifico

Ya que tenemos  nuestro index (base de datos) creada ahora vamos a insertar un nuevo documento (inserttar registro) para eso vamos a usar el siguiente comando:

curl -X PUT "localhost:9200/customer/_doc/1?pretty" -H 'Content-Type: application/json' -d'
{
  "name": "John Doe"
}
'

PUT=Indicamos que vamos a mandar datos
customer=Nombre del Index (base de datos)
_doc=Le decimos al sistema que se va a crear un documento (registro)
1=Valor del Id qe le vamos a asignar
pretty=que nos de una respuesta entendible
“name”=Nombre del campo (No hay necesidad de definirlo previamente)
“John Doe”=Valor asignado al campo name

Nos debe arrojar una respuesta asi:

{
  "_index" : "customer",
  "_type" : "_doc",
  "_id" : "1",
  "_version" : 1,
  "found" : true,
  "_source" : {
    "name" : "John Doe"
  }
}
“_id”=Campo id
“1”=Valor del campo id

Ahora buscaremos en el index (bd) este documento (registro) que acabamos de ingresar:

curl -X GET "localhost:9200/customer/_doc/1?pretty"

GET=Indicamos que vamos a pedir datos
customer=Nombre del Index (base de datos)
_doc=Le decimos al sistema que se va a leer de un documento (registro)
1=El  valor del id que vamos a consultar

Crear un documento con un ID autogenerado

Este query es similar al primero pero aqui no le estamos dando ningun ID por lo que el mismo elasticsearch genera un ID
curl -X POST "localhost:9200/customer/_doc?pretty" -H 'Content-Type: application/json' -d'
{
  "name": "Otro nombre"
}
'
POST=Indicamos que vamos a mandar datos
customer=Nombre del Index (base de datos)
_doc=Le decimos al sistema que se va a crear un documento (registro)
pretty=que nos de una respuesta entendible
“name”=Nombre del campo (No hay necesidad de definirlo previamente)
“Otro nombre”=Valor asignado al campo name
Nos debe arrojar una respuesta asi:

{
  "_index" : "customer",
  "_type" : "_doc",
  "_id" : "acV862YBRRgUiGaZ24aW",
  "_version" : 1,
  "result" : "created",
  "_shards" : {
    "total" : 2,
    "successful" : 1,
    "failed" : 0
  },
  "_seq_no" : 0,
  "_primary_term" : 1
}

“_id”=Campo id que si no se define se crea automaticamente
“acV862YBRRgUiGaZ24aW”=Valor del campo id
Para ver todos los registros que hemos insertado podemos abrir esta url:
http://localhost:9200/customer/_search?pretty=true&q=name:*
customer=Nombre index (bd)
name:*=Consulta que pide todos los nombres

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *