1. Introducción
Introduzca principalmente la operación API básica de la solicitud de índice, use cartero para solicitar, la dirección de prefijo de la solicitud de interfaz se unifica como dirección IP de implementación de búsqueda elástica + número de puerto (por ejemplo, http://192.168.51.4:9200. A continuación se proporciona el Exportación JSON de dirección de interfaz para el archivo de prueba del cartero:
Dirección de descarga de colección de interfaz de cartero https://download.csdn.net/download/qq_15769939/15492332
2 Operaciones básicas de documentos
Primero, cree un índice (doc_api_demo) para probar la API del documento.
2.1 Crear un documento
Método de solicitud | dirección de interfaz | Observaciones |
---|---|---|
CORREO | / doc_api_demo / _doc / 1 | doc_api_demo: Nombre del índice 1: ID del índice en ES |
传递的JSON参数
{
"id": 1001,
"name": "auskat-1",
"desc": "tic is a good man 1",
"create_date": "2019-12-24"
}
{
"id": 1002,
"name": "auskat-2",
"desc": "tic 是个好人",
"create_date": "2019-12-25"
}
{
"id": 1003,
"name": "auskat-3",
"desc": "tic 要成为一个好人",
"create_date": "2020-12-26"
}
{
"id": 1004,
"name": "auskat-5",
"desc": "tic 真是一个好人",
"create_date": "2020-12-27"
}
请求结果
{
"_index": "doc_api_demo",
"_type": "_doc",
"_id": "1",
"_version": 1,
"result": "created",
"_shards": {
"total": 1,
"successful": 1,
"failed": 0
},
"_seq_no": 0,
"_primary_term": 1
}
Este atributo de ID no es el ID de este registro, sino el ID de este registro de índice. Si no se establece, se generará un ID de cadena único de forma predeterminada. En el uso real, generalmente es consistente con la identificación única de los datos.
- Si el índice no crea asignaciones manualmente, al insertar los datos del documento, el tipo de atributo se establecerá automáticamente de acuerdo con el tipo de documento. Este es el mapeo dinámico de es, que nos ayuda a establecer la información de configuración relevante de la estructura de datos en la biblioteca de índices.
- "Fileds": {"type": "keyword"} Establezca varios modos de índice para un campo, use el tipo de texto para la búsqueda de texto completo y el tipo de palabra clave para la agregación y la clasificación.
- "Ignore_above": 256 establece la longitud máxima del índice de campo y el almacenamiento, si excede, será ignorado.
2.2 Modificación de documentos
2.2.1 Modificación parcial
Método de solicitud | dirección de interfaz | Observaciones |
---|---|---|
CORREO | /doc_api_demo/_doc/1004/_update |
doc_api_demo: Nombre del índice 1004: ID del índice |
传递JSON数据
{
"doc": {
"name": "我是tic 我要单独改名为 ttd"
}
}
请求结果
{
"_index": "doc_api_demo",
"_type": "_doc",
"_id": "1004",
"_version": 3,
"result": "updated",
"_shards": {
"total": 1,
"successful": 1,
"failed": 0
},
"_seq_no": 6,
"_primary_term": 1
}
2.2.2 Reemplazo completo
Método de solicitud | dirección de interfaz | Observaciones |
---|---|---|
PONER | / doc_api_demo / _doc / 1004 | doc_api_demo: Nombre del índice 1004: ID del índice |
传递JSON数据
{
"id": 1004,
"name": "tic tic tic",
"desc": "tic 真的要变成一个好人了",
"create_date": "2020-12-28"
}
请求结果
{
"_index": "doc_api_demo",
"_type": "_doc",
"_id": "1004",
"_version": 4,
"result": "updated",
"_shards": {
"total": 1,
"successful": 1,
"failed": 0
},
"_seq_no": 7,
"_primary_term": 1
}
_version representa el número de versión del documento y se producirán cambios acumulativos si no se modifica una vez.
2.3 Consulta de documentos
2.3.1 Consulta de documento único
Método de solicitud | dirección de interfaz | Observaciones |
---|---|---|
OBTENER | / doc_api_demo / _doc / 1004 | doc_api_demo: Nombre del índice 1004: ID del índice |
请求结果
{
"_index": "doc_api_demo",
"_type": "_doc",
"_id": "1004",
"_version": 4,
"_seq_no": 7,
"_primary_term": 1,
"found": true,
"_source": {
"id": 1004,
"name": "tic tic tic",
"desc": "tic 真的要变成一个好人了",
"create_date": "2020-12-28"
}
}
2.3.2 Consultar datos completos del documento
Método de solicitud | dirección de interfaz | Observaciones |
---|---|---|
OBTENER | /doc_api_demo/_doc/_search |
doc_api_demo: Nombre del índice 1004: ID del índice |
请求结果
{
"took": 7,
"timed_out": false,
"_shards": {
"total": 1,
"successful": 1,
"skipped": 0,
"failed": 0
},
"hits": {
"total": {
"value": 4,
"relation": "eq"
},
"max_score": 1.0,
"hits": [
{
"_index": "my_doc",
"_type": "_doc",
"_id": "2",
"_score": 1.0,
"_source": {
"doc": {
"name": "我是阿苏卡DDD"
},
"name": "我是阿苏卡CC"
}
},
{
"_index": "my_doc",
"_type": "_doc",
"_id": "okcQzncBZX7VGcys4RIc",
"_score": 1.0,
"_source": {
"id": 1009,
"name": "auskat-1",
"desc": "tic is a good man 1",
"create_date": "2019-12-24"
}
},
{
"_index": "my_doc",
"_type": "_doc",
"_id": "3",
"_score": 1.0,
"_source": {
"id": 1003,
"name": "auskat-3",
"desc": "tic is a good man 3",
"create_date": "2019-12-24"
}
},
{
"_index": "my_doc",
"_type": "_doc",
"_id": "6",
"_score": 1.0,
"_source": {
"name": "auskat-8",
"desc": "tic is a good man 8",
"create_date": "2019-12-24"
}
}
]
}
}
2.3.3 Especifique el campo a consultar
Método de solicitud | dirección de interfaz | Observaciones |
---|---|---|
OBTENER | / doc_api_demo / _doc / 1004? _source = id, nombre | doc_api_demo: Nombre del índice 1004: ID del índice |
OBTENER | /doc_api_demo/_doc/_search?_source=id,name |
doc_api_demo: nombre de índice |
请求结果
{
"took": 7,
"timed_out": false,
"_shards": {
"total": 1,
"successful": 1,
"skipped": 0,
"failed": 0
},
"hits": {
"total": {
"value": 4,
"relation": "eq"
},
"max_score": 1.0,
"hits": [
{
"_index": "my_doc",
"_type": "_doc",
"_id": "2",
"_score": 1.0,
"_source": {
"name": "我是阿苏卡CC"
}
},
{
"_index": "my_doc",
"_type": "_doc",
"_id": "okcQzncBZX7VGcys4RIc",
"_score": 1.0,
"_source": {
"name": "auskat-1",
"id": 1009
}
},
{
"_index": "my_doc",
"_type": "_doc",
"_id": "3",
"_score": 1.0,
"_source": {
"name": "auskat-3",
"id": 1003
}
},
{
"_index": "my_doc",
"_type": "_doc",
"_id": "6",
"_score": 1.0,
"_source": {
"name": "auskat-8"
}
}
]
}
}
_index
: El índice al que pertenecen los datos del documento puede entenderse como una tabla en la base de datos._type
: A qué tipo de datos del documento pertenecen y la nueva versión usa __doc
_id
: El identificador único de los datos del documento, similar a la clave principal de la base de datos. Puede generarse automáticamente o especificarse manualmente_score
: Relevancia de la consulta, ya sea que se ajuste a la coincidencia del usuario, cuanto mayor sea la puntuación, mayor será la experiencia de búsqueda del usuario._version
:número de versión_source
: Datos del documento, formato JSON
2.3.4 Determinar si el documento existe
Método de solicitud | dirección de interfaz | Observaciones |
---|---|---|
CABEZA | / doc_api_demo / _doc / 1004 | doc_api_demo: Nombre del índice 1004: ID del índice |
请求结果
{
"_index": "doc_api_demo",
"_type": "_doc",
"_id": "1004",
"_version": 4,
"_seq_no": 7,
"_primary_term": 1,
"found": true,
"_source": {
"id": 1004,
"name": "tic tic tic",
"desc": "tic 真的要变成一个好人了",
"create_date": "2020-12-28"
}
}
2.4 Eliminación de documentos
Método de solicitud | dirección de interfaz | Observaciones |
---|---|---|
ELIMINAR | / index_api_demo / 1004 | doc_api_demo: Nombre del índice 1004: ID del índice |
返回结果
{
"_index": "doc_api_demo",
"_type": "_doc",
"_id": "4",
"_version": 2,
"result": "deleted",
"_shards": {
"total": 1,
"successful": 1,
"failed": 0
},
"_seq_no": 4,
"_primary_term": 1
}
La eliminación de documentos no se elimina de inmediato. Los documentos aún se almacenan en el disco. El índice crece cada vez más y solo se limpiarán y eliminarán del disco aquellos que se hayan marcado para su eliminación.
3 Información relacionada
- La publicación del blog no es fácil, todos los que han trabajado tan duro para prestar atención y elogios, gracias.