1. 程式人生 > >MongoDB與Elasticsearch實現實時同步

MongoDB與Elasticsearch實現實時同步

Step1:安裝mongo-connector和elastic-doc-namager外掛

pip installmongo-connector

#Elasticsearch 1.x

pip install 'mongo-connector[elastic]'

#Elasticsearch 2.x

pip install 'mongo-connector[elastic2]'

#Elasticsearch 5.x

pip install 'mongo-connector[elastic5]'

Step2:設定MongoDB複製集(在搭建MongoDB複製集叢集時已經做好)

Step3:Elasticsearch與MongoDB開啟同步

# mongo-connector-m MongoDB_IP: MongoDB_port-tElasticsearch_IP: Elasticsearch_port-delastic2_doc_manager

 注:-m,-t分別為MongoDB和Elasticsearch的ip地址和埠

         -d:doc_manager的名稱,2.x版本為elastic_2_doc_manager

Step4:同步驗證:

(1)MongoDB端先插入資料

#Mongo建立資料庫(對應ESIndex

rs0:PRIMARY>use test_index

switched to dbtest_index

#Mongo

中插入資料(其中col_02對應ES中的Type

rs0:PRIMARY>db.col_02.insert({name:"zhangsan", birth:"1964-03-21", sex:"man", company:"baidu"});

WriteResult({ "nInserted" : 1 })

rs0:PRIMARY>db.col_02.insert({name:"lisi", birth:"1954-03-21", sex:"man", company:"huawei"});

(2)視覺化檢視及ES端檢索驗證

# curl -XGEThttp://es_ip:9200/test_index/col_02/_search?pretty

{

"took":4,

"timed_out":false,

"_shards": {

"total":8,

"successful":8,

"failed":0

  },

"hits": {

"total":2,

"max_score":1.0,

"hits": [ {

"_index":"test_index",

"_type":"col_02",

"_id":"577b7d8ceb8e3dc2d1db12a9",

"_score":1.0,

"_source": {

"company":"huawei",

"name":"lisi",

"birth":"1954-03-21",

"sex":"man"

  }

  }, {

"_index":"test_index",

"_type":"col_02",

"_id":"577b7d4aeb8e3dc2d1db12a7",

"_score":1.0,

"_source": {

"company":"baidu",

"name":"zhangsan",

"birth":"1964-03-21",

"sex":"man"

  }

  } ]

  }

}

相關推薦

MongoDBElasticsearch實現實時同步

Step1:安裝mongo-connector和elastic-doc-namager外掛pip installmongo-connector#Elasticsearch 1.xpip install 'mongo-connector[elastic]'#Elasticsea

29.mongo-connector實現MongoDBelasticsearch實時同步(ES非關係型資料庫同步)

引言:驗證表明:mongo-connector工具支援MongoDB與ES之間的實時增insert、刪delete、改update操作。 對於歷史資料,mongo-connector工具不能同步到ES中,根因是本身工具不支援(初步界定),還是沒有這種場景,待查(進一步研究後再

mongo-connector實現MongoDBelasticsearch實時同步深入詳解

引言: 驗證表明:mongo-connector工具支援MongoDB與ES之間的實時增insert、刪delete、改update操作。 對於歷史資料,mongo-connector工具不能同步到ES中,根因是本身工具不支援(初步界定),還是沒有這種場景,

Centos利用 rsync+inotify實現實時同步

rsync inotify 1.1 inotify介紹inotify是一種強大的、細粒度的、異步的文件系統事件控制機制。linux內核從2.6.13起,加入了inotify支持,通過inotify可以監控文件系統中添加、刪除、修改、移動等各種事件,利用這個內核接口,第三方軟件就可以監控文件系統下文件的

RSYNC04-配置rsync+inotify實現實時同步

cccccc ror 編譯速度 響應 大於 grep 軟件開發 介紹 cdn 1,背景介紹 Linux內核從2.6.13版本開始提供了inotify通知接口,用來監控文件系統的各種變化情況,如文件存取、刪除、移動等。利用這一機制,可以非常方便地實現文件異動告警、

rsync+inotify實現實時同步

rsync inotify 一、前期準備 1、準備兩臺主機,我這裏的系統是rhel7,分別是192.168.4.11和192.168.4.22二、rsync命令的用法:1、基本格式: rsync [選項] 目錄1/ 目錄2/ 註意加斜線和不加斜線的區別,加斜線就是只同步目錄下的文件2、

inotify+rsync實現實時同步並郵件通知

代碼 moni 創建目錄 存在 echo ets selinux 5.0 from 服務器之間文件實時同步,監控文件的變化,發送郵件通知,並實時同步文件。 由於人工同步多臺服務器的文件比較吃力,可以借助這樣一套軟件,自動化的實現這樣的工作。 並且可以事實監控變化發送郵件

sersync+rsync實現實時同步備份

sersync+rsync實現實時同步備第一個裏程:下載安裝sersync軟件 先進行軟件下載,把軟件包上傳到系統中 unzip sersync_installdir_64bit.zip cd sersync_installdir_64bit mv sersync /usr/local/ tree 第二個裏

rsync+inotify實現實時同步、增量備份

version rev pts 常用 無需 ESS 成功 dex http 主機A:被備份的源主機主機B:備份的目的主機 在linux內核中,默認的inotify機制提供了三個調控參數 [root@fudanwuxi html]# uname -r 3.10.0-69

inotify+rsync實現實時同步(附解決crontab中無法執行python指令碼的問題)

1.準備環境 # 系統支援的話,下面的目錄就會存在 ls /proc/sys/fs/inotify/ rpm -qa inotify-tools yum -y install inotify-tools 2.inotifywait監控目錄狀態變化 /usr/bin/inotif

MTCNNfacenet實現實時人臉識別

MTCNN+facenet實現實時人臉識別 整體思路 步驟1--框架搭建 步驟2--人臉資料庫構造 步驟3--訓練SVM分類器 步驟4--實時人臉檢測識別 整體思路 利用MTCNN進行人臉框提取,將提

canal實戰(一):canal連線kafka實現實時同步mysql資料

前面已經介紹過了canal-kafka的應用。canal-kafka是把kafka作為客戶端,嵌入到canal中,並且在canal基礎上對原始碼進行了修改,以達到特定的實現canal到kafka的傳送。 canal-kafka是阿里雲最近更新的一個新的

spark streaming kafka實現實時流的案例分析

package day14 import org.apache.spark.SparkConf import org.apache.spark.streaming.kafka.KafkaUtils import org.apache.spark.streaming.{ Se

Java 實現socket 伺服器實現實時通訊

        現在有一個需求,就是要去給一臺客戶端主動去傳送指令,或者推送訊息,就尋求朋友問了問告訴我說socket可以實現,所以就在網上找了些資料一遍學習,一遍測試,現在把我最後的成果記錄下來。        如果對於socket有概念上的不理解的話,可以去百度一下會有很

Linux下的sersync和rsync實現實時同步

對於rsync這裡級不做過多的解釋了,主要介紹的是sersync的配置 1、如果電腦沒有安裝sersync服務的話,我們可以在這個地址進行安裝sersync下載地址 2、我們將下載過來的se

ODI利用CDC實現實時同步資料

(內容有借鑑其他文件,親身實踐成功~) 需求: table_02作為目標表,需要實時的與源資料表table_01同步(即table_01更新或者是插入或者是刪除了一行記錄,table_02能夠實時的同步此操作----此處設定為延時10s同步------已經很了不得了 好伐!

本地開發linux實現檔案同步

最近公司裡面的專案在本地無法訪問,只能在linux上執行,so,剛開始是自己挨個改然後使用Xshell中的rz進行上傳替換,或者使用軟體filezilla,但是老大說太麻煩了手把手教我實現同步,看程式碼: /sbin/mount.cifs //192.168.200.50/

rsync+sersync實現實時同步

之前的一篇中記錄了rsync+inotify實現檔案的實時傳輸,礙於inotifywait的bug問題,線上同步網站檔案無法使用,所以再記錄一下sersync的配置,留待使用時檢視。 環境:centos6.8 IP及功能劃分: 172.17.9.151(釋出伺服器)

rsync+inotify實現實時同步案例--轉

隨著應用系統規模的不斷擴大,對資料的安全性和可靠性也提出的更好的要求,rsync在高階業務系統中也逐漸暴露出了很多不足,首先,rsync同步資料時,需要掃描所有檔案後進行比對,進行差量傳輸。如果檔案數量達到了百萬甚至千萬量級,掃描所有檔案將是非常耗時的。而且正在發生變化的往往是其中很少的一部分,這是非常低效的

CentOS7 Rsync服務搭建-Rsync+Inotify架構實現實時同步

關於centos7版本上面搭建rsync服務並且實現實時同步之前一直是在6版本上面搭建rsync服務,在7版本上面折騰了半天。此處總結下 inotify下載地址:http://github.com/d