在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

Solr schema怎么编写

121次阅读
没有评论

共计 2564 个字符,预计需要花费 7 分钟才能阅读完成。

这篇文章主要介绍“Solr schema 怎么编写”,在日常操作中,相信很多人在 Solr schema 怎么编写问题上存在疑惑,丸趣 TV 小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Solr schema 怎么编写”的疑惑有所帮助!接下来,请跟着丸趣 TV 小编一起来学习吧!

1.uniquekey 作用:当 add doc 的时候,配置了 uniqueKey,后面的 doc 中 uniqueKey 相同的会覆盖之前的 doc,

如果没有配置,那么将不会覆盖。update 的时候,依据 uniqueryKey 信息的话,

所以有 update 还是建议配上 uniqueKey,一来比较完整配置信息,二来数据排查也方便。

对应 id 这个域,必须 stored=true、indexed=true,类型建议使用 long 或者 int,而不是 string

如果有特殊场景需要按 id 排序的,就的使用 TriedLongField,否则排序时候会按文本序排序。

2. defaultSearchField, 故名思议就是默认查询的时候,查什么域。这句的用法体现在:

queryStr= content:abc 123,  等价 queryStr= content:abc title:123

queryStr= 123 等价 queryStr= title:123

也就是说等查询的时候,没有指定查那个域,默认就对应 defaultSearchField 了。

既然是 defaultSearchField,那么这个域 indexed=true 是必须的

注意区分 content:abc 123 与 content:”abc 123”以及 content:(abc 123)

3. 所有 int sint tint long slong tlong float sfloat tfloat double sdouble tdouble

都不支持分词,也无需分词。没有 sshort tshort,只有 short。因为这些基本类型就一个值,无需什么分词。

对与 int long fload Field,不应该出现 positionincrmentGap=100

对与 tint tlong tdoube 才有 pricisionStep、positionIncrementGap、sortMissingLast=”true”属性。

4. 配置分词

所有 TextField 才有机会分词

所有 TextField 才有机会执行 facet

所有 TextField 配置的 omitTermFreqAndPositions=”true”才会起效果,排序中频率位置信息没了

5. omitNorms=”true”这个参数影响域的得分,去掉之后,使得长短域相同词得分一致。按照香浓原理,

某个词出现在更长的文本中,或者出现次数越多,信息值更低。对应如果 omitNorms=false,那么

下面 淘宝 出现 doc1 淘宝杭州 出现 doc2 淘宝杭州网络有限公司,命中淘宝的时候,doc1 得分高于 doc2

注意:只有有一个域的 omitNorms=”false”, 等价所有域都保留了 omitNorms 这个位置,尽管 omitNorms 内容是空,

所有,omitNorms 在所有域都 omitNorms=“true”的时候,才对索引有帮助。

6. required=”true”

这个属性是说,一旦 scham 中该域启用 required=“true”, 那么建索引的时候,这个域时不能为空的,这个 doc 认为不完

整。当前走 dump 中心,会对 null 的赋值为””, 也就不会出现没有值的情况。但是 schema 中还是应该突出下,如果逻辑上

有需要确保某些字段必须有

7. multiValued=”true”

这个配置不是说某个域中 term 是单一 or 多个的意义。即使 mulitValued=false,一个 text 域同时可以是很长的

一段文本,也就是很多 term 的情况。multiValued=”true”真正含义是:在传入 doc 建索引的时候,当一个域

是 mulitValued=”true”,那么可以向该域继续 add 内容。等价在一个 doc 中,相同域名的 key:value 可以有

多个。通常情况下,使用 map,key 也就唯一了,不会出现多个相同 key,不同 value 的情况。

另外,配置了 mulitValued=”true”,在命中返回文档的时候,返回的是 list,而不是单个对象。

在终搜目前的建索引集中下,这个 multiValued 配与不配已经没有任何作用影响 dump 过程,只是在命中返回的时候

返回的是 list or 单个对象。

深入提示,multiValued=”true”在建索引的时候,实际上开辟了一个新的域,允许域名相同的域多次出现。

查询的时候会查询所有域名相同的域,这样导致检索性能会有一定影响,特别是域名膨胀之后,影响非常明显。

8. 特殊分词

对应提出#;:等分词,其实建议统一转化为空格分词,这是系统原生的分词,并且是基于编译器层的分词,性能更好。

没有必要为了一个 #,重新定制一份代码,部署起来。

9. 排序、区间、一般查询

排序的应该是数字类型,建议使用 trie 类型,老的 sortable 也是支持的

区间的也应该是数字类型的,建议使用 tried 类型

一般查询的多个数字组合的话,建议将数字字符化,然后空格分开,目前不支持数字类型的数组

10. date tdate 等类型

在配置 data tdate 等类型的时候,需要注意时间格式。

另外,不推荐直接保存,而是保存差值后的 int 类型等。

由于 data 精度控制不同,将使得所用 data 域的 term 成线性增长,这是相当恐怕的事情。

这个长尾将消耗非常大的内存、空间资源。

在索引中 term 线性的增长是相当恐怖的事情。对长尾的处理目前还没有特殊优化。

通用在索引中 term 聚集性的增长也是相当恐怖的事情,对长链处理目前也没有特殊优化。

11. 高级活

自我校验 schema 质量。

当 schema 配置完毕了,可以采取 terminatorquickstart 测试一下,然后 luke 工具查看下索引结构。

这样可能会发现一些问题。可能很多地方的结构可以尝试优化。

到此,关于“Solr schema 怎么编写”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注丸趣 TV 网站,丸趣 TV 小编会继续努力为大家带来更多实用的文章!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-24发表,共计2564字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 一级毛片一级毛片一级级毛片 | 欧美国产日韩久久久 | 亚洲国产精品一区二区首页 | 特别毛片| 成 人 黄 色 视频免费播放 | 国产在线19禁免费观看国产 | 国产三香港三韩国三级不卡 | 大伊香蕉精品一区视频在线 | 久久男女| 性欧美丰满熟妇xxxx性 | 亚洲av第一成肉网 | 国产精品对白交换视频 | 嫩草影院黄色 | 亚洲男同志gay 片可播放 | 亚洲精品视频免费 | 玩弄丰满少妇视频 | 国产目拍亚洲精品一区二区三区 | 日韩内射激情视频在线播放免费 | 免费久草| 亚洲av无码乱码在线观看裸奔 | a级毛片黄色 | 日本mature乱子视频 | 欧美成人中文字幕dvd | 亚洲天堂视频在线免费观看 | 风韵少妇性饥渴推油按摩视频 | 奇米777四色欧美成人 | 国产精品亚洲欧美大片在线看 | 成人免费视频一区 | 中文字幕人妻偷伦在线视频 | 国产萝控精品福利视频免费观看 | 四虎最新在线 | 国产做a爰片久久毛片 | 国产免费看插插插视频 | 亚洲精品一区二区三区四区 | 99久久久无码国产精品试看 | 欧美性猛交xxxx免费看 | 女人脱了内裤趴开腿让男躁 | 精品久久久视频 | 7777sq国产精品 | 国产精品免费看久久久香蕉 | 99久久精品国产免看国产一区 |