如何使用nodejs elasticsearch客户端指定路由?

时间:2014-03-10 23:30:48

标签: node.js routing elasticsearch

在索引操作期间似乎没有办法指定路由值。 我尝试使用这里提到的'无证档参数': https://www.npmjs.org/package/elasticsearch

e.g。 client.search({   index:'abc',   输入:'efg',   路由:'123'   。   。   。 }

我会得到'路由'错误,因为映射中需要路由。 这是一个错误,缺少功能,还是我没有设置正确的参数?请帮忙

1 个答案:

答案 0 :(得分:3)

有点晚了,但对于任何想知道你可以在连接路径中设置路由的人来说:

var client = new elasticsearch.Client({
  host: 'http://u:pwd@host:port?routing={routing_key}'
});

{ total: 1, successful: 1, failed: 0 }

此外,您可以将其添加为搜索对象中的参数:

.search( { index: 'indexname',
  type: 'typename',
  body: { query: { bool: [Object] }, size: 1, aggs: { agg1: [Object] } },
  routing: '2015-03,2015-04' })