我需要/想要在全局定义我的自定义分析器。因此,我根据以下答案编辑了ES的配置文件(elasticsearch.yml):是否可以自定义ElasticSearch以使用自己的停用词列表?相关条目是
index.analysis.analyzer.angram:
type: custom
tokenizer: standard
filter: standard, lowercase, fngram
index.analysis.filter.fngram:
type: nGram
min_gram: 2
max_gram: 10
但是当我尝试调用时,curl -XGET 'localhost:9200/_analyze?analyzer=angram' -d 'this is a test'
我得到了一个ElasticSearchIllegalARgumentException[failed to find analyzer [angram]]
。
配置错误吗?(尽管我希望在启动过程中读取配置时遇到错误时,ES无法启动)
如何正确定义全局分析器?
编辑: 我正在使用版本0.90.0
问题出在curl
语句中的URL
。归功于Ivan(https://groups.google.com/forum/#!topic/elasticsearch/5XlUoghKURg)
我引用了他在小组中的回答:
您不能使用自定义分析器,直到索引对其进行了引用。您将需要创建一个使用分析器的映射,然后在分析器调用中使用该索引。无需将任何文档索引到该索引。
curl -XGET 'localhost:9200/SOMEINDEX/_analyze?analyzer=angram'
A-Frame通过window.AFRAME浏览器全局变量来暴露其公共接口。 (require('aframe')). AFRAME属性 属性(Property) 描述 AComponent 组件(Component)原型。 AEntity 实体(Entity)原型。 ANode A-Frame元素继承的基础节点原型。 AScene 场景(Scene)原型。 components 已注册的组件对象
在Angular 1. x中,您可以这样定义常量: Angular(使用TypeScript)中的等价物是什么? 我只是不想在我的所有服务中一遍又一遍地重复API基url。
我正在制作一个Preact SSR应用程序,使用rollup进行捆绑,并使用buble进行ES2015转换。 将当前的客户端代码绑定到其中一个WebSockets中。目前,由于绑定使用的是节点,因此未定义该节点,导致生成错误: 请记住,我来自Webpack和babel环境。使用这些工具时,我会有一个插件来定义将出现在输出中但不在Node中的内容。如何使用rollup/buble做到这一点? 我当前
问题内容: 根据AngularJS的教程,控制器功能只是位于全局范围内。 http://docs.angularjs.org/tutorial/step_04 控制器功能本身是自动解析为封装范围还是驻留在全局范围内?我知道他们已经传递了对自己的$ scope的引用,但是看来函数本身只是位于全局范围内。显然,这可能会带来很多问题,而且我已经通过经验和教育学到了封装的方法。此外,如果它们确实存在于全球
问题内容: 在我的代码中,我有: 然后,编译器将说“ NameError:全局名称a()未定义”。如果我将所有东西都从A类中取出,那没问题,但是如何在A类中定义方法?非常感谢你。 问题答案: 你需要调用调用从。是 不是 一个全球性的功能,它是在类中的方法。 您可能想通读有关类的Python教程,以获得更详细的信息。
问题内容: 我在Mac OS X上使用Python 2.6.1。 我有两个简单的Python文件(如下),但是当我运行时 我在终端上: 我尝试以不同的方式重命名文件和类,这就是为什么两端有x和z的原因。;) 文件sqlitedbx.py 文件update_url.py 问题答案: 您需要做: