精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Gravity數據復制組件的安裝

麥辣雞腿堡 ? 來源:CSDN博客 ? 作者:jerry-89 ? 2023-01-22 15:48 ? 次閱讀

Gravity 是一款數據復制組件,提供全量、增量數據同步,以及向消息隊列發布數據更新。

DRC 的設計目標是:

支持多種數據源和目標的,可靈活定制的數據復制組件
支持基于 Kubernetes 的 PaaS 平臺,簡化運維任務

使用場景

大數據總線:發送 MySQL BinlogMongo Oplog 的數據變更到 kafka 供下游消費
單向數據同步:MySQL --> MySQL 的全量、增量同步
雙向數據同步:MySQL <--> MySQL 的雙向增量同步,同步過程中可以防止循環復制
分庫分表到合庫的同步:MySQL 分庫分表 --> 合庫的同步,可以指定源表和目標表的對應關系
在線數據變換:同步過程中,可支持對進行數據變換

image.png

Gravity是摩拜單車數據庫團隊自研的一套數據復制組件,目前已經穩定支撐了摩拜單車公司數百條同步通道,TPS 50000/s,

80線延遲小于50ms。使用go語言編寫,具有如下特點:

1.多數據源(MySQL, MongoDB, TiDB, PostgreSQL)

2.支持異構(不同的庫、表、字段之間同步),支持分庫分表到合表的同步。

3.支持雙活&多活,復制過程將流量打標,避免循環復制。

4.管理節點高可用,故障恢復不會丟失數據

5.支持filter plugin (語句過濾,類型過濾,column過濾等多維度的過濾)。

6.支持傳輸過程進行數據轉換。

  1. 一鍵全量+增量遷移數據。
  2. 輕量級,穩定高效,容易部署。

9.支持基于Kubernetes 的PaaS 平臺,簡化運維任務。

使用場景:

1.大數據總線:發送MySQL Binlog,Mongo Oplog,TiDB Binlog 的增量數據到 Kafka供下游消費。

2.單向數據同步:MySQL → MySQL&TiDB 的全量、增量同步。

3.雙向數據同步:MySQL ? MySQL 的雙向增量同步,同步過程中可以防止循環復制。

4.分庫分表到合庫的同步:MySQL 分庫分表--> 合庫的同步,可以指定源表和目標表的對應關系。

5.數據清洗: 同步過程中,可通過filter plugin 將數據自定義轉換。

6.數據歸檔: MySQL→ 歸檔庫 ,同步鏈路中過濾掉delete 語句。

Gravity 的設計初衷是要將多種數據源聯合到一起,互相打通,讓業務設計上更靈活,數據復制、數據轉換變的更容易,

能夠幫助大家更容易的將業務平滑遷移到TiDB 上面。

一、安裝配置golang

golang 針對中國用戶有專門的網站:

https://golang.google.cn/dl/

下載文件:

# wget https://dl.google.com/go/go1.17.linux-amd64.tar.gz

解壓文件:

# tar -xzvf go1.17.linux-amd64.tar.gz -C /usr/local/

設置環境變量:

# vim /etc/profile

export PATH=$PATH:/usr/local/go/bin

# source  /etc/profile

版本驗證:

# go version

go version go1.12 linux/amd64

2 命令

2.1 指定module的根目錄并生成go.mod文件

go mod init example.com/hello

2.2 下載并添加依賴到go.mod文件中

go build, go test

2.3 查看module下的所有依賴

go list -m all

2.4 更新穩定版依賴

go get rsc.io/sampler

2.5 更新為指定版本依賴

go list -m -versions rsc.io/sampler
 
rsc.io/sampler v1.0.0 v1.2.0 v1.2.1 v1.3.0 v1.3.1 v1.99.99
 
go get rsc.io/sampler@v1.3.1

2.6 清理無用的依賴

go mod tidy

2.7 將依賴復制到項目路徑的vendor文件夾中

go mod vendor

2.8 忽略cache里的包,只使用vendor目錄里的依賴進行編譯

go build -mod=vendor

2.9 校驗依賴并查看是否有修改

go mod verify

二、安裝配置gravity

1.前提條件:安裝部署好golang的環境變量:

2.下載gravity的代碼:

下載地址:https://github.com/moiot/gravity/releases

選擇需要的版本

# wget https://github.com/moiot/gravity/archive/v0.9.61.tar.gz

注釋:

由于還是老的模式組織目錄結構,需要把項目放在 ${GOPATH}/src/github.com/moiot/

 

3.由于目前的版本不支持go module功能需要解壓到 指定的目錄 go/src目錄:

# mkdir -p /usr/local/go/src/github.com/moiot/

# tar -xzvf v0.9.25.tar.gz  -C /usr/local/go/src/github.com/moiot/

# mv gravity-0.9.25/ gravity

或者直接clone 源代碼:

      # git clone https://github.com/moiot/gravity.git

#export GOPROXY=https://goproxy.io

# make

#export GOPROXY=

 注:解決方法:

換一個國內能訪問的代理地址:https://goproxy.cn

執行命令:go env -w GOPROXY=https://goproxy.cn

重新執行命令,完美通過

##查看幫助信息:

# ./bin/gravity  --help -L warn

Usage of gravity:

  -L string

        log level: debug, info, warn, error, fatal (default 'info') (default "info")

  -V    print version and exit

  -config string

        path to config file

  -http-addr string

        http-addr (default ":8080")

  -log-file string

        log file path

  -log-format string

        log format (default "json")

 

##版本查詢:

# ./bin/gravity -V

Release Version (gravity): 0.0.1+git.

Git Commit Hash:

Git Branch:

UTC Build Time: 2019-07-26 02:58:06

三、問題解決

#執行make命令時,由于一些依賴包需要翻墻才能下載到,所以go在這里自動下載相應的包或依賴包時,會出現timeout問題,無法下載或加載依賴包。。最終導致make失敗

go: golang.org/x/net@v0.0.0-20190311183353-d8887717615a: unrecognized import path "golang.org/x/net" (https fetch: Get https://golang.org/x/net?go-get=1: dial tcp 216.239.37.1:443: i/o timeout)

go: google.golang.org/grpc@v1.19.0: unrecognized import path "google.golang.org/grpc" (https fetch: Get https://google.golang.org/grpc?go-get=1: dial tcp 216.239.37.1:443: i/o timeout)

go: golang.org/x/sys@v0.0.0-20180905080454-ebe1bf3edb33: unrecognized import path "golang.org/x/sys" (https fetch: Get https://golang.org/x/sys?go-get=1: dial tcp 216.239.37.1:443: i/o timeout)

go: finding github.com/pingcap/parser v0.0.0-20190118120648-5958b6fcdb2d

go: golang.org/x/crypto@v0.0.0-20180904163835-0709b304e793: unrecognized import path "golang.org/x/crypto" (https fetch: Get https://golang.org/x/crypto?go-get=1: dial tcp 216.239.37.1:443: i/o timeout)

解決方法:

設置以下環境變量:

export GOPROXY=https://goproxy.io

然后在執行make命令。

 

原因:

設置了GOPROXY環境變量,下載源代碼時將會通過這個環境變量設置的代理地址,而不再是以前的直接從代碼庫下載。 https://goproxy.io是官方提供公用的代理服務。

通過設置該環境變量:export GOPROXY=https://goproxy.io 后即可正常下載墻外的源碼包了:

也可以通過置空這個環境變量來關閉,export GOPROXY=

需要Go version >= 1.11。

原文鏈接:https://blog.csdn.net/eagle89/article/details/128605003
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 數據
    +關注

    關注

    8

    文章

    6892

    瀏覽量

    88828
  • 數據同步
    +關注

    關注

    0

    文章

    17

    瀏覽量

    8153
收藏 人收藏

    評論

    相關推薦

    PW系列工控電腦復制機:效率與精度雙重提升

    本文介紹了PW系列工控電腦復制機在現代企業數據管理中的關鍵作用。隨著大數據和跨平臺兼容性需求的增長,PW系列復制機以其高達18GB/分鐘的傳輸速度和自動化偵測技術,提供了一個靈活、高效
    的頭像 發表于 11-20 16:20 ?79次閱讀
    PW系列工控電腦<b class='flag-5'>復制</b>機:效率與精度雙重提升

    分布式服務高可用實現:復制

    作者:京東保險 王奕龍 1. 為什么需要復制 我們可以考慮如下問題: 當數據量、讀取或寫入負載已經超過了當前服務器的處理能力,如何實現負載均衡? 希望在單臺服務器出現故障時仍能繼續工作,這該如何實現
    的頭像 發表于 10-29 11:27 ?566次閱讀
    分布式服務高可用實現:<b class='flag-5'>復制</b>

    數據光端機的安裝步驟

    數據光端機是一種用于傳輸數據信號的設備,它通過光纖將數據從一個地點傳輸到另一個地點。這種設備廣泛應用于電信、網絡、監控等領域。以下是安裝數據
    的頭像 發表于 10-28 10:05 ?165次閱讀

    配置MySQL主從復制和讀寫分離

    配置MySQL主從復制和讀寫分離
    的頭像 發表于 10-23 11:44 ?334次閱讀
    配置MySQL主從<b class='flag-5'>復制</b>和讀寫分離

    邏輯組件包括哪些配件

    邏輯組件是計算機系統中用于處理數據和執行指令的硬件部分。它們是計算機的核心,負責執行程序、處理數據和控制其他硬件組件。邏輯組件的設計和實現對
    的頭像 發表于 10-15 14:40 ?210次閱讀

    如何實現Python復制文件操作

    Python 中有許多“開蓋即食”的模塊(比如 os,subprocess 和 shutil)以支持文件 I/O 操作。在這篇文章中,你將會看到一些用 Python 實現文件復制的特殊方法。下面我們開始學習這九種不同的方法來實現 Python 復制文件操作。
    的頭像 發表于 07-18 14:53 ?373次閱讀

    PSoC Creator 4.4某些組件不可用,為什么?

    ),重新安裝,結果還是沒有。 看起來這些安裝文件不包含最新的組件。 然而,即使我將設備設置為\"all\" 并關閉\"Show only newer\" 復選框
    發表于 05-23 06:54

    光伏組件指的是什么 光伏組件安裝注意事項

    光伏組件,也稱為太陽能電池板,是一種利用光伏效應將太陽光轉換成電能的裝置。
    的頭像 發表于 05-21 17:37 ?2117次閱讀

    HarmonyOS開發案例:【 switch、chart組件的使用】

    基于switch組件和chart組件,實現線形圖、占比圖、柱狀圖,并通過switch切換chart組件數據的動靜態顯示。
    的頭像 發表于 04-25 20:58 ?565次閱讀
    HarmonyOS開發案例:【 switch、chart<b class='flag-5'>組件</b>的使用】

    《深入理解FFmpeg閱讀體驗》ffmpeg安裝

    書中講了如何編譯安裝,我看了一下比較復雜,所以下載安裝包進行安裝,下載網址:Download FFmpeg 下載完后解壓出來在bin目錄下面有三個文件: 復制這個目錄: C:\\\
    發表于 01-25 21:35

    軟通動力天鶴數據復制服務系統V1.0獲得華為技術認證書

    近日,軟通動力自主研發的“天鶴數據復制服務系統V1.0”成功通過華為云GaussDB各項兼容性測試驗證,正式獲得華為云授予的HUAWEI COMPATIBLE技術認證證書。這標志著軟通動力數據
    的頭像 發表于 01-23 09:56 ?744次閱讀
    軟通動力天鶴<b class='flag-5'>數據</b><b class='flag-5'>復制</b>服務系統V1.0獲得華為技術認證書

    鴻蒙開發OpenHarmony組件復用案例

    概述 在開發應用時,有些場景下的自定義組件具有相同的組件布局結構,僅有狀態變量等承載數據的差異。這樣的組件緩存起來,需要使用到該組件時直接復
    發表于 01-15 17:37

    射頻電纜組件的使用方法和注意事項

    射頻電纜組件的使用方法和注意事項? 射頻電纜組件是一類廣泛應用于通信系統、無線電設備和其他射頻設備中的重要電子組件。它們在傳輸高頻信號時扮演著關鍵的角色,因此使用和安裝時需要特別注意一
    的頭像 發表于 01-05 15:08 ?598次閱讀

    VISA共享組件怎么安裝

    用戶更好地管理和控制不同設備間的通信。本文將詳細介紹VISA共享組件安裝步驟,并提供安裝過程中需要特別注意的事項。 第一部分:準備工作 確認系統要求:在安裝VISA共享
    的頭像 發表于 01-04 14:33 ?1248次閱讀

    ad復制元件怎么保持編號不變

    復制AD(AutoCAD)元件時,如果要保持編號不變,可以按照以下步驟進行操作: 創建一個元件庫:首先,你需要創建一個元件庫,將你要復制的原始元件添加到庫中。你可以使用AD軟件的“設計中心”或“內容
    的頭像 發表于 12-27 17:07 ?6828次閱讀