问题标签 [faceted-search]

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 投票
1 回答
471 浏览

jquery - 如何使用jQuery隐藏页面上的某些元素

我正在尝试实现类似于分面搜索的东西。我的数据是一系列对象和关系。想法是单击一个对象(在本例中为“95 论文”,然后显示可能的关系,在本例中为“作者”,单击该关系显示与该关系匹配的对象,在本例中为“Martin Luther”。

我点击对象和关系(谓词)工作正常。我需要做的是允许用户单击一个对象或关系并删除所有从它扩展的对象或关系。

这是我在单击对象或关系“标签”时想到的添加内容(每次添加另一个对象或关系时,我都会增加名为“级别”的全局属性):


0 投票
1 回答
4274 浏览

syntax - Solr OR 查询不同的方面组合

我有一个示例 Solr 架构,如下所示

我想编写一个查询,它返回索引中匹配 isPublic = true 或 isPublic 为 false 且 source = facebook 的所有文档。像这样的东西

这样的事情是否可能,或者我应该使用这些条件中的每一个搜索索引两次,然后组合+重复数据删除结果?

0 投票
1 回答
1216 浏览

faceted-search - 执行字段分面时出现异常

在进行归档分面时,我收到以下错误。

方面计数期间的异常:org.apache.solr.common.SolrException:在 org.apache.solr.schema.IndexSchema.getField(IndexSchema.java:1077) 在 org.apache.solr.request.SimpleFacets.getTermCounts( SimpleFacets.java:226) 在 org.apache.solr.request.SimpleFacets.getFacetFieldCounts(SimpleFacets.java:283) 在 org.apache.solr.request.SimpleFacets.getFacetCounts(SimpleFacets.java:166) 在 org.apache.solr .handler.component.FacetComponent.process(FacetComponent.java:72) 在 org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:195) 在 org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase .java:131) 位于 org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:338) 的 org.apache.solr.core.SolrCore.execute(SolrCore.java:1316)。小服务程序。SolrDispatchFilter.doFilter(SolrDispatchFilter.java:241) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java: at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache .catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) 在 org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) 在 org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java :127) 在 org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 在 org.apache.catalina.connector 的 org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)。 CoyoteAdapter.service(CoyoteAdapter.java:298) 在 org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852) 在 org.apache.coyote。http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:5 at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) at java.lang.Thread.run(未知来源)

在 schema.xml 中,我提到了 manfar_name,如下所示。

在我配置的 solrConfig.xml 中,如下所示。

sal_amt:[* TO 200]
sal_amt:[201 TO 300] sal_amt:[301 TO 400] sal_amt:[401 TO 500] sal_amt:[501 TO 600] sal_amt:[601 TO 700] sal_amt:[701 TO 800] sal_amt :[801 至 900] 萨尔_amt:[901 至 1000] 萨尔_amt:[1001 至 2000] manfar_name

数据导入配置如下。

我的配置哪里出错了?请帮我解决这个问题。

问候, 西瓦·普拉萨德·贾纳帕蒂

0 投票
3 回答
7092 浏览

sorting - 我需要按相关性对从 SOLR 返回的方面进行排序

我的 SOLR 索引歌曲对象中有属于更高级别的专辑对象。一个例子如下所示:

我现在可以做的是在专辑标题上创建一个方面,这样搜索歌曲时也会显示哪些专辑包含该关键字的热门歌曲。

SOLR 的默认行为是分面按命中率从高到低的顺序显示。但是,我想要实现的是要根据该专辑的热门歌曲的相关性对方面列表进行排序。

例如,对“sad”一词的搜索可能会显示“Blood Sugar Sex Magic”的一首歌曲,并且可能还有一张名为“Sad Clown song”的专辑,其中有 10 首歌曲。“悲伤的小丑歌曲”将显示为第一个方面,尽管“桥下”可能是最相关的歌曲。

我的问题是,我怎样才能恢复所有方面,然后根据其中歌曲的相关性对它们进行排序?如果我需要更改或扩展一些底层 SOLR 代码,那会是什么?

提前致谢。

0 投票
2 回答
3424 浏览

lucene.net - Lucene.NET 分面搜索

我找到了一个关于执行分面搜索的很棒的教程。

http://www.devatwork.nl/articles/lucenenet/faceted-search-and-drill-down-lucenenet/

本文不解释如何检索缩小的可用属性以进行过滤(以进一步深入研究)。

可以说我正在寻找红色的计划者。当我执行分面搜索时,我想返回所有可用的属性以从中过滤为红色。然后,当我添加“每周格式”过滤器时,我希望属性列表变得更小,仅包含可用于分段组的过滤器。

我想喜欢使用 Solr/SolrNET,但我处于共享托管情况,对实际服务器的访问受限。

我对 lucene.net 相当陌生,因此非常感谢示例。

0 投票
1 回答
1663 浏览

lucene.net - Lucene.NET 2.9 和 BitArray/DocIdSet

我找到了一个关于在基本查询中获取构面计数的好例子。它存储基本查询的位数组,以在每次计算一个方面时提高性能。

唯一的问题是我使用的是较新版本的 Lucene.NET (2.9) 并且 Filter.Bits 已过时。我们被告知要使用 DocIdSet(而不是 BitArray)。

我不知道如何使用 docIdSet 执行 bitArray.And(bitArray)。我查看了反射器,发现了具有 And 操作的 OpenIdSet。不确定 OpenIdSet 是否是要走的路线,我只是说。

提前致谢!

0 投票
2 回答
2035 浏览

solr - Solr - 检索未过滤版本查询的构面计数

我正在使用 Solr 进行搜索,最近开始使用 faceting 来允许用户缩小搜索范围。但是,一旦用户按其中一个方面进行过滤,则其他过滤器选项将不再在方面结果中返回。这是意料之中的,但不是我想要的。

是否有某种方法可以返回未过滤查询的方面字段和计数,而无需进行额外搜索?例如,如果用户按类别过滤(通过选择特定类别),我希望他们仍然能够选择其他类别之一,而无需先明确删除过滤器。(也就是说,Solr 仍应返回所有类别及其计数,以便我可以将它们与过滤后的查询集一起包含在页面上。)

我怀疑这可能是不可能的。如果不是,我可以在每次搜索时做一个额外的查询,这将省略过滤器(并返回 0 行),如上一个 StackOverflow 问题中所述。但我想我会问:有没有人知道没有多次查询的方法?

0 投票
1 回答
1288 浏览

solr - SOLR 日期分面和 BC / BCE 日期/负日期范围

包括公元前日期在内的日期范围是可能的吗?

我想使用 SOLR 返回 11000 BCE (BC) 和 9000 BCE (BC) 之间所有年份的刻面。

示例查询可能将日期范围转换为 ISO 8601:

然而,返回的结果似乎表明日期在正范围内,即 CE,而不是 BCE...

查看示例返回结果

任何想法为什么会这样,solr可以处理负日期,例如-112009-01-01T00:00:00Z吗?

0 投票
1 回答
5450 浏览

solr - Solr 多面日期

根据关于 facets 的 Apache Solr 文档,我可以使用键,因为:“当在同一字段上多次使用不同的排除项进行分面时,这会很有帮助。”

我需要它们,因为我想要一个方面,给我“最后一天”、“上周”、“上个月”选项。

但是,当我使用以下选项集指定查询时:

Solr 抱怨:

[异常] => org.apache.solr.common.SolrException:缺少必需参数:f.created.facet.date.start(或默认值:facet.date.start)

当我设置 facet.date.start 或 f.created.facet.date.start 时,它们将覆盖我的 some_key (start/end/gap) 的字段,这是没用的,因为我需要多个键......任何人都可以指出我在正确的方向在这里?由于我使用的库的限制,这需要在单个查询中完成。

0 投票
2 回答
1413 浏览

php - php分面搜索

我有表问题(带有 php 的 mysql),其中包含问题、类别(多个)和 subcat(多个)它属于。为了简化,同时保存每个问题,我用逗号分隔保存了类别,如下所示

像这样我现在在数据库中有 1000 个问题

在进行多面搜索时,我想过滤掉每个类别及其相应的子目录,例如下面的树格式

为此,我刚刚实现了in_array ,同时为该问题表的每个循环中的每个问题搜索特定的猫。页面现在变慢了。以及文本搜索。

这是真的好主意还是建议我一些正确的方法。

我是否想要单独的类别表?

谢谢,戈壁