我们希望创建一个通用服务,可以对ElasticSearch进行新增、修改、删除、查询、高亮显示关键字等通用ES服务操作。
我们还希望能将系统中的附件文件内容保存到ES中进行全文检索。
1、通过Postman新增ES索引数据,增加索引名叫“tablename”的索引,其中包含三个字段:id:1,field1:字段1的值,field2:字段2的值;字段可以随意设置,任意字段都可以
{
"type": "insert",
"params": {
"data": {
"field1": "字段1的值",
"field2": "字段2的值",
"id": 1
},
"index": "tablename",
"id": "1"
}
}
2、增加ES数据后,通过ES的前端界面查询,查看数据是否已经添加
3、通过Postman修改ES索引数据,在索引名叫“tablename”中修改id为1的数据结果,修改后的数据包含四个字段:id:1,field1:字段1修改后的值,field2:字段2修改后的值,field3:新增的字段;字段可以随意设置,任意字段都可以
{
"type": "update",
"params": {
"data": {
"field1": "字段1修改后的值",
"field2": "字段2修改后的值",
"field3": "新增加的字段3的值",
"id": 1
},
"index": "tablename",
"id": "1"
}
}
4、修改ES数据后,通过ES的前端界面查询,查看数据是否已经修改
5、通过Postman删除ES索引数据,在索引名叫“tablename”中删除id为1的数据
{
"type": "delete",
"params": {
"index": "tablename",
"id": "1"
}
}
6、删除ES数据后,通过ES的前端界面查询,查看数据是否已经删除
7、创建一张定时任务扫描表S_ESDATA
序号 | 字段名 | 字段说明 | 类型 | 长度 |
1 | UUID | 主键 | varchar | 32 |
2 | RESOURCE_TABLE | 数据表名称 | varchar | 500 |
3 | RESOURCE_ID | 数据表记录ID | varchar | 500 |
4 | RESOURCE_ATTACH_TABLE | 数据表关联附件表名称 | varchar | 500 |
5 | RESOURCE_ATTACH_FIELD | 数据表关联附件表字段(哪个字段与数据主表的UUID关联) | varchar | 500 |
6 | OPERATE_TYPE | 操作类型(I:新增,U:修改,D:删除) | char | 1 |
7 | STATUS | 是否已处理(0:未处理,1:已处理) | char | 1 |
8 | ATTACH_NAME | 附件表中附件名称字段名(哪个字段表示附件名称) | varchar | 500 |
9 | ATTACH_PATH | 附件表中附件地址字段名(哪个字段表示附件存储地址) | varchar | 500 |
10 | CREATE_TIME | 创建时间(按时间顺序向ES处理数据) | timestamp |
8、通过定时任务每30秒扫描表S_ESDATA,将未处理的数据主表和附件表对应的附件的内容保存到ES数据中
9、保存到ES的数据中,索引名称为数据主表的名称,字段包括数据主表中的所有字段,以及附件相关的字段:attach_name(附件名称),attach_path(附件保存地址),file_content(附件内容)
10、只要将系统中的数据主表、附件表、UUID等信息插入S_ESDATA中,30秒钟后,数据内容和附件的文字内容就会保存到ES中
11、通过Postman检索ES索引数据,查询条件可以包含如下:
序号 | 参数名 | 参数说明 | 包含值 | 备注 |
1 | es_index | 索引名称 | ES中索引名称 | |
2 | es_id | 索引中id | ES中索引ID | |
3 | es_page | 分页参数 | 包含pagesize和pagenum | |
4 | es_includefields | 返回结果包含哪些字段 | 多个字段之间使用英文逗号分隔 | |
5 | es_excludefields | 返回结果不包含哪些字段 | 多个字段之间使用英文逗号分隔 | |
6 | es_sort | 排序参数 | 包含字段名,排序顺序为键值对的Map对象 | |
7 | es_highligh | 高亮显示字段 | 多个字段之间使用英文逗号分隔 | |
8 | ... ... | 其他字段参数 | 非es_开头 字段名,模糊查询值为键值对 |
{
"type":"search",
"params": {
"es_index": "css_gy_ywpt_resource",
"es_page": {
"pagesize": 20,
"pagenum": 1
},
"es_sort": {
"uuid": "asc"
}
}
}
{
"type":"search",
"params": {
"es_index": "css_gy_ywpt_resource",
"file_content": "中秋",
"es_page": {
"pagesize": 20,
"pagenum": 1
},
"es_sort": {
"uuid": "asc"
}
}
}
{
"type":"search",
"params": {
"es_index": "css_gy_ywpt_resource",
"es_highligh": "file_content",
"file_content": "中秋",
"es_page": {
"pagesize": 20,
"pagenum": 1
},
"es_sort": {
"uuid": "asc"
}
}
}
感谢大家关注,欢迎大家转发!!感谢大家评论,欢迎大家转发!!感谢大家点赞,欢迎大家转发!!