成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

GreatSQL特性 | 深入淺出MGR

數據庫 其他數據庫
GreatSQL中增加一個新的工作模式:單主快速模式,在這個模式下,不再采用MySQL MGR原有的認證數據庫方式。新增選項 group_replication_single_primary_fast_mode 用于 設置是否啟用,以及具體采用哪種模式。

本文介紹GreatSQL的一些關鍵新特性,相關特性主要針對GreatSQL 8.0.x版本(不含GreatSQL 5.7.x版本中的相關特性)。

1. 地理標簽

可以對每個節點設置地理標簽,主要用于解決多機房數據同步的問題。

新增選項 group_replication_zone_id,用于標記節點地理標簽。該選項值支持范圍 0 ~ 8,默認值為0。

當集群中各節點該選項值設置為不同的時候,就被認定為設置了不同的地理標簽。

在同城多機房部署方案中,同一個機房的節點可以設置相同的數值,另一個機房里的節點設置另一個不同的數值,這樣在事務提交時會要求每組 group_replication_zone_id 中至少 有個節點確認事務,然后才能繼續處理下一個事務。這就可以確保每個機房的某個節點里,總有最新的事務。

System Variable Name

group_replication_zone_id

Variable Scope

global

Dynamic Variable

YES

Permitted Values

[0 ~ 8]

Default

0

Description

設置MGR各節點不同的地理標簽,主要用于解決多機房數據同步的問題。

修改完該選項值之后,要重啟MGR線程才能生效。

引入版本

8.0.25-15

2. 仲裁節點

該節點僅參與MGR投票仲裁,不存放實際數據,也無需執行DML操作,因此可以用一般配置級別的服務器,在保證MGR可靠性的同時還能降低服務器成本。

新增參數group_replication_arbitrator用于設置仲裁節點。

若想新增一個仲裁節點,只需在 my.cnf 配置文件中添加如下配置:group_replication_arbitrator = true

當集群中只剩下 Arbitrator 節點時,則會自動退出。

注意:

在有仲裁節點的情況下,將單主切換成多主模式時,需要把投票節點先關閉再機型切換,否則可能會導致切換失敗,并且仲裁節點報錯退出MGR。

即便是在關閉MGR服務狀態下,仲裁節點中也無法執任何有數據變更的操作。

System Variable Name

group_replication_arbitrator

Variable Scope

global

Dynamic Variable

NO

Permitted Values

0

Default

0

Description

設置本節點是否為仲裁節點。實例啟動前先設置好,不可動態修改

引入版本

8.0.25-16

3. 快速單注

GreatSQL中增加一個新的工作模式:單主快速模式,在這個模式下,不再采用MySQL MGR原有的認證數據庫方式。新增選項 group_replication_single_primary_fast_mode 用于 設置是否啟用,以及具體采用哪種模式。

快速單主模式特別適合在跨機房部署,壓力測試以及內存要求不高等多種場景。這種模式弱于傳統的異步復制,但強于半同步復制,且沒有MGR默認的認證數據庫可能消耗較大內存的問 題。

提醒,啟用快速單主模式時,不支持采用多主模式;所有節點都得設置必須相同,否則無法啟動。

選項 group_replication_single_primary_fast_mode 可選值有:0、1、2,不同值分別表示如下:

  • 0,表示不采取快速單主模式,這是默認值。
  • 1,表示采用快速單主模式,支持并并回放。**強烈建議設置為1,即啟用快速單主模式。**- 2,表示采用快速單主模式,但不支持并行回放,加速relay log落盤,且讓從庫消耗更少的資源。

System Variable Name

group_replication_single_primary_fast_mode

Variable Scope

Global

Dynamic Variable

NO

Permitted Values

0

1

2

Default

0

Description

設置是否啟用快速單主模式,強烈建議啟用(即設置為1)。

引入版本

8.0.25-16

4. 自定義選主策略

完善自動選主機制,增加基于最新GTID判斷來選主,避免自動選擇沒有最新GTID的節點作為新主。

默認地,MGR根據以下規則選主:

  • 當有MySQL 5.7和MySQL 8.0不同版本的節點混合部署時,只會選擇運行5.7的節點作為主節點。此外,在 <= MySQL 8.0.16 版本時,以主版本號進行排序,也就是說 5.7 排在 8.0 前面。在 > MySQL 8.0.17版本中,則是以補丁版本號排序,也就是 8.0.17 排在 8.0.25 前面。
  • 當所有節點版本號一致時,則根據節點權重值(選項 group_replication_member_weight 定義權重值,這個選項5.7版本沒有,8.0開始新增)排序,權重值高的節點排在前面。
  • 根據節點 server_uuid 排序。

在一些情況下,在MGR所有節點都發生意外要重新拉起時,不會檢查各節點事務應用狀態,而錯誤選擇新的主節點,這時可能會導致丟失一些事務數據。或者當原來的主節點crash需要 重新投票選擇新的主節點時,可能也會選擇一個權重值較高,但沒有最新事務的節點,也會存在丟失一部分事務數據的風險。

在GreatSQL中,新增選項 group_replication_primary_election_mode 用于自定義選主策略,可選值有以下幾個:

  • WEIGHT_ONLY,還是按照上述傳統模式自動選主,這是默認值。
  • GTID_FIRST,優先判斷各節點事務應用狀態,自動選擇擁有最新事務的節點作為新的主節點。推薦設置為該模式。
  • WEIGHT_FIRST,傳統模式優先,如果沒有合適的結果再判斷各節點事務狀態。

提醒,所有節點都的設置必須相同,否則無法啟動。

System Variable Name

group_replication_primary_election_mode

Variable Scope

Global

Dynamic Variable

NO

Permitted Values

WEIGHT_ONLY

GTID_FIRST

WEIGHT_FIRST

Default

WEIGHT_ONLY

Description

當MGR集群需要投票選主時,采用何種投票策略。

引入版本

8.0.25-16

5. 并行查詢

根據B+樹的特點,可以將B+樹劃分為若干子樹,此時多個線程可以并行掃描同一張InnoDB表的不同部分。對執行計劃進行多線程改造,每個子線程執行計劃與MySQL原始執行計劃一致, 但每個子線程只需掃描表的部分數據,子線程掃描完成后再進行結果匯總。通過多線程改造,可以充分利用多核資源,提升查詢性能。

優化后,在TPC-H測試中表現優異,最高可提升30倍,平均提升15倍。該特性適用于周期性數據匯總報表之類的SAP、財務統計等業務。

使用限制:

暫不支持子查詢,可想辦法改造成JOIN。

暫時只支持ARM架構平臺,X86架構平臺優化也會盡快完成。

圖片

System Variable Name

force_parallel_execute

Variable Scope

Global

Dynamic Variable

YES

Permitted Values

ON

Default

OFF

Description

是否啟用InnoDB并行查詢特性

引入版本

8.0.25-15

更多關于InnoDB并行查詢相關選項參考文檔 InnoDB并行查詢優化參考(https://gitee.com/GreatSQL/GreatSQL-Doc/blob/master/docs/innodb-parallel-execute.md)。

6. GreatSQL VS MySQL社區版

特性

GreatSQL 8.0.25-16

MySQL 8.0.25 社區版

投票節點/仲裁節點

?

?

快速單主模式

?

?

地理標簽

?

?

全新流控算法

?

?

InnoDB并行查詢優化

?

?

線程池(Thread Pool)

?

?

審計

?

?

InnoDB事務鎖優化

?

?

SEQUENCE_TABLE(N)函數

?

?

InnoDB表損壞異常處理

?

?

強制只能使用InnoDB引擎表

?

?

殺掉空閑事務,避免長時間鎖等待

?

?

Data Masking(數據脫敏/打碼)

?

?

InnoDB碎片頁統計增強

?

?

支持MyRocks引擎

?

?

InnoDB I/O性能提升

??????????

????

網絡分區異常應對

??????????

??

完善節點異常退出處理

??????????

??

一致性讀性能

??????????

??

提升MGR吞吐量

??????????

??

統計信息增強

??????????

??

slow log增強

??????????

??

大事務處理

????????

??

修復多寫模式下可能丟數據風險

??????????

/

修復單主模式下切主丟數據風險

??????????

/

MGR集群啟動效率提升

??????????

/

集群節點磁盤滿處理

??????????

/

修復TCP self-connect問題

??????????

/

PROCESSLIST增強

??????????

/


責任編輯:武曉燕 來源: GreatSQL社區
相關推薦

2022-10-08 08:09:13

MGRGreatSQL事務

2018-12-19 14:40:08

Redis高級特性

2022-09-17 08:09:25

MGR故障檢測網絡

2021-03-16 08:54:35

AQSAbstractQueJava

2011-07-04 10:39:57

Web

2021-07-08 18:10:03

2019-01-07 15:29:07

HadoopYarn架構調度器

2017-07-02 18:04:53

塊加密算法AES算法

2012-05-21 10:06:26

FrameworkCocoa

2021-07-20 15:20:02

FlatBuffers阿里云Java

2022-09-26 09:01:15

語言數據JavaScript

2009-11-30 16:46:29

學習Linux

2012-02-21 13:55:45

JavaScript

2022-01-11 07:52:22

CSS 技巧代碼重構

2018-11-09 16:24:25

物聯網云計算云系統

2019-11-11 14:51:19

Java數據結構Properties

2022-12-02 09:13:28

SeataAT模式

2022-10-31 09:00:24

Promise數組參數

2019-12-04 10:13:58

Kubernetes存儲Docker

2009-11-18 13:30:37

Oracle Sequ
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 伊人久久综合 | 九九热精品视频 | 91在线观看网址 | 久久国内精品 | h免费观看 | 亚洲免费一区二区 | 欧美偷偷操 | 亚洲精品在线免费观看视频 | 黄色免费网站在线看 | 在线国产一区 | 中文字幕一级 | 五月综合激情网 | 91午夜在线 | 久久久精品网站 | 中文字幕亚洲精品 | 国产精品成人一区二区三区夜夜夜 | 成人国产精品入口免费视频 | 97视频人人澡人人爽 | 欧美日韩中文在线观看 | 99re66在线观看精品热 | 国产精品免费一区二区三区四区 | 亚洲二区视频 | 精一区二区 | 国产精品欧美一区二区三区 | 国产在线视频一区 | 免费网站国产 | 日韩亚洲视频在线 | 在线一区二区国产 | 国产 欧美 日韩 一区 | 在线精品一区 | 亚洲天堂精品一区 | 欧美一区二区在线视频 | 欧美一区免费 | 色视频www在线播放国产人成 | 中文区中文字幕免费看 | 久久精品免费一区二区 | 日韩欧美第一页 | 久久久久久影院 | 国产一级电影在线 | 精品国产乱码久久久久久老虎 | 91久久|