elasticsearch 自定义similarity 插件开发
转自:http://www.chepoo.com/elasticsearch-similarity-custom-plug-in-development.html
在搜索开发中,我们要修改打分机制,就需要自定义similarity。现在来简单说一下elasticsearch下的自定义similarity 插件开发。
网上的https://github.com/tlrx/elasticsearch-custom-similarity-provider仅仅支持0.20.0.Beta1-SNAPSHOT版本,现在我们用的版本是elasticsearch 0.90版本以上。那个例子现在不能用,我修改了一下。
1.继承DefaultSimilarity,实现自己的搜索打分机制。
| package org.elasticsearch.index.similarity; import org.apache.lucene.search.similarities.DefaultSimilarity; /** | 
2.继续AbstractSimilarityProvider,把自定义的打分机制类加载到elasticsearch中。
| package org.elasticsearch.index.similarity; import org.elasticsearch.common.inject.Inject; | 
3.继承AbstractPlugin作为elasticsearch插件使用
| public class CustomerSimilarityPlugin extends AbstractPlugin {
    @Override public String name() { | 
4.使用
| curl -XPOST 'http://host:port/tweeter/' -d ' | 
在创建mapping的使用自定义的打分规则:
| { | 
在elasticsearch.yml中配置自定义的打分规则类为默认规则。 index.similarity.default.type: my_similarity
相关程序已经放在https://github.com/awnuxkjy/es-custom-similarity-provider,有兴趣的朋友可以参考一下。
把程序打成jar包放在elasticsearch 的plugins 下的 similarity 目录下即可 参考文章: http://www.elasticsearch.org/guide/reference/index-modules/similarity/
elasticsearch 自定义similarity 插件开发的更多相关文章
- elasticsearch 自定义_id
		elasticsearch 自定义ID: curl -s -XPUT localhost:9200/web -d ' { "mappings": { "blog" ... 
- JMeter自定义采样器插件开发
		JMeter自定义采样器插件开发 目录 JMeter自定义采样器插件开发 1. 简介 2. 需求简介 3.成品展示 成功展示 失败展示 4. 准备开发环境 4.1 准备pom文件 4.2 新建Java ... 
- Elasticsearch 自定义多个分析器
		分析器(Analyzer) Elasticsearch 无论是内置分析器还是自定义分析器,都由三部分组成:字符过滤器(Character Filters).分词器(Tokenizer).词元过滤器(T ... 
- Elasticsearch 自定义映射
		尽管在很多情况下基本域数据类型 已经够用,但你经常需要为单独域自定义映射 ,特别是字符串域.自定义映射允许你执行下面的操作: 全文字符串域和精确值字符串域的区别 使用特定语言分析器 优化域以适应部分匹 ... 
- ElasticSearch自定义分析器-集成结巴分词插件
		关于结巴分词 ElasticSearch 插件: https://github.com/huaban/elasticsearch-analysis-jieba 该插件由huaban开发.支持Elast ... 
- Elasticsearch自定义分析器
		关于分析器 ES中默认使用的是标准分析器(standard analyzer).如果需要对某个字段使用其他分析器,可以在映射中该字段下说明.例如: PUT /my_index { "mapp ... 
- elasticsearch自定义动态映射
		https://www.elastic.co/guide/cn/elasticsearch/guide/current/custom-dynamic-mapping.html如果你想在运行时增加新的字 ... 
- ElasticSearch——自定义模板
		output中配置 elasticsearch{ action => "index" hosts => ["xxx"] index => &q ... 
- ElasticSearch 自定义排序处理
		使用function_score进行分组处理,利用分组函数script_score进行自定义分值处理, 注意:使用script功能需要在配置中打开脚本功能: script.inline: on s ... 
随机推荐
- 纯css3加载动画
			<!DOCTYPE html><html> <head> <meta charset="utf-8"> <meta name= ... 
- (2.15)Mysql之SQL基础——开发设计最佳规范
			(2.15)Mysql之SQL基础——开发设计最佳规范 关键字:mysql三大范式,mysql sql开发规范 分析: show profile.mysqllsla.mysqldrmpslow.exp ... 
- Python---1. 基础数据类型
			转载: Py西游攻关之基础数据类型 
- 2006 - MySQL server has gone away
			mysql出现ERROR : (2006, 'MySQL server has gone away') 的问题意思就是指client和MySQL server之间的链接断开了. 造成这样的原因一般是s ... 
- [转]AJAX 跨源 HTTP 请求
			转自OSChina, 原文: http://www.oschina.net/translate/ajax-cross-origin-http-request 背景 跨源HTTP请求(也称跨域AJAX请 ... 
- (28)Cocos2d-x xml解析
			Cocos2d-x 已经加入了tinyxml2用于xml的解析.3.0版本位于external/tinyxml2下.2.x版本位于cocos2dx/support/tinyxml2下. tinyxml ... 
- hdu5091 线段树
			题意: 给了n个点在平面中 n<10000 然后 将这给了一个 宽为W 高为 H 的 矩形, 然后 使得这个矩形可以 涵盖最多的点有多少个,然后矩形的宽平行x 轴高平行y轴.可以将该矩形 水平 ... 
- cocos2dx 3.x 拼图小游戏
			.h #define IMAGE_MAX 2 //图片的个数.. //图片结构体 属性 struct IMAGE_DATA { cocos2d::Sprite *m_pImage; bool m_bO ... 
- React 函数传参
			import React, { Component } from 'react'; import { render } from 'react-dom'; class GroceryList exte ... 
- 20145118 《Java程序设计》  实验报告一
			实验一 JAVA开发环境的熟悉(LINUX + ECLIPSE) 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑.编译.运行.调试Java程序. 3.统计自己的P ... 
