【TiDB理論知識09】TiFlash

一 TiFlash架構

二 TiFlash 核心特性

TiFlash 主要有

  1. 異步復制、
  2. 一致性、
  3. 智能選擇、
  4. 計算加速

等幾個核心特性。

1 異步復制

TiFlash 中的副本以特殊角色 (Raft Learner) 進行異步的數據復制,這表示當 TiFlash 節點宕機或者網絡高延遲等狀況發生時,TiKV 的業務仍然能確保正常進行。

只從leader中接受raft log ,不參與 投票 選舉 等。

基于主鍵快速更新 ,和TiKV 不會有過大的延遲 。

?

2 一致性讀取

?

圖解 :

T0 時刻 客戶端寫入兩條數據 分別為 key = 1 value = 100 ,key = 999 value =7,這兩條數據分別存在兩個TiKV的Region 上,寫入數據會有Raft log,這兩條數據寫入日志的序列號分別為 101 和 22 。TiFlash的region通過 Raft Log 同步數據,此刻 同步到TiFlash的Raft Log日志索引號分別為95 和 18的日志。即數據還沒有同步到TiFlash.

?在T1 時刻客戶端請求TiFlash 讀取數據,T1時刻 ,TIKV的region數據已經寫到日志序列號分別為 120 和 29的數據了 。TiFlash的數據剛到 106 和 20 。此刻TiFlash讀取不到最新的數據

T2時刻 又有客戶端向TiKV 寫入數據,將key=1的數據 value cong 100改為了 200。寫到了日志索引號分別為 122 和 30的日志了。那么問題來了 TiFlash 如何 確認我能讀取到此刻TiKV 寫入的最新數據同步到了TiFlash 呢 ?

解決 :會做個輕量級的確認 ,T3時刻 TiKV 的數據 已經寫到了 125和 31? ,TiFlash 寫到了 116 和 21 。 那么TiFlash 會等待日志序列號分別為125和 31日志復制過來。

?

T4時刻 日志還沒完全復制過來。

?

T5 時刻日志已經復制過來 ,但是查詢請求是T1時刻發出,只能看到T1時刻之前的數據,所以讀到的key=1的值為100;

?

智能選擇

TiDB 可以自動選擇使用 TiFlash 列存或者 TiKV 行存,甚至在同一查詢內混合使用提供最佳查詢速度。這個選擇機制與 TiDB 選取不同索引提供查詢類似:根據統計信息判斷讀取代價并作出合理選擇。

計算加速

TiFlash 對 TiDB 的計算加速分為兩部分:列存本身的讀取效率提升以及為 TiDB 分擔計算。其中分擔計算的原理和 TiKV 的協處理器一致:TiDB 會將可以由存儲層分擔的計算下推。

參考?

TiFlash 簡介 | PingCAP 文檔中心

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/207294.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/207294.shtml
英文地址,請注明出處:http://en.pswp.cn/news/207294.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

億勝盈科ATR2037 無限射頻前端低噪聲放大器

億勝盈科ATR2037 是一款應用于無線通信射頻前端,工作頻段為 0.7 到 6GHz 的超低噪聲放大器。 ATR2037 低噪聲放大器采用先進的 GaAs pHEMT 工藝設計和制作,ATR2037 低噪聲放大器在整個工作頻段內可以獲得非常好的射頻性能超低噪聲系數。 億勝盈科ATR203…

WGCLOUD v3.5.0 新增支持監測交換機的接口狀態UP DOWN

WGCLOUD v3.5.0開始 可以監測交換機或SNMP設備的接口狀態了,直接上圖

什么是ElasticSearch中的過濾器?

在Elasticsearch中,過濾器(Filters)是一種用于在查詢中篩選文檔的強大工具。過濾器可以根據特定條件來評估文檔是否符合搜索查詢。這些條件通常應用于字段數據,并根據匹配結果返回符合條件的文檔。 過濾器的主要優點包括&#xf…

如何給網頁和代碼做HTML加密?

? 本篇文章給大家談談html混淆加密在線,以及HTML在線加密對應的知識點,希望對各位有所幫助,不要忘了收藏本站喔。 如何給代碼加密? 1、源代碼加密軟件推薦使用德人合科技的加密軟件,是一套從源頭上保障數據安全和使用安全的軟…

vue2+datav可視化數據大屏(1)

開始 📓 最近打算出一個前端可視化數據大屏的系列專欄,這次將很全面的教大家設計可視化大屏,從開始到打包結束,其中,包括如何設計框架,如何封裝axios,等等,本次使用的數據均為mock數…

linux C++監聽管道文件方式

方式一&#xff08;傳統讀取文件&#xff0c;一直監聽循環讀取文件&#xff09; 非阻塞打開文件&#xff0c;用read循環定時讀取&#xff0c;性能不好 代碼如下&#xff1a; #include <iostream> #include <fstream> #include <functional> #include <…

spring boot項目如何自定義參數校驗規則

spring boot項目對參數進行校驗時&#xff0c;比如非空校驗&#xff0c;可以直接用validation包里面自帶的注解。但是對于一些復雜的參數校驗&#xff0c;自帶的校驗規則無法滿足要求&#xff0c;此時需要我們自定義參數校驗規則。自定義校驗規則和自帶的規則實現方式一樣&…

時域頻域(學習記錄1)

1 小伙伴們&#xff0c;今天讓我們一起來聊聊Something about DATA 系列。我們先回顧一下本系列對NVH測試中的數據采集做的整體介紹&#xff1a; A 數據采集過程&#xff1b; B 硬件設備&#xff1b; C 數采軟件&#xff1b; D ATOM中的數據采集&#xff1b; 接下來的幾篇文章…

java如何編寫 Restful API

一、什么是RESTful API RESTful API是指符合REST&#xff08;Representational State Transfer&#xff09;架構風格的API。RESTful API是一種架構設計風格&#xff0c;它基于HTTP協議&#xff0c;使用常見的HTTP方法&#xff08;例如GET、POST、PUT、DELETE等&#xff09;對資…

cmake生成表達式

不積小流&#xff0c;無以成江海 <CONFIG:RELEASE> config這個關鍵字&#xff0c;主要是看CMAKE_BUILD_TYPE這個變量的值是不是和冒號后的一樣&#xff0c;一樣的話就返回true, 否則就是false. cmake_minimum_required(VERSION 3.10) project(Test) set(CMAKE_CXX_STA…

數據結構--二叉樹

目錄 1.二叉樹鏈式結構的實現 1.1 前置說明 1.2 二叉樹的遍歷 1.2.1 前序、中序以及后序遍歷 1.2.2 層序遍歷及判斷是否為完全二叉樹 1.3 節點個數&#xff0c;葉子節點個數&#xff0c;第k層節點個數以及高度等 1.4 二叉樹的創建和銷毀 1.二叉樹鏈式結構的實現 1.1 前置說…

Mysql啟動占用內存過高解決

Hi, I’m Shendi Mysql啟動占用內存過高解決 前言 最近服務器內存不夠用了&#xff0c;甚至還出現了內存溢出問題&#xff0c;導致程序宕機。但請求與用戶量并沒有多少&#xff0c;所以從各種啟動的程序中想方設法的盡可能的減少其占用的內存。 而在我的服務器中&#xff0c;…

幾何尺寸智能測量儀為您帶來經濟效益提升

線材、棒材、管材、板材等產品的品質檢測離不開一些基礎幾何尺寸的檢測&#xff0c;隨著產線自動化的提升&#xff0c;越來越多的產線開始使用智能測量儀&#xff0c;這不僅僅是因為其能帶來品質的提升&#xff0c;更是因為其能帶來的經濟效益。 幾何尺寸智能測量儀種類繁多&am…

JAVA網絡編程——BIO、NIO、AIO深度解析

I/O 一直是很多Java同學難以理解的一個知識點&#xff0c;這篇帖子將會從底層原理上帶你理解I/O&#xff0c;讓你看清I/O相關問題的本質。 1、I/O的概念 I/O 的全稱是Input/Output。雖常談及I/O&#xff0c;但想必你也一時不能給出一個完整的定義。搜索了谷哥欠&#xff0c;發…

區塊鏈創新應用場景不斷拓展,實現去中心化

小編介紹&#xff1a;10年專注商業模式設計及軟件開發&#xff0c;擅長企業生態商業模式&#xff0c;商業零售會員增長裂變模式策劃、商業閉環模式設計及方案落地&#xff1b;扶持10余個電商平臺做到營收過千萬&#xff0c;數百個平臺達到百萬會員&#xff0c;歡迎咨詢。 區塊…

【Vulnhub 靶場】【BuffEMR: 1.0.1】【簡單 - 中等】【20210831】

1、環境介紹 靶場介紹&#xff1a;https://www.vulnhub.com/entry/buffemr-101,717/ 靶場下載&#xff1a;https://download.vulnhub.com/buffemr/BuffEMR-v1.0.1.ova 靶場難度&#xff1a;簡單 - 中等 發布日期&#xff1a;2021年08月31日 文件大小&#xff1a;4.6 GB 靶場作…

為什么每個 Java 開發者都需要了解 Scala

前面我們一起回顧了第九期 Scala & Java Meetup 中最受關注的話題 —— jdk 并發編程的終極解決方案&#xff1a;虛擬線程&#xff0c;探討了這一新特性對包括 Scala 在內的響應式編程語言的影響。 本次 Meetup 的首位分享者 Chunsen&#xff0c;在加入 Tubi 成為 Scala 開…

【學習筆記】Burnside引理,Pólya定理及其應用

Burnside引理 書接上回&#xff0c;繼續深入研究在群作用下集合的軌道與穩定子群的相關性質 現在我們想要研究這樣一個問題&#xff1a; 有限群 G 在有限集合 S 上面有一個作用&#xff0c;那么 S 的 G ? 軌道條數是多少 有限群G在有限集合S上面有一個作用&#xff0c;那么…

【投稿優惠|檢索穩定】2024年信息系統、工程與數字化經濟國際會議(ICISEDE 2024)

2024年信息系統、工程與數字化經濟國際會議(ICISEDE 2024) 2024 International Conference on Information Systems and Engineering and the Digital Economy(ICISEDE 2024) [會議簡介] 2024 年信息系統、工程與數字化經濟國際會議(ICISEDE 2024)將于 2024 年 1 月 20 日在廈門…

Endnote在word中加入參考文獻及自定義參考文獻格式方式

第一部分&#xff1a;在word中增加引用步驟 1、先下載對應文獻的endnote引用格式&#xff0c;如在谷歌學術中的下載格式如下&#xff1a; 2、在endnote中打開存儲env的格式庫&#xff0c;導入對應下載的文件格式&#xff1a;file>import>file>choose,import對應文件&a…