女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

    文章

    7241

    瀏覽量

    90993
  • 數據同步
    +關注

    關注

    0

    文章

    17

    瀏覽量

    8249
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    UIAbility組件與UI的數據同步介紹

    UIAbility組件與UI的數據同步 基于當前的應用模型,可以通過以下幾種方式來實現UIAbility組件與UI之間的數據同步。 使用EventHub進行
    發表于 05-16 06:10

    【峟思】土體沉降計安裝:手把手教你正確埋設與連接組件

    在土木工程中,振弦式土體沉降計是監測土石壩、邊坡、地基等沉降變形的“眼睛”。但想要它精準工作,安裝步驟是關鍵!如果埋設不當或組件連接錯誤,可能導致數據偏差甚至設備損壞。南京峟思將一步步為大家解析振弦
    的頭像 發表于 04-03 10:20 ?187次閱讀
    【峟思】土體沉降計<b class='flag-5'>安裝</b>:手把手教你正確埋設與連接<b class='flag-5'>組件</b>

    RF-Labs手工成型電纜組件

    考慮到了易于安裝和拆卸的需求,方便用戶進行維護和更換。 應用場景 軍工行業:滿足軍事裝備對高性能電纜組件的需求,確保通信和數據傳輸的穩定性和可靠性。 航天航空:適用于航天飛行器和衛星等空間應用,提供可靠
    發表于 03-14 09:23

    hyper-v復制,Hyper-V 復制的操作步驟

    ? ? 在使用Hyper-V虛擬化技術時,數據安全和業務連續性至關重要。Hyper-V復制功能就像是給虛擬機數據上了一份“保險”,能在關鍵時刻發揮重要作用。 ? ?什么是Hyper-V復制
    的頭像 發表于 02-10 10:29 ?345次閱讀
    hyper-v<b class='flag-5'>復制</b>,Hyper-V <b class='flag-5'>復制</b>的操作步驟

    SQLite數據訪問組件

    SQLite 數據訪問組件 SQLite 數據訪問組件 (LiteDAC) 是一個組件庫 它提供從 Delphi 和 C++ Builder
    的頭像 發表于 02-08 11:48 ?384次閱讀
    SQLite<b class='flag-5'>數據</b>訪問<b class='flag-5'>組件</b>

    InterBase和Firebird數據訪問組件介紹

    InterBase 和 Firebird 數據訪問組件 InterBase(和 Firebird)數據訪問組件 (IBDAC) 是一個庫 提供與 InterBase 和 Firebir
    的頭像 發表于 01-23 11:50 ?424次閱讀
    InterBase和Firebird<b class='flag-5'>數據</b>訪問<b class='flag-5'>組件</b>介紹

    hyper v 復制,hyper v 復制如何操作

    在日常辦公中,我們常常需要處理大量的文件和數據,這些重復性的工作不僅耗時耗力,還容易出現錯誤。而批量管理工具的出現,為我們提供了一種高效、便捷的解決方案,它能夠批量處理文件和數據,極大地提高了
    的頭像 發表于 01-22 16:01 ?972次閱讀
    hyper v <b class='flag-5'>復制</b>,hyper v <b class='flag-5'>復制</b>如何操作

    適用于Oracle的SSIS數據組件:提供快速導入及導出功能

    使用SSIS 數據組件,通過與關鍵數據庫和云服務的 Oracle 數據集成來改進您的 ETL 流程,這些組件提供快捷和可靠的
    的頭像 發表于 01-15 10:51 ?644次閱讀
    適用于Oracle的SSIS<b class='flag-5'>數據</b>流<b class='flag-5'>組件</b>:提供快速導入及導出功能

    Devart SSIS數據組件

    Devart SSIS 數據組件是功能強大的工具,旨在簡化 SQL Server Integration Services (SSIS) 包內的 ETL 流程,使用戶無需編寫復雜的代碼即可
    的頭像 發表于 01-05 11:08 ?1036次閱讀
    Devart SSIS<b class='flag-5'>數據</b>流<b class='flag-5'>組件</b>

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

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

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

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

    數據光端機的安裝步驟

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

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

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

    邏輯組件包括哪些配件

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

    如何實現Python復制文件操作

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