Solr支持的需求“转化”方案小结

简介: 假期重新把之前在新浪博客里面的文字梳理了下,搬到这里。

1. A>B         转化A>B 的结果保存为新的域,查询时候使用新的域作为条件查
2. sum(A,B)>N  
转化为 sum(A,B)的值保存为新的域,查询时候 [N TO *] 区间查询代替
3.
非空查询    转化为 对应数值型,使用区间[0 TO *] ,对应文本类型 转化为 构建时候写入默认值
4.
按期望的得分模型排序 转化为,离线根据自定义的模型,计算好一个document-at-time得分,排序时候直接按这个单维度得分排序。问题可能会出现好的越好、坏的越坏
5.
文本得分和属性得分联合  转化为第一维度文本、第二维度属性值 或者 文本*因子+ _val_ 得分
6.
输入提示  转化为基于当前索引的词典的termquerycomponent 或者 独立一个倒排索引,保存词典,此时各种提示转化为倒排的前缀、模糊搜索,同时控制相关联词条的排序规则,包括屏蔽和加强关键词
7.
带特征的单维度实时统计  转化为带特征去查询索引然后facet,将facet结果存入数据库共访问。
8. topN
查询词条     直接对query log 执行再次倒排索引,输出高频词以及高频关联词
9.
实时可累加的统计 直接实时构建索引,输出索引的term、倒排的统计信息。
10.
突出特定信息   转化为特定关键词的boost或者特定域的boost或者特定文档的boost
11.
人名搜索       转化为单子分词并短语查询和属性排序
12.list
查询       转化为直接基于luceneMultiTermQuery,能缓存的尽量缓存起来
13.
规则推荐       转化为多属性组合查询唯一规则id返回
14.
一次写膨胀性增加  转化为分时间段构建索引、按需加载、卸载索引段
15.
多表关联         转化为离线join一起构成文档,查询直接key返回文档,无需多表join
16.sqllike
查询       转化为基于词法、句法分析转化为对应语句模板,模板自动生成solr语法
17.
关系距离排序      转化为tfitf公式不变而数值用关系维度值代替或者直接function计算关系夹角
18.
概率模型、语言模型 转化为引入第三方包实现的得分模型,同时需要调整某些参数根据具体场景
19.
空间搜素           转化为关键词到经纬度索引查询,引入第三方包实现的相关插件
20.
图片过滤           转化为在图片算法过滤的同时,联合文本查询过滤,实现高质量聚合
21.
传递推荐           转化为关键词结果的统计输出,输出条件查询进一步统计输出。。。
22.
数据结构化         转化为检索词返回规则,构建可重复计算的特征性结构化数据。
。。。。
所有的需求转化本质,大概可以如下理解:
(1)
发挥solr或者lucene的一对一关联,termdocument 的关联
(2)
通过单一属性,返回关联属性;
(3)
索引构建完毕静态信息可以根据条件实时、重复获取
(4)
复杂问题离线化,线上实时只读
(5)
大的东西从开源、第三方包获取,细的参数、微调从业务场景出发

目录
相关文章
|
5月前
|
JSON NoSQL MongoDB
实时计算 Flink版产品使用合集之要将收集到的 MongoDB 数据映射成 JSON 对象而非按字段分割,该怎么操作
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
3月前
|
存储 Java 分布式数据库
HBase构建图片视频数据的统一存储检索
HBase构建图片视频数据的统一存储检索
|
3月前
|
存储 NoSQL MongoDB
MongoDB拆分大文档、嵌入文档
【7月更文挑战第6天】
35 0
|
5月前
|
存储 数据处理 索引
Elasticsearch 8.X 小技巧:使用存储脚本优化数据索引与转换过程
Elasticsearch 8.X 小技巧:使用存储脚本优化数据索引与转换过程
93 6
|
5月前
|
SQL 存储 分布式计算
Hive【基础 01】核心概念+体系架构+数据类型+内容格式+存储格式+内外部表(部分图片来源于网络)
【4月更文挑战第6天】Hive【基础 01】核心概念+体系架构+数据类型+内容格式+存储格式+内外部表(部分图片来源于网络)
110 1
|
5月前
|
SQL 分布式计算 API
Apache Hudi从零到一:深入研究读取流程和查询类型(二)
Apache Hudi从零到一:深入研究读取流程和查询类型(二)
171 1
|
JSON 关系型数据库 MySQL
MySQL全文搜索与JSON支持:高效检索与灵活数据处理
本文深入探讨了MySQL数据库中的全文搜索与JSON支持,通过详细的代码示例,阐述了全文搜索的原理、全文索引的创建,以及JSON数据类型的使用与操作。全文搜索在数据库中的重要性日益凸显,MySQL提供了全文索引来实现高效的文本数据检索,通过MATCH AGAINST语句,可以轻松地进行全文搜索操作。此外,MySQL的JSON支持为半结构化数据的存储和查询提供了灵活的解决方案,您可以存储JSON对象、数组等数据,并使用JSON函数来查询和修改数据。
852 0
|
存储 搜索推荐 大数据
大数据数据存储的搜索引擎Elasticsearch的基本操作(含API使用)的基本检索的复合检索
在进行复合检索时,我们可以使用多个查询语言和结构,以更加准确地搜索数据库中的信息。 Elasticsearch提供了多种查询语言和结构,如match、term、bool、dis_max、constant_score等。
194 3
|
存储 自然语言处理 搜索推荐
大数据数据存储的搜索引擎Elasticsearch的基本操作(含API使用)的文档操作的分词
搜索引擎Elasticsearch是一种流行的大数据存储和分析工具,它可以通过API来进行数据索引、查询和分析等操作。在本文中,我们将会介绍Elasticsearch的文档操作之一:分词。
82 1
|
存储 搜索推荐 大数据
大数据数据存储的搜索引擎Elasticsearch的基本操作(含API使用)的文档操作的同义词
搜索引擎Elasticsearch是一种流行的大数据存储和分析工具,它可以通过API来进行数据索引、查询和分析等操作。在本文中,我们将会介绍Elasticsearch的文档操作之一:同义词。
78 0
下一篇
无影云桌面