Articles of elasticsearch mongoosastic

mongoosastic findOneAndUpdate在elasticsearch中没有索引

问题:在我的例子中,如果我用户schema.save那么它将索引在弹性search 但问题开始时,我使用findOneAndUpdate,所以它不会在弹性索引,即使我插入(即保存) MovieSchema.findOneAndUpdate(query, reqObject, { upsert: true }, function(err, results) { if (err) { if (!update) { var filePath = path.join(__dirname, "../../movie/images/uploads/") + reqObject.imageUrl; fs.unlinkSync(filePath); } console.log(err) callback({ RESULT_CODE: '-1', MESSAGE: 'System error. Please try again' }); } else { callback({ RESULT_CODE: '1', MESSAGE: 'Movie inserted' }); } });

Node.js Elasticsearch Mongoosastic From和Size分页

我正在使用Mongoosastic将我的模型索引到Elasticsearch,它的工作非常好,只有问题我有它的From和Size for分页。 根据Mongoosastic API 全查询Elasticsearch的DSL是通过search的方式公开的 基于Elasticsearch Api 从/大小我来这个代码 music.search( {query_string:{ query:term }},{"from" : 0},{"size" : 10}, { hydrate:true }, function(err,results) { console.log(results.hits.hits); }) 之后runnig我想出了这个错误: /home/app/node_modules/mongoosastic/lib/mongoosastic.js:256 cb(null, res); ^ TypeError: object is not a function at /home/app/node_modules/mongoosastic/lib/mongoosastic.js:256:9 at respond (/home/app/node_modules/mongoosastic/node_modules/elasticsearch/src/lib/transport.js:256:9) at checkRespForFailure (/home/app/node_modules/mongoosastic/node_modules/elasticsearch/src/lib/transport.js:203:7) at HttpConnector.<anonymous> (/home/app/node_modules/mongoosastic/node_modules/elasticsearch/src/lib/connectors/http.js:156:7) at IncomingMessage.wrapper (/home/app/node_modules/lodash/index.js:3057:19) at IncomingMessage.emit (events.js:117:20) at _stream_readable.js:944:16 at process._tickCallback […]

弹性的,mongoosastic为什么只索引集合的一部分

我用mongoosastic在mongodb上使用弹性 。 我的问题是当我做一个集合索引。 Mongoosastic仅索引collections的一部分(例如,我的collections有50,000个文件,但是只有3000个是无效的)。 我使用这个代码来生成文档和索引: var post, count = 0, countes = 0; for (i = 0; i < 50000; i++) { post = new BlogPost(req.body) post.save(function() { count++; console.log(count + "\n") //res.redirect('/'); post.on('es-indexed', function() { countes++; console.log('document' + countes + ' indexed'); }); });

elasticsearch mongoosastic count api和min_score

谁知道我怎样才能使用elasticserch中的_count API与mongoosastic和node.js? 另外我不能用min_score查询。 { min_score: 1, query_string: { query : query[ 'search' ] } } 这个查询给我一个错误 [query_parsing_exception] [_na] query malformed,no field after start_object,with {index = users line = 1 col = 11}

弹性search中的unicode(emoji)字符的string查询

我的ES索引中有一些包含表情图标的文章。 我想要search包含特定表情符号的文章。 我使用compose.io作为我的ES提供者,并通过ElasticHQ,我可以看到数据中的表情符号 – 它们在OS X中呈现为图标,所以我假定unicode存储正确。 但是,当我运行这个查询,我没有得到任何结果。 如果我运行纯文本search,我得到我的结果。 我正在使用mongoosastic。 Article.search({query_string: {query: "😕"}}, {fields: "title"}, function(err, results) { if (err) { console.log("error: " + err); } else { console.log("results: " + JSON.stringify(results)); } }); //results: {"took":6,"timed_out":false,"_shards":{"total":5,"successful":5,"failed":0},"hits":{"total":0,"max_score":null,"hits":[]}}

Mongoosastic – {消息:'没有生活的连接'}

我试图使用mongoosasticsearch的目的,但我一直得到'没有生活的连接'错误和映射问题 这是代码 var mongoose = require('mongoose'); var mongoosastic = require('mongoosastic'); var Schema = mongoose.Schema; var JobSchema = Schema({ category: { type: Schema.Types.ObjectId, ref: 'Category', es_indexed:true}, title: { type: String, es_indexed:true }, }); JobSchema.plugin(mongoosastic); module.exports = mongoose.model('Job', JobSchema); routes.js var Job = require('../models/job'); Job.createMapping(function(err, mapping) { if (err) { console.log('error creating mapping (you can safely ignore […]

如何使用mongoosastic + AJAX进行即时search?

我已经成功地configuration了mongoosastic,我试着search,它工作正常,但是当涉及到前端我不确定如何实现这一点,我尝试了很多方法,但不能拿出一个好的解决办法 这是代码。 // For the Search API router.post('/api/search/', function(req, res, next) { Job.search( { query_string: { query: req.body.search } } , function(err, results) { if (err) return next(err); res.json(results); }); }); 所以每当我search与“工程师”有关的东西时,我都会得到一个json数据 所以后端工作完美。 但是,当涉及到jQuery和Ajax我不断收到不好的要求 逻辑:每当插入东西,然后张贴,并find该结果。 这里是前端的jQuery代码。 $('#search').keyup(function() { var search_term = $(this).val(); $.ajax({ type: "POST", url: "/api/search", success: function(){ $('search_results').html(search_term); }, error: function(data){ alert('Error', data); […]

新的elasticsearch 2.1.1版本中的mapper_parsing_exception

问题 :我已经在elasticsearch 1.7.1中创build了映射并且工作正常,但是在更新到2.1.1之后,它会给我例外 例外 response: '{"error":{"root_cause":[{"type":"mapper_parsing_exception","reason" :"analyzer on field [_all] must be set when search_analyzer is set"}],"type":"ma pper_parsing_exception","reason":"Failed to parse mapping [movie]: analyzer on f ield [_all] must be set when search_analyzer is set","caused_by":{"type":"mapper _parsing_exception","reason":"analyzer on field [_all] must be set when search_a nalyzer is set"}},"status":400}', toString: [Function], toJSON: [Function] } { "settings": { "number_of_shards": […]

使用mongoosastic来自动完成

我正在尝试使用mongoosastic和Elastic Search创build一个自动完成,到目前为止,我已经能够使用感觉来创build自动完成,但是我无法将其移植到mongoosastic中。 我遵循ElasticSearch文档中的这个教程,我能够通过一个如下所示的映射来实现我想要的“sense”: PUT storys/story/_mapping { "story" : { "properties": { "description": { "type": "string" }, "title": { "type" : "completion", "index_analyzer": "simple", "search_analyzer": "simple" } } } } 和这样的查询: GET storys/_suggest { "story-suggest": { "text": "bow", "completion": { "field": "title" } } } 不过,我无法将其移植到mongoosastic中。 我尝试了以下方法: var StorySchema = new Schema({ title:{ type: String, es_type:'completion', […]