Tag: search

cloudSearch有没有办法在q(queryString)中使用expr的结果

我想得到只有在0到500范围内的文件,任何人都可以帮助我 let qs = this.serialize({ 'q': "nikhil+range **<distance <= 500>**", 'expr.distance': "haversin(35.621966,-120.686706,latlong.latitude,latlong.longitude)", 'sort': "distance asc", 'q.parser' = "structured", 'return': "distance,displayname,profileimageurl" }); console.log(qs); return http.get({ host: 'search-vegme-user-7l3rylms73566frh4hwxblekn4.us-east-1.cloudsearch.amazonaws.com', path: '/2013-01-01/search?' + qs }, function(response) { // Continuously update stream with data var body = ''; response.on('data', function(d) { body += d; }); response.on('end', function() { console.log(body); }); […]

cloudSearch:将范围在0到某个值之间的距离

我想包括距离<500的文件,但我得到的所有文件的帮助 http://search-vegme-user-7l3rylms73566frh4hwxblekn4.us-east-1.cloudsearch.amazonaws.com/2013-01-01/search? q=fname:'nikhil' & expr.distance=haversin(35.621966,-120.686706,latlong.latitude,latlong.longitude)<=500& sort=distance asc&q.parser=structured& return=displayname,profileimageurl,distance 点击这里运行它

如何最有效地search数据? (RAM或MongoDB中的对象)

在nodeJS服务器的内存中加载了40mb文本的静态集合的情况下, 每当你的web客户端要求search(1000个元素来查看),哪个方法是最优的? 查询mongoDB数据库 对已经在RAM中的集合执行一个.find(),这个集合将parsing1000个元素,在那个元素中寻找多个不同的string 在开始实现一个复杂的.find()函数之前,我正在寻找性能最高的方法。

MongoDB丰富文档的全文search

我正在开发一个将HTML文档存储在MongoDB数据库中的Node.js应用程序,并希望提供全文searchfunction。 从我可以看到,包含在MongoDB中的全文search期望文档是纯文本,因此不适合索引我的html文档。 这个假设是否正确?如果是这样的话,人们会推荐什么呢? 从阅读其他SOpost弹性search似乎是最有效的path。 我不能说我很高兴把Java应用程序带入图片。 还有一个完全独立的应用程序不是我的理想场景。

在MongoDB中search(从NodeJS)

我有一个MongoDB数据库,每天有5到10个插入。 将被插入的数据的结构如下所示: { question: 'text here', date: '01/01/2000 01:01', title: 'Some title', client: 'name', assigned_to: ['name1', 'name2', 'name3'], answers: [ {answer: 'bla bla'}, {answer: 'bla bla'}, {answer: 'bla bla'} ] } 我需要在所有文本字段(问题,标题和所有答案)中search单词或一系列单词。 我一直在寻找,这是我迄今为止发现的。 有3个解决scheme: a) $regexp b) Enable full-text search in MongoDB and use it c) Save the structure with the following format (and then […]

如何在ExpressJS上使用ElasticSearch geo_distance

点击 { "_index" : "users", "_type" : "user", "_id" : "001", "_score" : 1, "_source" : { "utype" : "user", "username" : "test", "location" : { "lat" : 0.1, "lon" : 0.0 }, "uid" : "001" } } Node.js – app.js client.search({ index: 'users', type: 'user', body: { query: { filtered: { query: { match_all: […]

MongoDB全文search:溢出sorting阶段缓冲数据的使用

我正在尝试在我的节点(express.js)应用程序中实现mongo文本search。 这是我的代码: Collection.find({$text: {$search: searchString}} , {score: {$meta: "textScore"}}) .sort({score: {$meta: 'textScore'}}) .exec(function(err, docs { //Process docs }); 在大型数据集上执行文本search时出现以下错误: MongoError:执行程序错误:溢出sorting阶段缓冲数据使用量33554558字节超过内部限制33554432字节 我知道,MongoDB可以sorting最大32MB的数据,这个错误可以通过添加索引字段来避免,我们将sorting收集。 但在我的情况下,我正在通过textScoresorting收集,我不确定是否有可能为此字段设置索引。 如果没有,是否有任何解决方法? 注:我知道有类似的问题,但大多数这些问题没有textScore作为sorting标准,因此我的问题是不同的。

多语种网站和机器人检测

我有一个网站,我实施多语言。 我为每个子域划分我的语言。 fr-fr.mywebsite.com es-es.mywebsite.com www.mywebsite.com // root domain => neutral language for bots 在子域上,如果没有设置语言cookie,我使用子域作为语言代码。 在主域(www)上,如果没有设置语言cookie,则: 如果它是一个机器人,我使用中性语言 如果不是机器人,我使用“accept-language”标题检测用户语言。 如果它是一个机器人如何安全地检测? 我在这个问题上读了旧的话题,但人们只是使用“接受语言”,因为机器人没有发送这个头,但是,迄今为止,谷歌发送这个头… 检测它是一个bot还是反向检测它是否是Web浏览器会更安全吗? 因为如果机器人没有被检测到,那么这个网站将被错误的语言索引。 想法?

mongoose文本search – 改变其行为,以及与操作减慢

我正在开发一个searchfunction,在这个searchfunction中,我必须在大约30万个文档中执行search操作。 为此,我创build了一个四个领域的复合指数,并给予了他们重视。 默认情况下,如果我search一个有多个单词的短语,然后mongoose用OR操作search所有的关键字。 例如: – 如果您search小细胞肺,然后mongoose会search其中任何一个可用的所有文件。 它工作得非常快。 但我的要求是执行AND操作。 为了实现这一点,我把所有的单词分成一个短语,然后把它们放在双引号中。所以当用户search一个有多个单词的短语时,search操作在每个单词上执行AND操作。 例如: – 如果您search小细胞肺 (“小”“细胞”“肺”),那么它应该find所有可用的文件。 它也在工作,但现在很慢。 有没有办法让它更快。 如果需要,我会分享代码。 谢谢

自动修复损坏的Web链接

我的问题是我的网页中的一些链接被破坏,除非有人报告,否则没有修复。 我可以自动化,使页面中的每一个链接“ping”检查是否活着或find替代的链接? 有没有在服务器端的自动化脚本(PHP左右)来解决在一个页面中断链接?