`
liuquanjc
  • 浏览: 61615 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

搜索引擎solr研究-从数据库创建索引

阅读更多

solr功能非常强大,可以建立各种数据的索引,常见的企业应用中,少不了数据库的索引的创建,可以通过写程序 可以将数据读出100条,如果你的内存够大,可以是1000条甚至更多,然后放入Collection中,批量提交至solr。或者读取数据写入xml文件中,再将该文件提交到solr等等。但是,solr也只带了数据库创建索引的功能,步骤如下:

一、通过solr自带的example
准备工作:
1、在apache官网下载 apache-solr-1.3.0.zip
2、下载mysql、hsql驱动(下面例子会用到)

环境描述:
1、tomcat版本 6.0.29  位置:D:\tomcat6.0.29   设置环境变量:CATALINA_HOME=D:\tomcat6.0.29
2、jdk1.5

步骤:
1、解压缩apache-solr-1.3.0.zip copy apache-solr-1.3.0\example\solr  文件夹到D:\tomcat6.0.29,目录结构为D:\tomcat6.0.29\solr
2、copy apache-solr-1.3.0\dist\apache-solr-common-1.3.0.jar 到D:\tomcat6.0.29\webapps\,兵将apache-solr-common-1.3.0.jar 改为solr.jar,tomcat会自动解压缩该文件,生成solr文件夹,copy上面下载的mysql、hsql驱动包到D:\tomcat6.0.29\webapps\solr\WEB-INF\lib下
3、copy apache-solr-1.3.0\example\solr里面内容到 D:\tomcat6.0.29\solr里面
4、删除D:\tomcat6.0.29\solr\rss,修改D:\tomcat6.0.29\sorl\solr.xml  文件,去掉<core default="true" instanceDir="rrs" name="rrs"></core>该行
5、copy apache-solr-1.3.0\example\example-DIH 目录到D:\tomcat6.0.29,解压缩hsqldb.zip到当前文件夹,改文件为hsql数据库文件
6、到此,完成,

运行测试:
开始-运行  cmd  进入命令行,切换目录到D:\tomcat6.0.29,输入bin\startup.bat,启动tomcat6,如果上面配置无误,可以查看tomcat日志看是否有错误,确定无错后,在浏览器输入http://127.0.0.1:8080/solr/db/dataimport?command=full-import,既可以看到输出

二、测试mysql数据库
环境和创建的文件夹延续上面的
步骤:
1、在D:\tomcat6.0.29\solr下创建mysqltest文件夹,copy D:\tomcat6.0.29\solr\db 里面的内容到D:\tomcat6.0.29\solr\mysqltest
2、修改D:\tomcat6.0.29\solr\solr.xml文件内容为
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<solr sharedLib="lib" persistent="true">
    <cores adminPath="/admin/cores">
        <core default="true" instanceDir="mysqltest" name="mysqltest"></core>
    </cores>
</solr>
3、修改D:\tomcat6.0.29\solr\mysqltest\conf\db-data-config.xml 内容为:
<dataConfig>
     <dataSource type="JdbcDataSource" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://127.0.0.1:3306/test" user="root" password=""/> 
     <document name="mybook"> 
             <entity name="book" pk="id" query="select * from book"> 
             <field column="id" name="id" /> 
             <field column="bookname" name="bookname" /> 
             <field column="bookathor" name="bookathor" />
         </entity> 
     </document>
</dataConfig>
4、因为bookname、bookathor2个字段在D:\tomcat6.0.29\solr\mysqltest\conf\schema.xml不存在,所以,要增加着2个field
<field name="bookname" type="string" indexed="true" stored="true" required="true" />
   <field name="bookathor" type="string" indexed="true" stored="true" required="true" />
注意:在该文件有<field  的地方增加,

5、将D:\tomcat6.0.29\solr\mysqltest\conf\solrconfig.xml
中<dataDir>${solr.data.dir:./solr/mysqltest/data}</dataDir>
改为<dataDir>${solr.data.dir:./solr/db/data}</dataDir>

6、到此完成
运行测试:
开始-运行  cmd  进入命令行,切换目录到D:\tomcat6.0.29,输入bin\startup.bat,启动tomcat6,如果上面配置无误,可以查看tomcat日志看是否有错误,确定无错后,在浏览器输入http://127.0.0.1:8080/solr/mysqltest/dataimport?command=full-import,既可以看到输出。通过上面访问,就创建了数据库索引
可以访问http://127.0.0.1:8080/solr/mysqltest/admin/,在Query String: 输入id:搜索内容(格式为  要搜索的字段:搜索关键字)来测试是否已经将数据表中的数据建立了索引,也可以在该界面修改搜索的参数

最后在说说这个功能。上面的例子只不过是很简单的一个部分。针对solr的MultiCore,通过配置db-data-config.xml也可以实现,还有多表,或者多表关联等等操作只要在db-data-config.xml配置清楚都可以进行数据的导入。
在solr1.4中还有更多的扩展功能,这些功能为重建索引提供能很方便的操作。而且,datasource不单单指的是database,可以是xml文件,还可以是来自网络上的等等。

 

分享到:
评论

相关推荐

    solr-4.9.0-安装部署文档

    Apache Solr 是一款基于 Lucene 的开源搜索引擎,广泛用于企业级的数据检索、全文搜索和数据分析。本文将详细讲解如何在 Windows 7 64 位旗舰版上安装并部署 Solr 4.9.0 版本。 1. **准备环境和软件** - 首先,...

    solr-dataimporthandler的jar包

    Solr 数据导入处理器(DataImportHandler,DIH)是 Apache Solr 的一个重要组件,它允许用户从各种数据源,如关系型数据库、CSV 文件等,批量导入数据到 Solr 索引中。这个功能极大地简化了数据同步和更新的过程,...

    solr单机-tools.zip

    Solr,全称为Apache Solr,是一款开源的企业级全文搜索引擎,由Apache软件基金会开发并维护。这个名为"solr单机-tools.zip"的压缩包很可能包含了一套用于在单台机器上部署和管理Solr所需的工具和配置文件。Solr在...

    solr--4.10.3.tgz.tgz.rar

    Solr,全称为Apache Solr,是Apache软件基金会的一个开源项目,主要被设计为一个高效、可扩展的企业级全文搜索引擎。这个"solr--4.10.3.tgz.tgz.rar"文件包含了Solr 4.10.3版本的源代码和相关配置,是一个压缩包的...

    最新版linux solr-8.8.2.tgz

    Linux Solr 8.8.2 是一个针对大型文本数据集进行高效全文搜索和处理的开源平台。Solr 是由 Apache 软件基金会维护的一个项目,它...通过熟练掌握 Solr,你将能够构建强大而高效的全文搜索引擎,服务于各种业务场景。

    solr-dataimport-scheduler

    数据导入(DataImportHandler, DIH)是Solr的一项功能,允许从各种数据源(如关系型数据库、CSV文件等)导入数据,并创建或更新索引。DIH支持全量导入和增量导入,使得在数据发生变化时,Solr能够快速反映这些变化。...

    Solr数据库插入(全量和增量)索引

    Solr 是一个基于 Lucene 的搜索引擎,可以快速高效地对大量数据进行索引和查询。在实际应用中,我们需要将数据插入 Solr 索引库中,以便实现高效的搜索功能。本文将详细介绍 Solr 数据库插入全量和增量索引的方法和...

    apache-solr-ref-guide-7.4(官方英文-文字版本)

    Apache Solr 7.4 是一个功能强大的搜索引擎平台,不仅提供了丰富的文档管理和搜索功能,还支持多种高级特性,如分面搜索、高亮显示和拼写检查等。通过本参考指南的学习,用户可以全面掌握 Solr 的使用方法,并将其...

    solr-7.7.3配置详解,跟springboot整合 (二)

    Solr是Apache软件基金会开发的一款高性能、全文搜索引擎,它提供了分布式搜索、索引和分析大量数据的能力。在本篇中,我们将深入探讨Solr 7.7.3的配置细节,并了解如何将其与Spring Boot 2.x进行整合,构建一个高效...

    solr 企业搜索引擎教程

    - **构建索引**:通过API或命令行工具向Solr发送数据以创建索引。 - **搜索测试**:使用预定义的查询语句进行搜索并验证结果。 #### 12. Solr 的搜索引擎规划 - **业务模型定义**:根据业务需求定义数据模型。 - *...

    SolrJ6.3.0

    Solr 是一个流行的开源搜索引擎,用于处理和索引大量文本数据,提供高效、可扩展的全文搜索功能。SolrJ 提供了一组 Java API,可以用来创建、更新和查询 Solr 索引,以及执行其他管理任务。 在提供的压缩包文件中,...

    跟益达学Solr5之从MySQL数据库导入数据并索引

    - **索引**:Solr的核心功能是创建和管理索引,索引是搜索引擎的数据结构,用于快速查找和返回与查询相关的文档。 - **Document**:在Solr中,每个要索引的记录被称为一个Document,包含多个字段(Field),如标题...

    solr-8.1.1.zip

    作为一款强大的搜索引擎,Solr以其高效、可扩展性和灵活性在IT行业中广泛应用。这里我们关注的是Solr的8.1.1版本,这个版本在8.0.0的基础上进行了优化和改进,为Windows系统提供了支持。 1. **Solr的基本概念** - ...

    solr各种最近的jar包

    Solr,全称为Apache Solr,是Apache软件基金会的一个开源项目,主要用来处理全文搜索、企业级搜索和数据索引。它基于Java平台,利用Lucene库构建,提供了高效的、可扩展的搜索服务。在本压缩包中,包含了Solr的各种...

    solr7.4数据库导入Demo(mysql数据库)

    总的来说,这个Demo涵盖了Solr 7.4与MySQL的集成、数据导入和IK分词器的使用,帮助你搭建一个能够处理中文数据的全文搜索引擎。通过实践,你可以更好地理解Solr的数据处理流程以及如何优化中文搜索体验。

    solr-mongo-import-1.0和1.1以及mongo-Java-driver

    Solr和MongoDB是两种非常重要的开源技术,广泛应用于大数据处理和搜索引擎构建。Solr是Apache软件基金会的一个项目,提供高性能、全文本搜索能力。而MongoDB则是一种NoSQL数据库,以其灵活的数据模型和强大的文档...

    solr连接数据库配置

    Solr 是一个流行的开源全文搜索引擎,它允许开发者通过配置来实现高效的搜索功能。在Solr中,连接数据库是一项重要的配置,这使得我们可以将数据库中的数据导入到Solr中,以便进行快速检索。这篇博客“solr连接...

Global site tag (gtag.js) - Google Analytics