API tạo dữ liệu – Insert, thêm dữ liệu vào Elasticsearch

API tạo dữ liệu – Insert, thêm dữ liệu vào Elasticsearch

(Xem thêm: Hướng dẫn Elasticsearch)

Trong các ví dụ API Elasticsearch, mình sẽ dùng postman để gửi request

API tạo document Elasticsearch.

Có 2 cách để tạo document trong Elasticsearch:

Cách 1: Dùng API POST

POST /index_name/type_name/id
{
   "field" : "value"
}

Trong đó:

  • index_nametype_name là tên của Index và tên của Type, nếu chưa tồn tại thì sẽ được tự động tạo
  • id là id của document được tạo, nếu không truyền id thì nó sẽ tự động tạo ra 1 chuỗi để làm id.

(Xem lại: Các khái niệm trong Elasticsearch)

Ví dụ insert 1 document vào type player của index stackjava

API tạo dữ liệu - Insert, thêm dữ liệu vào Elasticsearch

Trường hợp mình không truyền id thì id của document mới sẽ được tự động tạo ra.

API tạo dữ liệu - Insert, thêm dữ liệu vào Elasticsearch

Trường hợp index, type và id truyền vào đã tồn tại thì nó sẽ tương đương với câu lệnh update.

Ví dụ:

Trường hợp index, type và id truyền vào đã tồn tại thì nó sẽ tương đương với câu lệnh update.

Cách 2: Dùng API PUT

Dùng method PUT với tham số op_type=create

PUT /index_name/type_name/id?op_type=create
{ ... }

Hoặc:

PUT /index_name/type_name/id/create
{ ... }

Tuy nhiên với cách này, nếu bộ  index_name, type_name và id đã tồn tại thì nó sẽ báo lỗi

document_already_exists_exception

 

Okay, Done!

 

References:

https://www.elastic.co/guide/…/create-doc.html

stackjava.com