首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Crate.io:搜索的方面?

Crate.io:搜索的方面?
EN

Stack Overflow用户
提问于 2017-06-26 11:00:24
回答 2查看 177关注 0票数 1

https://crate.io支持面(分面搜索)吗?

我在文件里什么都没找到。ElasticSearch 替换面片在2014年使用了集合体,但是机箱文档中的聚集段只讨论了SQL聚合函数。

我的用例:我有一个网站列表,每个记录都有一个域和一个语言字段。在显示搜索结果时,我希望获得搜索结果所显示的所有域的列表,以及所有语言的列表,并按出现的次数排序,以便缩小搜索结果的范围。还应给出这些单面值的结果数。

截图与面:

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-06-28 07:16:24

从板条箱里找不到我想要的面。

相反,我们现在正在crate.yml中启用crate.yml REST

代码语言:javascript
复制
es.api.enabled: true

。。并且可以使用ElasticSearch聚合API。

票数 1
EN

Stack Overflow用户

发布于 2017-06-30 15:04:31

Crate不直接支持方面或弹性搜索聚合。正如您所建议的,您可以始终打开Elasticsearch。然而,还有其他方法来获得这些聚合。

1)您考虑过向集群发出多个查询吗?例如,如果使用Javascript动态加载页面,则可以首先返回搜索结果,然后加载方面。这也将减少应用程序的总体响应时间。

2)在CrateDB 2.1.x中,将支持子查询,这允许您在查询中包含方面:

代码语言:javascript
复制
select q1.id, q1.domain, q1.tag, q2.d_count, q3.t_count  from websites q1,
(select domain, count(*) as d_count from websites where text like '%query%' group by domain) q2,
(select tag, count(*) as t_count from websites where text like '%query%' group by tag) q3
where q1.domain = q2.domain and q1.tag = q3.tag and q1.text like '%query%'
order by q1.id
limit 5;

这给出了这样一个结果表,在该表中,搜索结果连同查询的域和标记计数一起使用:

代码语言:javascript
复制
+----+--------------+-----------+---------+-----------+
| id | domain       | tag         | d_count | t_count |
+----+--------------+-------------+---------+---------+
|  1 | example.com  | example     |       2 |       3 |
| 14 | crate.io     | software    |       1 |       4 |
| 17 | google.com   | search      |       5 |       2 |
| 29 | github.com   | open-source |       3 |       3 |
| 47 | linux.org    | software    |       2 |       4 |
+----+--------------+-------------+---------+---------+

免责声明:我刚接触过Crate :)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44758211

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档