问题标签 [couchdb-lucene]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
767 浏览

lucene - couchdb-lucene 键中哪些字符有效?

我可以使用我喜欢的任何键将值存储在 couchdb-lucene 中,但似乎如果该键包含 [0-9a-zA-Z_] 之外的任何字符,则任何搜索都会失败。

有谁知道哪些字符是有效的和/或如何在搜索中正确转义特殊字符以便可以使用特殊字符?

0 投票
3 回答
3807 浏览

solr - 有没有集成 CouchDb 和 Solr 的项目?

我希望能够使用 Solr 搜索 CouchDB 数据库。有没有提供这种集成的项目?

我也知道 CouchDB-Lucene。有没有办法将 Solr 挂钩?

谢谢!

0 投票
2 回答
1280 浏览

arrays - 使用 CouchDB-lucene 如何索引对象数组(不是值)

大家好,提前感谢您的任何想法、建议或答案。

一、环境:我使用的是CouchDB(目前在1.0.2上开发)和couchdb-lucene 0.7。显然,我正在使用 couchdb-lucene(以下简称“cl”)在 couchdb 中提供全文搜索。

其次,我给大家提供一个例子couchdb文档:

第三,让我解释一下我想做什么。我试图弄清楚如何索引“$usagerights”属性。我非常松散地使用索引这个词,因为我真的不关心能够搜索它,我只是想“存储”它,以便它与搜索结果一起返回。无论如何,该属性是一个 json 对象数组。现在,组成数组的这些 json 对象将始终具有一个 json 属性。

根据我对 couchdb-lucene 的理解,我需要将此数组简化为逗号分隔的字符串。我希望像“group-administrators:31,group-users:3”这样的最终输出。

因此,我的问题本质上是:如何将上面的 $usagerights json 数组减少为 couchdb-lucene 使用的 couchdb 设计文档中的逗号分隔的键:值对字符串?

我之前发布的关于在类似情况下对标记进行索引的问题,仅供参考:How-to index arrays (tags) in CouchDB using couchdb-lucene

最后,如果您需要任何其他详细信息,请发表评论,我会提供。

0 投票
2 回答
227 浏览

lucene - Lucene:如何更加重视某些文件?

我在我的 Web 应用程序中使用 couchdb-lucene。我有一个搜索用户的功能。

每个用户都是一个具有“全名”、“用户名”和“活动”等属性的文档。

Activity 只是一个浮点值,表示该用户的活跃程度。所以我希望 lucene 在给每个用户打分的同时也考虑这个因素。我该怎么做呢 ?

0 投票
1 回答
185 浏览

couchdb - 经过身份验证的用户的 Couchdb-lucene 和临时查询

我正在使用 CouchDB 存储来自各种来源的数据,并使用 couchdb-lucene 来允许临时查询。这对我很重要,因为我在提要中显示数据并且我希望此提要可过滤。CL 似乎非常适合。

但是,我还想为提要应用程序引入权限 - 用户应该只有在他/她有权查看提要项目时才能看到它。

现在,我希望能够运行临时查询,并且只返回当前经过身份验证的用户有权读取的提要项目

我能想到的唯一解决方案(到目前为止)是在每个提要项目中添加一个“权限”字段,我在其中存储其他用户的所有权限(显然跳过了根本没有权限的用户)

然后在 CL 中索引这个数组。

虽然这可能会奏效,但我觉得被迫将权限元数据嵌套在提要项目中有点糟糕......它甚至可能比将其分开更好的解决方案,但我只是不喜欢我似乎不喜欢在这里有一个选择。

唯一的其他解决方案(嗯,除了转储 CouchDB 之外)是运行临时查询而不关心权限,然后在选择所有“我的项目”的服务器上运行第二个查询并进行设置交集。但是这些集合可能很大(如果我将它分块,它可能需要很多 DB 请求 => 慢)。

我的解决方案很好还是有更好的解决方案?还是 CouchDB 不适合此类查询?

干杯!

0 投票
1 回答
115 浏览

lucene - 使用 couchdb 列表格式化 couchdb-lucene 结果

情况...

我有一个简单的 couchapp,它列出了存储在 couch 数据库中的电子邮件,这些电子邮件通过一个简单的视图进行查询,然后通过一个列表传递给我一个漂亮的表格,我可以单击电子邮件来查看它们。这很好用。

这个应用程序的下一个发展是使用 couchdb-lucene 添加一些对电子邮件主题行的全文搜索,我认为我已经确定了这一点,并且我可以使用 lucene 进行搜索并返回有效的结果。我不太明白的是如何获取这些结果并将它们返回到我现有的列表函数中,以便它们正确格式化?

这是我的视图 + 列表 URL 的示例,它为我提供了 HTML http://localhost:5984/tenant103/_design/Email/_list/emaillist/by_type?startkey=["Email",2367264774866]&endkey=["Email",0]&limit=20&descending=true&include_docs=true

这是我的搜索 URL,它也给了我结果 http://localhost:5984/_fti/local/tenant103/_design/Email/by_subject?q=OM-2875&include_docs=true

我的想法是我会像这样构建 URL http://localhost:5984/_fti/local/tenant103/_design/Email/_list/emaillist/by_subject?q=OM-2875&include_docs=true

但这只是返回

这是我自己使用 CouchDB 的一个学习项目,所以我可能不会在这里得到一些简单的概念。

0 投票
2 回答
242 浏览

couchdb - CouchDB-Lucene 索引功能不适用于外部代码

我正在使用 CouchDB-Lucene 从我的数据库中的一些表中检索数据。问题是我必须解析这些数据才能知道我想将哪些数据放入我的 lucene 索引中。

所以,我认为我可以使用我已经编写的类来处理数据。而且我可以使用 CouchApp 指令在我的索引函数中添加这个类。

结果如下所示:

当我查看我的设计文档时,似乎所有代码都已正确添加,但是当我执行搜索时,lucene 说 " MyClass is not defined"

如果我尝试手动复制/粘贴所有“MyClass”代码(因此不再使用 CouchApp 指令),lucene 会说我的文档结尾不正确。

我错过了什么?


编辑:我删除了所有在问题上没有意义的真实功能代码。

0 投票
1 回答
527 浏览

android - 如何在 Android 上设置 CouchDB-Lucene

我们正在增强 Android 应用程序,使其具有高级搜索功能。

该应用程序Couchbase-mobile (version 2.0.0)用作 Android 服务...

我对实施有以下疑问:

  1. 集成类似[CouchDB-Lucene][1].
  2. 我想我们将不得不在 Android 设备上触发 couchdb-lucene java 进程(作为服务),但不确定是否.ini只需要配置本地 Couchbase 的文件。
  3. CouchDb-Lucene 适合 Android 还是太重?

如果有人可以提供一些指示,那就太好了。

0 投票
1 回答
170 浏览

lucene - CouchDB-Lucene 从搜索中获取不同的行

我在我的 Lucene 索引中复制了行,我想通过搜索只检索不同的数据。

  • 我认为没有重复数据我无法建立索引,因为它们没有存储在同一个 CouchDB 表(JSON 文档)中。但也许我遗漏了一些东西,并且可以在从索引函数返回之前测试一个元素是否已经被索引。

  • 如果不是,是否可以从包含重复数据的索引中仅检索不同的值?

问候, 米凯尔

0 投票
1 回答
50 浏览

couchdb-lucene - couchdb-lucene 的默认连接

CouchDB-Lucene 的默认连接似乎是OR

可能返回:

如何配置 CouchDB-Lucene,以便将此处顶部的两个语句视为AND'd 一起,而不是OR'd?