关于 SOLR 及其实际工作原理的一些问题!

Posted

技术标签:

【中文标题】关于 SOLR 及其实际工作原理的一些问题!【英文标题】:Some Q regarding SOLR and how it actually works! 【发布时间】:2010-01-11 11:30:03 【问题描述】:

我有一个分类网站,我目前在 mysql 表中有大约 10 万个广告。

我正在使用 php 来获取结果并将它们显示在页面上。 但是,我注意到搜索变得越来越慢。 这就是我计划安装和使用 SOLR 的原因,因为我听说过它的好消息。

但令我惊讶的是,我没有找到太多关于它是如何工作的信息...... 请回答这些关于 SOLR 的问题,并向我提供有关其工作原理的最多信息:

1- SOLR 和 mysql 表一样,只是更快?

2- 在使用 mysql 展示广告、插入广告、搜索广告等的网站上,是否需要将所有 mysql 都“绕过”到与 mysql 功能类似的 SOLR 功能?为了澄清,这里有一个例子: 如果我使用"SELECT * FROM table WHERE id=$id" 作为查询字符串来查询表,那么我是否必须使用与此类似的其他一些函数,但对于 SOLR?

3- 当用户“插入广告”时,他们被插入到 mysql 表中,是否也有这个功能,但对于 SOLR?

4- 搜索参数或搜索条件如何传递给 SOLR?

谢谢

【问题讨论】:

【参考方案1】:

Lucene 是一个全文索引服务和一个搜索引擎。 SOLR 是基于 Lucene 构建的服务,它允许您访问它,例如通过 PHP。 SOLR 是用 Java 实现的,它提供了一个用于从 PHP 集成的 Web 服务接口。或者,您可以使用搜索引擎的原生 PHP-implementation,但 Java 实现(SOLR 使用)更快且功能丰富。

您通常使用 Lucene/SOLR 作为关系数据库(如 MySql)的补充。典型的用例是您向 Lucene 索引发出查询,该索引返回一个 ID。然后可以使用此 ID 在您的数据库中查找相关条目。

【讨论】:

以上是关于关于 SOLR 及其实际工作原理的一些问题!的主要内容,如果未能解决你的问题,请参考以下文章

Java基础之String字符串的底层原理,面试常见问题

关于Canvas 关于最近工作中常有人问到一些问题

求解一个数学问题,及其背后的原理。

SEO 爬虫原理介绍

solr6.6教程-基础环境搭建

什么是Solr