如何在elasticsearch Nodejs客户端中进行显式映射
我在nodejs中为elasticsearch使用了Javascript客户端,但是对于我如何使用elasticsearch nodejs模块来设置文档的types似乎并不是很清楚。
我面临的问题是,我从我们的供应商的API拉一个JSON对象,并在该对象的属性之一是“排名”。 秩是一个浮点值,但无论出于何种原因,供应商将其作为string返回。 因此,当我在elasticsearch中input文档时,elasticsearch将该属性解释为一个string,我不能执行这样的查询:
curl -XGET 'http://localhost:9200/backlinks/profile/_search?pretty=true' -d ' { "query" : { "match_all" : {} } , "facets": { "range1" : { "range" : { "field" : "rank", "ranges" : [ {"from" : "5.5", "to": "7.00"} ] } } }'
因为它返回以下exception:
java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Number
我知道我可以做显式映射,当我创build索引,但有没有办法使用nodejs模块做到这一点?
我在文档中找不到这个选项,而且我发现当API已经存在时,明确地发送一个GET请求到弹性search服务器有点麻烦。
另外,是显式映射recursion?
说我的供应商发给我这个:
{ name: 'wallets', price: '15.00', relatedItems: [{name: 'purses', price:'12.00'}, {name:'bags', price:'11.00'}] };
如果我做这样的对象显式映射:
price: { type: 'float' }
该types将映射到所有名为“价格”的属性? 还是只适用于第一个?
谢谢!
- ElasticSearch _bulk调用导致“套接字挂起”,尽pipe体积小
- 弹性search返回IndexMissingException
- 如何确保在ElasticSearch盆景免费实例中使用Firebase FlashLight为每个对象build立索引
- embedded式Mongoose的弹性search
- 使用ElasticSearch javascript客户端创build索引,promise不会返回
- 重复性工作订单系统的体系结构
- 有没有一种方法可以使用elasticsearch返回每个匹配字段只有一个命中?
- 将数据从Node.jsstream上传到ElasticSearch数据库
- Elasticsearch映射