热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Mongo-connector集成MongoDB到Solr实现增量索引

nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd

配置MongoDB复制集

部署一个用于测试和开发的复制集

部署复制集

1.为每个节点建立必要的数据文件夹: 

1 mkdir -p /srv/mongodb/rs0-0 /srv/mongodb/rs0-1 /srv/mongodb/rs0-2

2.通过下述命令来启动 mongod 实例:

第一个节点: 

mongod --port 27017 --dbpath /srv/mongodb/rs0-0 --replSet rs0 --smallfiles --oplogSize 128 --logappend --logpath /srv/mongodb/rs0-0/mongod.log &

第二个节点: 

mongod --port 27018 --dbpath /srv/mongodb/rs0-1 --replSet rs0 --smallfiles --oplogSize 128 --logappend --logpath /srv/mongodb/rs0-1/mongod.log &

第三个节点: 

mongod --port 27019 --dbpath /srv/mongodb/rs0-2 --replSet rs0 --smallfiles --oplogSize 128 --logappend --logpath /srv/mongodb/rs0-2/mongod.log &

3.我们可以通过下列命令来连接到第一个实例: 

mongo --port 27017

4.在 mongo 中使用 rs.initiate() 来初始化复制集。我们可以通过下列方式来设定复制集配置对象: 

rscOnf= {   
          _id: "rs0",   
          members: [   
                      {   
                      _id: 0,   
                      host: ":27017"   
                      }   
                    ]   
        }


5.将 替换为我们的主机名

rs.initiate( rsconf )

6.查看复制集配置

rs.conf()

7.使用 mongo 连接到 primary,并用过 rs.add() 命令来添加第二个和第三个 mongod 实例到复制集中。 将 替换为我们的主机名。

rs.add(":27018") 
rs.add(":27019")

8.通过 rs.status() 命令来检查复制集的状态。

安装Solr5.3

参考:《在CentOS下安装Solr5.3》 2015-09/123206.htm

安装Python2.7

参考:《在CentOS下安装Python2.7》2015-04/116593.htm

安装pip

参考:《在CentOS下安装pip》2015-09/123321.htm

安装mongo-connector 

方法一:使用pip安装

1 pip install mongo-connector

安装到了ython的默认包目录下:

/usr/local/lib/python2.7/site-packages

方法二:安装为服务

1. 去https://github.com/mongodb-labs/mongo-connector/archive/master.zip下载mongo-connector-master.zip。

2. 解压缩进入目录。

unzip mongo-connector-master.zip
cd mongo-connector-master

3. 编辑配置文件。

vi config.json

4. 安装为服务。

python setup.py install_service

在/etc/init.d下创建了mongo-connector服务,并拷贝config.json文件到/etc/mongo-connector.json。

卸载mongo-connector服务

python setup.py uninstall_service

它将移除/etc/init.d/mongo-connector和/etc/mongo-connector.json

查看服务状态

service mongo-connector status

配置Solr

在Solr数据目录/data/solr/data/下有Solr配置文件solr.xml

创建core

su - solr -c "/usr/local/solr/solr/bin/solr create -c card -n data_driven_schema_configs"

生成了文件夹/data/solr/data/card,在/data/solr/data/card/conf目录下是card的配置目录,可以配置同义词、停止词。

配置solrconfig.xml

1. 确保启用了LukeRequestHandler

以下行应用出现在solrconfig.xml文件中。

2. 配置硬提交(刷新到硬盘上的频率)和软提交(提交到内存中的频率)

在solrconfig.xml文件中配置


300000
10000
true



1000
60000

配置schema.xml

1. Mongo Connector存储元数据在每个文档中帮助处理回滚。为了支持这些数据,你需要添加如下信息到你的schema.xml中:


2. 在schema.xml中配置配置

启动mongo-connector

方法一:以命令行启动

nohup sudo mongo-connector -m localhost:27019 -t http://localhost:8983/solr/card -o oplog_progress.txt -n example.card -u _id -d solr_doc_manager > mongo-connector.out 2>&1

方法二:以服务启动

service mongo-connector start

Solr删除全部索引

http://192.168.11.52:8983/solr/card/update/?stream.body=%3Cdelete%3E%3Cquery%3E*:*%3C/query%3E%3C/delete%3E&stream.cOntentType=text/xml;charset=utf-8&commit=true

更多MongoDB相关内容可以看看以下的有用链接: 

MongoDB 3.0 正式版发布下载  2015-03/114414.htm

CentOS编译安装MongoDB 2012-02/53834.htm

CentOS 编译安装 MongoDB与mongoDB的php扩展 2012-02/53833.htm

CentOS 6 使用 yum 安装MongoDB及服务器端配置 2012-08/68196.htm

Ubuntu 13.04下安装MongoDB2.4.3 2013-05/84227.htm

MongoDB入门必读(概念与实战并重) 2013-07/87105.htm

Ubunu 14.04下MongoDB的安装指南 2014-08/105364.htm

《MongoDB 权威指南》(MongoDB: The Definitive Guide)英文文字版[PDF] 2012-07/66735.htm

Nagios监控MongoDB分片集群服务实战 2014-10/107826.htm

基于CentOS 6.5操作系统搭建MongoDB服务 2014-11/108900.htm

MongoDB 的详细介绍:请点这里
MongoDB 的下载地址:请点这里


推荐阅读
  • 本文整理了一份基础的嵌入式Linux工程师笔试题,涵盖填空题、编程题和简答题,旨在帮助考生更好地准备考试。 ... [详细]
  • 本文介绍了如何查看PHP网站及其源码的方法,包括环境搭建、本地测试、源码查看和在线查找等步骤。 ... [详细]
  • 2020年9月15日,Oracle正式发布了最新的JDK 15版本。本次更新带来了许多新特性,包括隐藏类、EdDSA签名算法、模式匹配、记录类、封闭类和文本块等。 ... [详细]
  • HTTP(HyperTextTransferProtocol)是超文本传输协议的缩写,它用于传送www方式的数据。HTTP协议采用了请求响应模型。客服端向服务器发送一 ... [详细]
  • 本文详细介绍了如何在 Linux 系统上安装 JDK 1.8、MySQL 和 Redis,并提供了相应的环境配置和验证步骤。 ... [详细]
  • 基于iSCSI的SQL Server 2012群集测试(一)SQL群集安装
    一、测试需求介绍与准备公司计划服务器迁移过程计划同时上线SQLServer2012,引入SQLServer2012群集提高高可用性,需要对SQLServ ... [详细]
  • 本文详细介绍了在 Ubuntu 系统上搭建 Hadoop 集群时遇到的 SSH 密钥认证问题及其解决方案。通过本文,读者可以了解如何在多台虚拟机之间实现无密码 SSH 登录,从而顺利启动 Hadoop 集群。 ... [详细]
  • Python 数据可视化实战指南
    本文详细介绍如何使用 Python 进行数据可视化,涵盖从环境搭建到具体实例的全过程。 ... [详细]
  • 在优化Nginx与PHP的高效配置过程中,许多教程提供的配置方法存在诸多问题或不良实践。本文将深入探讨这些常见错误,并详细介绍如何正确配置Nginx和PHP,以实现更高的性能和稳定性。我们将从Nginx配置文件的基本指令入手,逐步解析每个关键参数的最优设置,帮助读者理解其背后的原理和实际应用效果。 ... [详细]
  • Web开发框架概览:Java与JavaScript技术及框架综述
    Web开发涉及服务器端和客户端的协同工作。在服务器端,Java是一种优秀的编程语言,适用于构建各种功能模块,如通过Servlet实现特定服务。客户端则主要依赖HTML进行内容展示,同时借助JavaScript增强交互性和动态效果。此外,现代Web开发还广泛使用各种框架和库,如Spring Boot、React和Vue.js,以提高开发效率和应用性能。 ... [详细]
  • Kafka 是由 Apache 软件基金会开发的高性能分布式消息系统,支持高吞吐量的发布和订阅功能,主要使用 Scala 和 Java 编写。本文将深入解析 Kafka 的安装与配置过程,为程序员提供详尽的操作指南,涵盖从环境准备到集群搭建的每一个关键步骤。 ... [详细]
  • 本文介绍了如何在 Windows 系统上利用 Docker 构建一个包含 NGINX、PHP、MySQL、Redis 和 Elasticsearch 的集成开发环境。通过详细的步骤说明,帮助开发者快速搭建和配置这一复杂的技术栈,提升开发效率和环境一致性。 ... [详细]
  • 本文探讨了 Kafka 集群的高效部署与优化策略。首先介绍了 Kafka 的下载与安装步骤,包括从官方网站获取最新版本的压缩包并进行解压。随后详细讨论了集群配置的最佳实践,涵盖节点选择、网络优化和性能调优等方面,旨在提升系统的稳定性和处理能力。此外,还提供了常见的故障排查方法和监控方案,帮助运维人员更好地管理和维护 Kafka 集群。 ... [详细]
  • 求助:在CentOS 5.8系统上安装PECL扩展遇到问题
    在 CentOS 5.8 系统上尝试安装 APC 扩展时遇到了问题,具体表现为 PECL 工具无法正常工作。为了确保顺利安装,需要解决 PECL 的相关依赖和配置问题。建议检查 PHP 和 PECL 的版本兼容性,并确保所有必要的库和开发工具已正确安装。此外,可以尝试手动下载 APC 扩展的源代码并进行编译安装,以绕过 PECL 工具的限制。 ... [详细]
  • 包含phppdoerrorcode的词条 ... [详细]
author-avatar
伊华Zhu
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有