SolrQuery挖掘--单维度聚合分析

简介: 单维度聚合分析,主要解决类似以下场景的问题 (1)同一个用户搜索输入关键词 (2)某个时间段内搜索词排行榜 (3)某些关键词联合出现情况 (4)IP位置 维度下的关键词聚合情况 (5)其他任何参与搜索的单维度搜索请求统计 (6)平均命中率、hits=0、查询平均响应时间 ......
 

单维度聚合分析

为什么选择搜索引擎

单维度聚合分析应该是各种分析统计中最为简单、直接。 对于主动搜索、被动搜索一体的应用场景,有登录和无登陆等统一兼顾。并且提供接口服务,按需返回维度信息,并且可以复用。 无疑采取搜索引擎,依赖搜索引擎的facet统计功能,最为直接、快捷、有效、低沉本。前提是对搜索引擎比较熟悉,否则光一个 搜索引擎就折腾死人了。

单维度聚合分析意义

单维度分析意义主要在掌握数据属性、用户属性、热点发现。 例如:某个产品上某个用户一段时间搜索词聚合,然后对聚合词语义分析,将可以分析出该用户的某些历史偏好、行为特征、消费 倾向、社区角色等。 例如:一段时间内产品上用户在搜什么,那些是热点词,是否与运营活动相关,是否是产品的重点词范畴等。 例如:将关键词、时间、产品倒排起来,那么就可以知道任何时间段内,具体产品活跃的关键词分布,间接知晓产品的“语义集合” 例如:将关键词、用户、时间倒排起来,那么很容易知晓那些词偏女性、那些词偏男性、那些词中性,用户那个时候搜的多、是那些词 例如:将关键词、排序、翻页、命中倒排起来,那么很容易发现点击热点、超时分析等。 。。。。 太多了

陷阱

大家都关注结果去了,没有人喜欢过程,尤其是周期性、长期的过程。在淘宝上成交量、客单价为主题的大环境,任何和交易不相关 、任何不能直接影响交易、任何只是提升用户细微体验等等工作,都是一个“弱势”需求,甚至等于不是需求。 所以,技术即使实现,也不见得有人会关注、有人去用。KPI中不会因为用户体验而打分,KPI中不会因为改善排序效果而肯定。 因为本身这些不好评估效果,特别是短期内的效果。更本质的可能是这些“无关交易”!

单维度聚合关键问题

维度的选择

既然是单维度聚合,那么维度的选择就非常重要了。这个需要不是技术一方面说的算,更多的依赖业务。 而往往习惯了运营为主、人肉、经验为主的 淘宝居多业务,对交易之位的属性关注度明显的不在意。 也甚至出现,计算出来的结果会在 白名单、黑名单过滤下,面目全非。 通常基本的维度不可少:时间、业务、人、关键词等。也即时间、地点、人物、事件。

格式化

输入就是线上日志,输出就是格式化文档或者倒排索引结构。 在输入和输出之间就是转换。转换的过程其实非常麻烦的问题,只看一端只觉得问题很easy! 麻烦之处:

(1)提取规则

日志总是有许多莫名其妙的格式、内容、乱码。很难有一个100%的规则,满足所有请求日志。 即使有,也很难很容易的扩展到其他应用。例如solr 日志格式是有规律的,但是用户内容不一定有规律。 基于文本标签提取,自然会遇到内容的标签问题。提取完毕之后,schema结构具体应用是不一样的。

(2)提取速度

越精细越耗时,并且java String对象处理起来比较方便,却速度上远远低于char,而char处理不是很方便。 对应solr query log 还是建议采取char为主、StringBuidler为核心变量。

(3)适应性

一开始都是追求100%解析通过,实际总有那么一些内容,搅合常规处理方法。为了适应这些非常规的请求, 往往会将之前的处理规则打破或者添加更多条件,然后整体性能突然下降。建议:能处理的快速处理,不能处理的 单独输入到一个文本,对于这些非常规的特殊处理。

单维度聚合实现样例

对于终搜 solr 日志 输入 2012-08-09 14:50:33,396 INFO [org.apache.solr.core.SolrCore] - [search4product-0] webapp=null path=/select params={q=+supplier_id% 3A649289&amp;sort=weight1+desc&amp;rows=30&amp;start=0&amp;facet=true &amp;facet.field=cat_path&amp;hl.usePhraseHighlighter=false&amp;echoParams=explicit&amp;hl=true &amp;hl.fl=title&amp;hl.requireFieldMatch=true&amp;hl.simple.pre=<em> &amp;hl.simple.post=</em>&amp;hl.snippets=3&amp;hl.fragsize=2000&amp;timeAllowed=2500} hits=1762 status=0 QTime=123 解码 2012-08-09 14:50:33,396 INFO [org.apache.solr.core.SolrCore] - [search4product-0] webapp=null path=/select params={q=+supplier_id:649289&amp;sort=weight1 desc&amp;rows=30&amp;start=0&amp;facet=true&amp;facet.field=cat_path&amp;hl.usePhraseHighlighter=false &amp;echoParams=explicit&amp;hl=true&amp;hl.fl=title&amp;hl.requireFieldMatch=true&amp;hl.simple.pre=<em> &amp;hl.simple.post=</em>&amp;hl.snippets=3&amp;hl.fragsize=2000&amp;timeAllowed=2500} hits=1762 status=0 QTime=123

 
提取输出 2012-08-09T14:50:33Z#&amp;search4product-0#&amp;supplier_id:649289#&amp;sort:weight1 desc#&amp;hits:1762#&amp;QTime:123 构建solr document

 
相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
相关文章
|
人工智能 自然语言处理 安全
从 ChatGPT 到 AI 大模型私有化部署,为什么企业需要私有化专属大模型?
目前,大模型已经能够切实的影响到我们每个人的工作、学习、生活,赋能千行万业,但是开放的大模型却无法很好的适应企业或单位的内部需要,为此,此处研究并提出为什么企业需要私有化大模型,并探讨私有化大模型的优势和挑战,同时本文也举出了一些实践落地的例子,希望能给读者带来一些思考和启发。
|
存储 缓存 算法
硬盘性能提升100倍的秘密:看懂顺序I/O的魔力
本文介绍了I/O缓存的核心原理与实现机制,涵盖局部性原理、Page Cache工作机制及其写回策略,以及顺序I/O的性能优势。通过理解时间与空间局部性如何提升缓存效率,Page Cache如何利用内存优化磁盘I/O,以及顺序I/O相比随机I/O在不同存储介质上的性能差异,帮助读者深入理解系统I/O优化的关键技术。
408 0
|
10月前
|
算法 数据挖掘 API
淘宝店铺全量商品API接口技术实践指南
本文详解淘宝开放平台taobao.item_search_shop接口,涵盖核心功能、参数配置、签名生成、调用流程及实战要点,助力开发者高效获取店铺全量商品数据,实现电商运营与数据分析的自动化对接。(238字)
|
数据采集 机器学习/深度学习 数据挖掘
基于DeepSeek的多模态融合技术:实现图像、视频与音频的协同分析
随着多媒体数据的爆炸式增长,单一模态数据分析已无法满足复杂场景需求。多模态融合技术通过整合图像、视频、音频等多源数据,提供更全面精准的分析结果。DeepSeek作为强大的深度学习框架,在多模态融合领域展现巨大潜力。本文深入探讨基于DeepSeek的多模态融合技术,结合代码示例展示其在图像、视频与音频协同分析中的实际应用,涵盖数据预处理、特征融合、模型训练及评估等环节,并展望未来发展方向。
2492 13
|
JSON 算法 数据可视化
5.3 目标检测YOLOv3实战:叶病虫害检测——损失函数、模型训练
这篇文章详细介绍了使用YOLOv3模型进行叶病虫害检测时的损失函数配置、模型训练过程、评估方法以及模型预测步骤,并提供了相应的代码实现和可能的改进方案。
|
缓存 Linux 程序员
老程序员分享:linux下netlink的使用简介
老程序员分享:linux下netlink的使用简介
Vue3表格(Table)
这是一个基于 Vue2 的表格组件,支持自定义列配置、数据绑定、加载中提示、空状态提示及分页功能。主要属性包括表格列配置 `columns`、数据源 `dataSource`、加载状态 `loading` 及分页配置等。组件内置了 Spin、Empty 和 Pagination 等子组件以实现丰富的交互效果。通过简单的属性绑定即可实现数据展示、加载动画和无数据提示等功能。
1206 0
Vue3表格(Table)
|
人工智能 缓存 监控
终于有人说清楚AI开发的全流程了!
本文详述了AI需求开发流程各阶段的关键步骤和最佳实践,包括需求调研、模型选型、提示词优化、性能测试以及上线后的监控和反馈,旨在帮助开发者构建高效、可靠的AI应用。
|
算法
基于DSP的音频信号降噪技术
基于DSP的音频信号降噪技术
967 4
|
NoSQL Ubuntu Linux
【操作系统】实验三 编译 Linux 内核
【操作系统】实验三 编译 Linux 内核
1241 1