solr搜索之入门及原理(一)

1      solr简介

solr官方文档:http://wiki.apache.org/solr/DataImportHandler

下载地址:http://www.apache.org/dyn/closer.cgi/lucene/solr/

2      solr入门

我们使用的是:solr4.10.2,下载zip压缩包,解压到指定目录下

解压:

2.1    solr安装

1,将解压的solr-4.10.2/文件夹复制到D盘下;

2,进入:D:\solr-4.10.2\example 目录下

3,运行cmd(在D:\solr-4.10.2\example目录下)

4,执行命令:java –jar start.jar

5,打开浏览器,访问:http://localhost:8983/solr/

6,solr安装成功!

2.2    导入数据

solr安装完成后是没有数据的,需要导入一些数据进去方便我们学习。

运行--》cmd--》cd d:\solr-4.10.2\example\exampledocs

再输入命令:java –jar post.jar solr.xml monitor.xml

执行命令:java –jarpost.jar solr.xml monitor.xml  执行post.jar 给定两个参数配置文件:solr.xmlmonitor.xml

在solr浏览器中查看是否已经导入成功:

OK

3      solr详解

查看浏览器solr界面:

Dashboard(仪表板):显示solr运行状态的信息。

Logging: solr运行相关日志信息

Core Admin:solr的core管理,类似于数据库,可以创建多个,用于保存数据,配置等。

Java properties:java 相关运行参数

Thread Dump: 线程副本,可以看出当前线程运行情况!可以帮助排查线上问题。

面试题:使用java开发项目,linux发布上线后,项目正常运行一段时间后,发现java进程存活,没有日志信息输出。怎么排查问题?答案:查看java虚拟机当前线程情况,可能程序卡在了某个线程上面,比如:死锁等。

3.1    示例example目录简介

进入solr/目录:

collection1就是我们导入的数据。进入collection1/:

3.2    core管理

solr中的Core Admin相当于mysql中的各个数据库,可以创建多个。

Core是solr中最为重要的一个概念,一个solr应用可以部署多个core。

每个core里面包含2个目录,conf和data,用于存放配置文件和数据。

Core的核心配置文件有2个,solrconfig.xml和schema.xml,分别用于solr的配置以及数据格式定义。

Core Selector:core选择器

collection1 core数据界面:

3.3    solr默认的web容器

dos命令:java –jar start.jar会启动默认的容器:jetty

Jetty 是一个开源的servlet容器,它为基于Java的web容器,例如JSP和servlet提供运行环境。Jetty是使用Java语言编写的,它的API以一组JAR包的形式发布。开发人员可以将Jetty容器实例化成一个对象,可以迅速为一些独立运行(stand-alone)的Java应用提供网络和web连接。

jetty适合开发小应用,不适合生产环境使用。

3.4    配置solr域名访问

配置host:

配置nginx:

访问:http://solr.demo.com/solr

更改solr配置,可以直接用域名访问:

更改:D:\solr-4.10.2\example\contexts\solr-jetty-context.xml配置文件

重新启动solr
http://solr.demo.com/访问:

时间: 2024-10-10 12:37:20

solr搜索之入门及原理(一)的相关文章

Solr搜索技术

Solr搜索技术 今日大纲 回顾上一天的内容: 倒排索引 lucene和solr的关系 lucene api的使用 CRUD 文档.字段.目录对象(类).索引写入器类.索引写入器配置类.IK分词器 查询解析器.查询对象(用户要查询的内容).索引搜索器(索引库的物理位置).排名文档集合(包含得分文档数组) 六种高级查询(相似度查询) 分词器(扩展词典.停用词典) 分页 得分(激励因子(作弊)) 高亮 排序 ●    Solr简介.运行 ●    Solr基本使用 ●    Solr Core 配置

Solr搜索结果说明 (转)

在admin页面,输入相关内容后,会返回xml格式的内容.说明如下: <?xml version="1.0" encoding="UTF-8"?> <response> <lst name="responseHeader"> <int name="status">0</int> <int name="QTime">3</int&g

JAVA环境下利用solrj二次开发SOlR搜索的环境部署常见错误

问题一:出现控制台坏的响应错误一Bad request 控制台出现错误如下: Bad Request request: http://hostIP:8983/solr/update?wt=javabin&version=1 解决方法: 出现以上错误的原因是,solr服务器上配置的Field和javabean提交的Field不能对应, 导致solr服务器找不到域,拒绝访问. 打开SOLR_HOME下的conf文件夹找到schema.xml文件,在其中添加对应的域. 例如以下代码添加了:title,

solr搜索之tomcat运行solr(五)

1      tomcat上运行solr 准备环境: apache-tomcat-7.0.77.zip, solr-4.10.2.zip, java version:1.7 下载tomcat:http://tomcat.apache.org/ 下载solr:http://lucene.apache.org/solr/ or  http://www.apache.org/dyn/closer.cgi/lucene/solr/ ====================================

React Native 从入门到原理一

React Native 从入门到原理一 React Native 是最近非常火的一个话题,介绍如何利用 React Native 进行开发的文章和书籍多如牛毛,但面向入门水平并介绍它工作原理的文章却寥寥无几. 本文分为两个部分:上半部分用通俗的语言解释了相关的名词,重点介绍 React Native 出现的背景和试图解决的问题.适合新手对 React Native 形成初步了解. 下半部分则通过源码(0.27 版本)分析 React Native 的工作原理,适合深入学习理解 React Na

分享《深度学习之TensorFlow:入门、原理与进阶实战》PDF+源代码

下载:https://pan.baidu.com/s/1zI-pblJ5dEwjGVe-QQP9hQ 更多资料:http://blog.51cto.com/3215120 <深度学习之TensorFlow:入门.原理与进阶实战>,李金洪 著.中文PDF,939页,带书签目录,文字可以复制粘贴.配套源代码. 如图: 原文地址:http://blog.51cto.com/14050756/2315854

solr搜索流程

一.solr搜索流程介绍 1. 前面我们已经学习过Lucene搜索的流程,让我们再来回顾一下 流程说明: 首先获取用户输入的查询串,使用查询解析器QueryParser解析查询串生成查询对象Query,使用所有搜索器IndexSearcher执行查询对象Query得到TopDocs,遍历TopDocs得到文档Document 2. Solr搜索的工作流程: 流程说明: 用户输入查询字符串,根据用户的请求类型qt(查询为/select)选择请求处理器RequestHandler,根据用户输入的参数

solr搜索结果转实体类对象的两种方法

问题:就是把从solr搜索出来的结果转成我们想要的实体类对象,很常用的情景. 1.使用@Field注解 @Field这个注解放到实体类的属性[字段]中,例如下面 1 public class User{ 2 /** 3 * id 4 */ 5 @Field 6 private String id; 7 /** 8 * 用户名 9 */ 10 @Field 11 private String userName; 12 /** 13 * 密码 14 */ 15 @Field 16 private S

.net中运用solr提升搜索效率(入门)

概述: 在开发网站的时候经常有要对某些内容查询的需求.此时如果基于数据库查询来做搜索功能,由于要对多个字段做模糊匹配,效率往往非常糟糕.这种情况就可以用Solr来提升搜索的效率.Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口.这里介绍下Solr的环境和配置,然后说下应用SolrNet客户端对Solr服务器的操作. 一.Solr安装 软件下载:Solr 5.0.JDK 7以上 安装jdk..Solr直接解压完,用命令行直接可以启动. 命令行中进入ser