elasticsearch - 使用 Jaro-Winkler & Levenstein 算法的 ElasticSearch
问题描述
我正在尝试使用 ElasticSearch 作为数据存储来通过他们的名字找到一些人。我尝试创建索引,添加单词,更改映射,但是当我尝试使用 JaroWinkler & Levenstein 算法按姓名查找人员时,它什么也没有返回。
步骤 1放置:http : //127.0.0.1 :9200/list
{
"mappings": {
"main": {
"properties": {
"ppl_name": {
"type": "text"
}
}
}
}
}
有答案
{
"acknowledged": true,
"shards_acknowledged": true,
"index": "list"
}
第2步
发布/放置http://127.0.0.1:9200/list/main/1
{"ppl_name":"oleksandroleksandrovychborysenko"}
{"ppl_name":"oleksandr oleksandrovych borysenko"}
有答案
{
"_index": "list",
"_type": "main",
"_id": "2",
"_version": 1,
"result": "created",
"_shards": {
"total": 2,
"successful": 1,
"failed": 0
},
"created": true
}
第 3 步 获取http://127.0.0.1:9200/list/_mapping 答案:
{
"list": {
"mappings": {
"main": {
"properties": {
"ppl_name": {
"type": "text"
}
}
}
}
}
}
第 4 步
发布http://127.0.0.1:9200/list/main/_search
有身体
{
"suggest": {
"text" : "oleksandr oleksandrovych borysenko",
"levenstein" : {
"term" : {
"string_distance": "levenstein",
"field" : "ppl_name"
}
},
"jarowinkler" : {
"term" : {
"string_distance": "jarowinkler",
"field" : "ppl_name"
}
}
}
}
和回答
{
"took": 28,
"timed_out": false,
"_shards": {
"total": 5,
"successful": 5,
"skipped": 0,
"failed": 0
},
"hits": {
"total": 0,
"max_score": 0,
"hits": []
},
"suggest": {
"jarowinkler": [
{
"text": "oleksandr",
"offset": 0,
"length": 9,
"options": []
},
{
"text": "oleksandrovych",
"offset": 10,
"length": 14,
"options": []
},
{
"text": "borysenko",
"offset": 25,
"length": 9,
"options": []
}
],
"levenstein": [
{
"text": "oleksandr",
"offset": 0,
"length": 9,
"options": []
},
{
"text": "oleksandrovych",
"offset": 10,
"length": 14,
"options": []
},
{
"text": "borysenko",
"offset": 25,
"length": 9,
"options": []
}
]
}
}
任何人都可以帮助我解决这种情况吗?
解决方案
推荐阅读
- javascript - 如何直接从数组创建 JS Blob?
- keras - 准确率:精度:召回率:0.9020 始终相同
- emacs - 如何使用条形光标进行选择与在浏览器中相同
- python - 使用 opencv 在 face_recognition 中写入新图像
- matlab - 将矩阵中的日常数据存储在另一个矩阵八度/ matlab中
- java - 如何将 sigar api 安装到 java maven corretto 程序
- c# - 在没有 DependencyProperty 失败的情况下无法从 db 填充集合
- vagrantfile - 为什么我的磁盘没有出现在 vagrant VM 中?
- vue.js - 如何将 CDN 样式表链接导入 Cypress 组件测试运行程序
- python - 将参数添加到多标题