• Mongo-Connector 安装及使用文档


    # Mongo-Connector 安装及使用文档

    ------

    > * 工具介绍
    > * 安装前准备
    > * 安装步骤
    > * 命令详解
    > * 有可能的坑
    > * 其他文档

    ------

    ###工具介绍
    mongo-connector工具创建一个从MongoDB簇到一个或多个目标系统的管道,目标系统包括:Solr,Elasticsearch,或MongoDB簇。
    该工具在MongoDB与目标系统间同步数据,并跟踪MongoDB的oplog,保持操作与MongoDB的实时同步。

    >项目源码:
    https://github.com/mongodb-labs/mongo-connector

    elastic2-doc-manager是Elastic2.x版本的文档管理器

    ------

    ###安装前准备
    1.MongoDB 必须开启副本集
    2.确保副本集运行正常

    ------

    ###安装步骤
    1.pip install mongo-connector
    2.pip install elastic2-doc-manager

    ------

    ###命令详解

    运行如下命令开启同步操作:
    >mongo-connector -m 127.0.0.1:27017 -t 127.0.0.1:9200 -d elastic2_doc_manager -n text.XXX

    命令详解:
    >-m mongodb的地址与端口,端口默认为27017
    >-t ES的地址与端口,端口默认为9200
    >-d doc manager的名称,2.x版本为: elastic2-doc-manager
    >-n text.XXX 表示同步text库中的XXX表 默认表示同步全部库的全部表
    >-i filed_name 待同步的字段。默认同步所有字段。

    ------

    ###有可能的坑

    1. 数据库A中有多个集合(A1, A2, A3),且已开启了副本集(Replica Set),但是集合A1可以同步,集合A2不能同步.
    原因:oplog中有A1的操作记录,没有A2的操作记录。
    结论:开启副本集(Replica Set)并不能保证一定能同步,oplog中必须包含待同步集合的操作记录,才能通过mongo-connector同步到Elasticsearch集群。

    2. mongodb3.x版本加强了安全机制,导致了在只拥有某个库的权限时不能同步数据的问题。
    原因:拥有某个库的权限,并不能拥有oplog的读取权限,而mongo-connector需要读取oplog的权限。
    结论:同步数据至少需要能够读取oplog的权限,确保当前mongodb用户的权限能够操作oplog,或者直接使用mongodb的管理员权限。

    ------


    ###其他文档

    1.Mongo与ES同步的5种方式:
    >https://www.linkedin.com/pulse/5-way-sync-data-from-mongodb-es-kai-hao

    2.mongodb 详细文档:
    >https://docs.mongodb.com/manual/tutorial/deploy-replica-set/

  • 相关阅读:
    算法复杂度(Algorithmic Complexity)
    Javascript引用指针
    树(Trees)
    什么是数据挖掘(What is Data Mining?)
    Javascript的声明
    Javascript继承(下)——干嘛要继承
    Linux 中使用 OpenCV
    Java集合类(Java Collections classes)
    哈希查找(Hashing)
    Javascript继承(上)——对象构建
  • 原文地址:https://www.cnblogs.com/shiyan123/p/5945211.html
Copyright © 2020-2023  润新知