如何使用 elasticsearch 创建通用搜索引擎?
How to create generic search engine using elasticsearch?
我们正在为医学界创建搜索引擎,它可以从 mongoDB 中提取记录。数据库有来自不同医学界的记录,如医生、实验员、病理学家、专家等。我们想根据姓名、地点、设备、距离时间(如果我们有位置)来提取结果。
我们使用 Elasticsearch 作为搜索引擎。
更新:
我认为这不是具体的回答。我按照 Dennis Ich 的指示浏览了文档。我已经根据要求使用完成了搜索索引
自动建议、过滤器 - ngram、模糊...
我遇到了突出显示选项的问题。这是我的代码:
Blockquote
curl -XGET http://localhost:9200/hospital/hospitals/_search?pretty -d '{
"query" : {
"fuzzy" : {
"_all" : "orthopadic"
}
},
"highlight": {
"fields" : {
"*" : {
"pre_tags" : ["<p>"],
"post_tags" : ["</p>"],
"fragment_size" : 18
}
}
}
}'
输出:
Blockquote
{
"took" : 459,
"timed_out" : false,
"_shards" : {
"total" : 5,
"successful" : 5,
"failed" : 0
},
"hits" : {
"total" : 64,
"max_score" : 1.8097699,
"hits" : [ {
"_index" : "hospital",
"_type" : "hospitals",
"_id" : "105",
"_score" : 1.8097699,
"_source" : {
"reviews" : "283",
"name" : "Sohandas Udbalker M Vzsuoxhmkvfgijxzzjh",
"specialization" : "Orthopaedic",
"recommendation" : "146",
"seniority" : "24",
"likes" : "218",
"online_participation" : "58",
"online_booking" : "810",
"tracking_system" : "60",
"follow_up" : "53",
"consultation_point" : "52",
"online_prescription" : "29",
"patient_count" : "61",
"health_expense" : "94",
"location" : "bangalore"
},
"highlight" : {
"_all" : [ "Vzsuoxhmkvfgijxzzjh <p>Orthopaedic</p> 146" ]
}
我想突出显示特定字段。取的是分片号,具体字段怎么高亮
要创建通用搜索引擎,您必须满足以下要求
1)全文搜索——不仅 return 包含确切关键字的文档的能力。
2)集群——将数据分布在不同的节点上。
3)水平可扩展性——通过添加更多节点来增加集群容量的能力。
4)自动完成
我们正在为医学界创建搜索引擎,它可以从 mongoDB 中提取记录。数据库有来自不同医学界的记录,如医生、实验员、病理学家、专家等。我们想根据姓名、地点、设备、距离时间(如果我们有位置)来提取结果。 我们使用 Elasticsearch 作为搜索引擎。
更新: 我认为这不是具体的回答。我按照 Dennis Ich 的指示浏览了文档。我已经根据要求使用完成了搜索索引 自动建议、过滤器 - ngram、模糊...
我遇到了突出显示选项的问题。这是我的代码:
Blockquote
curl -XGET http://localhost:9200/hospital/hospitals/_search?pretty -d '{
"query" : {
"fuzzy" : {
"_all" : "orthopadic"
}
},
"highlight": {
"fields" : {
"*" : {
"pre_tags" : ["<p>"],
"post_tags" : ["</p>"],
"fragment_size" : 18
}
}
}
}'
输出:
Blockquote
{
"took" : 459,
"timed_out" : false,
"_shards" : {
"total" : 5,
"successful" : 5,
"failed" : 0
},
"hits" : {
"total" : 64,
"max_score" : 1.8097699,
"hits" : [ {
"_index" : "hospital",
"_type" : "hospitals",
"_id" : "105",
"_score" : 1.8097699,
"_source" : {
"reviews" : "283",
"name" : "Sohandas Udbalker M Vzsuoxhmkvfgijxzzjh",
"specialization" : "Orthopaedic",
"recommendation" : "146",
"seniority" : "24",
"likes" : "218",
"online_participation" : "58",
"online_booking" : "810",
"tracking_system" : "60",
"follow_up" : "53",
"consultation_point" : "52",
"online_prescription" : "29",
"patient_count" : "61",
"health_expense" : "94",
"location" : "bangalore"
},
"highlight" : {
"_all" : [ "Vzsuoxhmkvfgijxzzjh <p>Orthopaedic</p> 146" ]
}
我想突出显示特定字段。取的是分片号,具体字段怎么高亮
要创建通用搜索引擎,您必须满足以下要求 1)全文搜索——不仅 return 包含确切关键字的文档的能力。 2)集群——将数据分布在不同的节点上。 3)水平可扩展性——通过添加更多节点来增加集群容量的能力。 4)自动完成