第九天的总结:
项目开发到第九天的时候 要完成项目的 一个 重要的 搜索的功能 我要做的是一个 搜索 模块
说到搜索的功能 的 往往 是一件在开发里比较费力的 的事情 传统的开发里 会在随着 网络在生活里的大大的普及
我们更加依赖网络带给我们的服务:这样 在服务器的承载 方面 消耗量过大 就会 状态不稳定
平常的搜索 比如 在百度的 日常搜索的 (有事问度娘)推荐 信息:方便带给我们工作与生活的便利,
百度之所以这么的强大, 是基于 他有强大的搜索的功能 (以上为;自写总结)用时12分钟 的 表述酝酿)
(官方原文)大多数搜索引擎应用都必须具有某种搜索功能,问题是搜索功能往往是巨大的资源消耗
并且它们由于沉重的数据库加载而拖垮你的应用的性能。
这就是为什么转移负载到一个外部的搜索服务器是一个不错的主意,Apache Solr是一
个流行的开源搜索服务器,它通过使用类似REST的HTTP API,这就确保你能从几乎任何编
程语言来使用solr。

  -------=========******** 当前 包里 的 solr 内容:*******==========-------

apache-tomcat-solr :----- tomcat 服务器:
solr-4.10.3:-----官方下载 的
solrhome:------存储空间
----中文分词器 的插件-------
-========= IK Analyzer 简介:IK 实现了简单的分词歧义排除算法,词典分词 与 模拟语义分词
IK Analyzer 是一个开源的,基亍 java 语言开发的轻量级的中文分词工具包
IK Analyzer 2012FF_hf1 – 里的 – IKAnalyzer2012FF_u1.jar
=-:在服务器 运行空间里 要配置的文件:=== 让你可以很好的找到 这些资源
apache-tomcat-solr\webapps\solr\WEB-INF\classes:

后缀名为dic的文件就是 词典类型 : 都可以打来进行编辑

  ext_stopword.dic :  停用词 词典 :规避的词, 英译 stopword停用词 省略词 禁用词 (输入这些字词 是没结果 的)
IKAnalyzer.cfg.xml : 配置文件  : 关联 与配置 这上下的2个  词典的  进行的是改名与位置 mydict.dic :   扩展词典 :

=====: IKAnalyzer.cfg.xml

<?xml version="1.0" encoding="UTF-8"?> IK Analyzer 扩展配置 mydict.dic;

 <!--用户可以在这里配置自己的扩展停止词字典-->
<entry key="ext_stopwords">ext_stopword.dic</entry>

=******* solrhome 的 schema.xml 文件,配置 ******=------------
–======== 1:配置 中文 解析器:IKAnalyzer
–======== 2: 配置 域
修改 solrhome 的 schema.xml 文件,配置一个 FieldType,使用 IKAnalyzer

我自己当前:solrhemo\collection1\conf 里的schema.xml 编辑: 到最后 里加上

基本的类型
—这里指定的 分析器 就是我们copy的jar 包里 放到里lib
–这个对应 --------就是添加到 tomcat 服务器 里 webapps 里 solr里 WEN-INF 里 lib 里-------IKAnalyzer2012FF_u1.jar 包 里的一个类

=====: 这是定义字段的类型 : 自定义的 :fieldType 标签里的 name=“text_ik”
: 如此这样 就完成了: 中文编辑器的定义 : 所有的逻辑都在依据 IKAnalyzer 进行了******

      **** 启动solr服务器 **** &&&&&&=========-------------

保存所添加的 开始重新启动 :apache-tomcat-solr\bin 点击 里的 startup.bat : 开启solr 服务器
----: 在浏览器里 输入:http://localhost:8080/solr


在浏览器里开始 用 (刷新一下 ) 在Analyse Fieldname / FieldType: 找到是我的定义 text_ik :就是刚才<fieldType name=“text_ik”

 -------=========: 示例 继续的进行中-----------。。。。。。。


在浏览器里开始 用 (刷新一下 ) 在Analyse Fieldname / FieldType: 找到是我的定义 text_ik :就是刚才<fieldType name=“text_ik”
要写在后面的里的原因是 很多的 的 前面都是 这些 字段类型

Test :------ http://localhost:8080/solr
Analyse Fieldname / FieldType:
text_ik
--------------下拉框的内容:(部分) -------
root
version
author
cat
category
comments
content
content_type
description
features
id
inStock
includes
keywords
last_modified
links
manu
manu_exact
name
payloads
popularity
price
resourcename
sku
store
subject
text
text_rev
title
url
weight
_bbox_coord
alphaOnlySort
ancestor_path
bbox
binary
boolean
currency
date
descendent_path
double
float
ignored
int
location
location_rpt
long
lowercase
managed_en
payloads
phonetic
point
random
string
tdate
tdouble
text_es
text_hi
text_hu
text_hy
text_id
text_ik =============这是 我们的自定义的
text_it
text_ja

: 输入的: 封红卫简单点
解析的格式是:

基于项目 搜索 查询 的 demo:
开始上搜索 的 罗列 都要的是那些 ==== 是否 需要查询的那些
id :SKU Y
title:标题 Y
price :价格 Y
image: 图片地址 N
brand: 品牌 Y
seller :商家名称 Y
category:商品分类:Y
goodsId : SPU 要存入的 低级要进入的具体的信息额就是 SPU
的信息 : 因为 整个 页面就是SPU 的
定义的时候加就一个 item_ 通过 加前缀 以避免重复 的
(使用之前的,还很麻烦 , 要找 的)
自web.xml: 里进行 配置 的

 ======****** 继续在 :solrhemo\collection1\conf\schema.xml: 里  配置  域

-----=====:$$确定一个域的时候要考虑的:分词搜索的词确定一个域 的时候 要考虑的 : 分词 搜索的词 确定一个域的时候要考虑的:分词搜索的词$$ ======-------
– 常规用的 就是: name type indexed stored

-----====solr Tomcat服务器里 solrhemo\collection1\conf\schema.xml:------- 编写的----- schema: 模式

<field name="item_goodsid"type="long" indexed="true" stored="true"/>
<field name="item_title"type="text_ik" indexed="true" stored="true"/>
<field name="item_price"type="double" indexed="true" stored="true"/>
<field name="item_image"type="String" indexed="false" stored="true"/>
<field name="item_brand"type="String" indexed="true" stored="true"/>
<field name="item_seller"type="text_ik" indexed="true" stored="true"/>
<field name="item_category"type="String" indexed="true" stored="true"/>

-------------------------------- 重新 的复制的 -------

<field name="item_goodsid" type="long" indexed="true" stored="true"/>
<field name="item_title" type="text_ik" indexed="true" stored="true"/>
<field name="item_price" type="double" indexed="true" stored="true"/>
<field name="item_image" type="string" indexed="false" stored="true" />
<field name="item_category" type="string" indexed="true" stored="true" />
<field name="item_seller" type="text_ik" indexed="true" stored="true" />
<field name="item_brand" type="string" indexed="true" stored="true" /><field name="item_keywords" type="text_ik" indexed="true" stored="false" multiValued="true"/>

---------=* 复制域的*===------- 关联 的作用 将
需求: 上面的关键字的 是什么:多条件 查询:或者的是分类 或者是标题
事先配好了 :
分两步 :
1: 定义复制域
<field name=“item_keywords” type=“text_ik” indexed="true” stored:=“false”multiValued=“true”/>
stored:=“false”只对这一个域进行的 : 无需 物理存储 不占存储空间
multiValued=“true”:肯定是多个 将多个 指向此复制域
2: 将要复制的与 指定到 复制的域 里
< copyField source=“” dest=“item_keywords”/>
copyField source=“”:不同的要被复制的资源 dest=“”就是 复制域的name值 dest目的 对象
知识逻辑理论上的复制 而不是物理的上的 复制
完成的实例;

--------=**** 动态域 :****=------

今天 主要用的是 普通域 就是数据库里的 字段
配置字段的 ,

域 的name域 名 type 类型 stored:

indexed L是否建立 索引 : 当要建立搜索的时候就会 ,
比如 具体商品 所要的 搜索 true :, 而类似与图片地址的 就是 failse(因为这些 数据存在只是为了搜索))
当然也可以指定为 刚才 的 , 要搜索 与 复赋值域 : 来源于其他的域
String在 这里的 配置的 类型 ctrl+F 查找的是 ;
也就是在这里的 配置的,才会在 这里 出现
别的配好的并不是我们需要的 , 所以 就是自己配的 ===自定义域

完全的是一个不固定的 : 很灵活的 — 对应关系型数据库 ====解决的是规格的问题 7

配置 的是: dynamic :n. 动态;动力
<dynamicField name=“item_spec_*” type=“string” indexed=“true” stored=“true”
主要配置的是: 前半部的就可以固定 的 后面的就是随意的非固定的
=====特点就在 前半部:dynamicField name=“item_spec_*” : dynamicFiled name值的 * 号 后缀

Test :------ 保存本重新启动的之后 浏览器里 : 输入: http://localhost:8080/solr
在项目里 的 源码图片

已搜索的 开发版 法人 示例 图片(
要写在后面的里的原因是 很多的 的 前面都是 这些 字段类型
18:04 2019/1/16: 封红卫:

项目里 基于solr搜索服务的认识相关推荐

  1. solr搜索服务的使用

    1. 了解搜索技术 1.1 搜索引擎 所谓搜索引擎,就是根据用户需求与一定算法,运用特定策略从互联网检索出制定信息反馈给用户的一门检索技术.搜索引擎依托于多种技术,如网络爬虫技术.检索排序技术.网页处 ...

  2. Android 项目开发 基于Web Service 服务的中英翻译软件(三) Web Service服务 Ksoap2 项目...

    关于Web Service Android 应用通常是运行手机平台上,手机系统的硬件资源远远比不上PC平台,不管是存储能力还是计算能力,在Android平台上运行一些小的应用时可能的,但对于需要进行大 ...

  3. 淘东电商项目(47) -商品搜索服务功能的实现(集成拼音分词器)

    引言 本文代码已提交至Github,有兴趣的同学可以下载来看看:https://github.com/ylw-github/taodong-shop 在上一篇博客<淘东电商项目(46) -商品搜 ...

  4. 基于Java微服务方案的商品秒杀系统

    前言 项目是基于Java微服务方案的商品秒杀系统.是前后端分离的项目,前端用React,后端为Java的微服务架构.项目本身用于学习,在一些地方还不够成熟,欢迎各位多多交流. 客户端前端服务器 后台系 ...

  5. 基于Solr空间搜索

    概括: 最近一个项目需要基于LBS查询附近的商铺信息,看了一下网上都是基于Solr和ELS方式来实现, 本来想使用ELS来实现的,但是由于项目以前用的是Solr, 所以就去调研了一下基于Solr来实现 ...

  6. 【项目介绍】ElasticSearch7+Spark 构建高相关性搜索服务千人千面推荐系统

    我做的项目是在慕课网买的 项目介绍 项目需求背景:模仿大众点评应用提供用户线下搜索推荐服务门店的需求 技术选型:后端业务:SpringBoot:后端存储:MySQL.mybatis接入:搜索系统:El ...

  7. Openlayers 地名搜索、坐标搜索、行政区划等服务-基于天地图Web服务

    Openlayers 地名搜索.坐标搜索.行政区划等服务-基于天地图Web服务 OpenLayers 教程 Openlayers 使用天地图Web服务 在线示例 OpenLayers 教程 天地图作为 ...

  8. java项目: ElasticSearch+Spark构建高相关性搜索服务千人千面推荐系统

    文章目录 1 概述 2 需求分析 3 项目基础搭建[业务系统之基础能力] 4 用户服务.运营后台.商户服务的搭建 用户模型前后端 运营后台 商户入驻: 商户创建.商户查询.商户禁用 5 基础服务: 品 ...

  9. 基于Solr的空间搜索学习笔记

    基于Solr的空间搜索学习笔记 在Solr中基于空间地址查询主要围绕2个概念实现: (1) Cartesian Tiers 笛卡尔层 Cartesian Tiers是通过将一个平面地图的根据设定的层次 ...

最新文章

  1. 小甲鱼python数字游戏给三次机会_【python 入门案例】小甲鱼python入门 猜数字游戏...
  2. [Python]小甲鱼Python视频第003课(插曲之变量和字符串)课后题及参考解答
  3. VMwareWorkstation设置U盘启动(或U盘使用)
  4. 反序列化层遍历二叉树
  5. 【链表】【树形DP】最大利润(jzoj 1487)
  6. [Leetcode][第679题][JAVA][24点游戏][回溯][暴力]
  7. python爬虫更换ip_爬虫务必要改ip吗?
  8. 【ARM-Linux开发】libxml/parser.h: 没有那个文件或目录解决方案
  9. Gateway过滤器详解
  10. Typora图片云存储
  11. 爬虫第二弹:千图网电商淘宝模板图片下载
  12. 2018.11.4 东华杯(骇极) REVERSE What's it wp
  13. Fuchsia OS简介
  14. 关于微信小程序第三方客服接入调查
  15. 弘辽科技:直通车如何降低PPC
  16. 丢手帕问题 java_丢手帕问题java 实现
  17. Pycharm激活步骤
  18. 022kuo_zhan_guan_li_qi
  19. 手机网络专业测试软件,3个专业网速测试APP,免费无广告
  20. 汽车级三相无传感器、无刷直流(BLDC)电机控制器A4962

热门文章

  1. 【大数据哔哔集20210124】有人问我Kafka Leader选举?我真没慌
  2. 神经网络预测参数有哪些,神经网络预测参数包括
  3. 中创软件哪个部分是外包_什么是外包| 第1部分
  4. 大学生计算机应用基础实验6,计算机应用基础实验6.doc
  5. Oracle数据库初学者入门教程
  6. PMP 第六章 项目时间管理
  7. SQL高级教程(三十)- - SQL NULL 函数
  8. navicat转换word表格
  9. 稠密的方法之一:洗洁精6502透明液态增稠剂
  10. 懒人笔记—python基础语法1