solr - Solr如何编写自定义聚合函数/分面函数
问题描述
是否有可能/如何在 Solr中编写新的自定义方面功能?
我想编写一些针对构面存储桶执行并产生单个结果的新函数,但找不到从哪里开始。其中之一是一个函数,它只从桶中返回一些任意值,而不计算 min/max/avg 等。
解决方案
在这些情况下开始的一个好方法通常是找到一个现有的且名称更独特的函数,然后在代码库中搜索这些函数。
从JSON Facet API: Stat Facet Functions开始,我看到了一些不错的候选者,例如percentile
和sumsq
(以及其他一些)。
在代码中搜索这些显示百分比聚合器已solr/core/src/java/org/apache/solr/search/facet/PercentileAgg.java
在 Github 上看到。这似乎有点复杂,但该目录包含所有方面聚合函数。
方差聚合器应该更简单,而且确实如此。从 VarianceAgg 源开始,您应该能够创建另一个版本,该版本也将特定方面的所有值聚合为单个值。
从扩展SimpleAggValueSource
和工作开始。
推荐阅读
- python - python - _tkinter.TclError:ttk.Frame 的未知选项“-bg”
- c# - 我正在使用 C# MySql,在 Gridview 中存储图像路径时,它忽略了路径中的 \,因此在从路径中检索图像时出现错误
- reactjs - 错误:styled_components__WEBPACK_IMPORTED_MODULE_0__.default.FaChevronRight 不是函数
- android - 如何唤醒 MainActivity
- splunk - Splunk 从以特定值开头的字符串中提取值
- python - 网络从表格中抓取某一行
- c# - c#中结构和循环概念的问题
- java - 如何将 JavaObject 从 POJO 转换为 JSONString/JSONObject
- windows - 如何通过引用另一个批处理文件将环境变量作为参数传递?
- xml - XSLT template match filter