elasticsearch同步mongodb--mongo connector的使用

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
云数据库 MongoDB,独享型 2核8GB
推荐场景:
构建全方位客户视图
简介: elasticsearch同步mongodb--mongo connector的使用

部署准备


python-3.6.4-amd64.exe


mongodb-win32-x86_64-3.4.6-signed.msi  (如果已经安装可以忽略)


注意点!


之前我写的一篇文章用的是elasticsearch 6.0版本的。但是mongo connector只支持到5.x版本,因此我选用了5.5版本。


另外mongodb作为副节点不可有额外的数据库,使用前请保证清空。


Mongodb副本集搭建(已搭建可忽略)


步骤1:在两台服务器上安装好 mongodb-win32-x86_64-3.4.6-signed.msi ,安装好的目录新建一个配置文件mongodb.config,


内容如下


1

2

dbpath=C:\Program Files\MongoDB\Server\3.4\data\db

logpath=C:\Program Files\MongoDB\Server\3.4\data\log\mongo.log


步骤2:同时根据上面配置文件里的路径新建相应的文件夹db、log。调出cmd->


1

"C:\Program Files\MongoDB\Server\3.4\bin\mongod"--config  "C:\Program Files\MongoDB\Server\3.4\bin\mongodb.config"--serviceName "mongodb"--install --replSet myDevReplSet

 

注意!上面安装服务路径是绝对路径,而且replSet名称在两台服务必须保证相同。

调出服务界面,启动mongodb。


步骤3:选择其中一个节点作为主节点。


可以通过cmd或者工具连接到mongodb,我用的是robo 3T。使用敲出以下命令:


1

2

3

4

5

6

7

8

config = {

    _id : "myDevReplSet",

    members : [

        {_id : 0, host : "192.168.20.80:27017"},

        {_id : 1, host : "192.168.15.32:27017"}

     ]

 }

rs.initiate(config)<br data-filtered="filtered">#查看集群状态<br data-filtered="filtered">rs.status()


安装Python


安装已经下载好的 python-3.6.4-amd64.exe ,调出cmd->


1

2

3

pip install elastic2-doc-manager[elastic5]

#等待安装完毕<br data-filtered="filtered">

pip install mongo-connector[elastic5]<br data-filtered="filtered"><br data-filtered="filtered">mongo-connector -m 192.168.20.80:27017 -t 192.168.20.81:9200 -d elastic2_doc_manager

 

将会有log输出到相应位置,可以打开查看,如果输出以下日志,并且任务管理器显示了mongo-connector进程,证明启动成功。


image.png


结尾


搭建的时候,遇到不少阻力,搭建时竟然保证版本的对应性。其次mongo connector的同步效率并不如意,而且是单线程跑的,偶尔会挂,有需求的可以写一个守护进程程序提高可用性。


相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
目录
相关文章
|
4月前
|
运维 监控 NoSQL
【MongoDB 复制集秘籍】Secondary 同步慢怎么办?深度解析与实战指南,让你的数据库飞速同步!
【8月更文挑战第24天】本文通过一个具体案例探讨了MongoDB复制集中Secondary成员同步缓慢的问题。现象表现为数据延迟增加,影响业务运行。经分析,可能的原因包括硬件资源不足、网络状况不佳、复制日志错误等。解决策略涵盖优化硬件(如增加内存、升级CPU)、调整网络配置以减少延迟以及优化MongoDB配置(例如调整`oplogSize`、启用压缩)。通过这些方法可有效提升同步效率,保证系统的稳定性和性能。
111 4
|
7月前
|
Oracle NoSQL 关系型数据库
实时计算 Flink版产品使用合集之MongoDB CDC connector的全量快照功能可以并发读取吗
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
128 2
|
3月前
|
存储 自然语言处理 关系型数据库
ElasticSearch基础3——聚合、补全、集群。黑马旅游检索高亮+自定义分词器+自动补全+前后端消息同步
聚合、补全、RabbitMQ消息同步、集群、脑裂问题、集群分布式存储、黑马旅游实现过滤和搜索补全功能
|
4月前
|
C# 开发者 Windows
全面指南:WPF无障碍设计从入门到精通——让每一个用户都能无障碍地享受你的应用,从自动化属性到焦点导航的最佳实践
【8月更文挑战第31天】为了确保Windows Presentation Foundation (WPF) 应用程序对所有用户都具备无障碍性,开发者需关注无障碍设计原则。这不仅是法律要求,更是社会责任,旨在让技术更人性化,惠及包括视障、听障及行动受限等用户群体。
96 0
|
5月前
|
分布式计算 DataWorks NoSQL
DataWorks产品使用合集之怎么离线同步MongoDB的增量数据
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
5月前
|
自然语言处理 运维 NoSQL
MongoDB集群同步
实现 MongoDB Cluster-to-Cluster 即集群同步的工具是:mongosync 详情可参考如下官方文档: https://www.mongodb.com/zh-cn/docs/cluster-to-cluster-sync/current/quickstart/ 以上这个地址的文档一看就是机器翻译的,可能有不恰当的地方,但基本可参考使用。 以下是本次在某项目地配置集群同步的简要步骤,可参考使用。
95 6
|
6月前
|
NoSQL 关系型数据库 Java
实时计算 Flink版产品使用问题之如何使用Flink MongoDB Connector连接MongoDB
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
6月前
|
NoSQL 测试技术 MongoDB
使用同步和异步方式更新插入MongoDB数据的性能对比
在这篇文章中,我将探讨如何使用同步和异步方式插入数据到MongoDB,并对两种方式的性能进行对比。并将通过Python中的 pymongo 和 motor 库分别实现同步和异步的数据插入,并进行测试和分析。
|
6月前
|
JSON DataWorks 关系型数据库
DataWorks操作报错合集之同步Elasticsearch数据报错:Cat response did not contain a JSON Array,是什么导致的
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
5月前
|
Java DataX 开发工具
datax-elasticsearch 同步踩坑记录
为了用datax同步es数据到其他地方,踩了不少坑.记录一下.
245 0