操屁眼的视频在线免费看,日本在线综合一区二区,久久在线观看免费视频,欧美日韩精品久久综

新聞資訊

    分布式數據庫,例如TIDB用K/V的底層邏輯

    讀字節

    2021-03-10 22:38

    0

    分布式文件系統HDFS無索引就無K/V

    首先分布式數據并不是絕對的喜歡使用kv存儲模式,例如分布式數據庫里面和是文檔形式存儲,若把HDFS也算進去的話,它是無索引的存儲。

    打開網易新聞 查看精彩圖片

    上圖是HDFS作為分布式數據存儲的文件分塊存儲模式,簡單直接,并沒有進行任何的kv索引建立。我們可以看到圖中Nginx日志被切割成duo多份,然后分布在三臺數據節點上,要注意的是,HDFS的副本一般是三份,圖中只做了兩份代表副本的意思,但實際上是三份。客戶端在進行訪問通信的時候,都是通過數據塊scan的方式進行,沒有索引,就沒有隨機訪問機制。

    TiDB的架構特征像,tidb,明明是關系庫,為啥非要弄個key,即使業務邏輯不需要表有 key,也要給每條記錄硬加一個key,這是什么目的?

    其實,tidb都叫,是NoSQL+關系型數據庫的合體數據庫持久化什么意思,認為它們是關系庫,說得不恰當。

    例如:tidb分為PD、TIKV、TIDB,PD管理者kv的關系結構,這部分可以對標關系型數據庫。

    打開網易新聞 查看精彩圖片

    上圖是TIDB的架構圖,圖中可以看到TIDB形成的集群主要是接收外部應用的SQL,處理SQL的邏輯,與PD交互獲取KV地址,與KV交互獲取數據;

    PD組成的集群主要是通過元數據的語義理解kv在集群中的位置,實現對KV集群的調度和負載均衡;分配全局事務ID;

    TIKV就是我們說到的重點,通過Key-Value存儲引擎,提供分布式事務能力。每個節點有多個,存儲一個范圍Key的數據——Key Range,主要是為了形成連續的小組,在局部提供寫入和讀取的性能優勢。并且以作為原子單元,實現集群跨節點的副本復制,復制方式用Raft協議實現。

    打開網易新聞 查看精彩圖片

    實際上TIKV部分就是標準的NoSQL為基礎的數據持久化層了,TIKV的持久化數據層就是,同樣的持久化數據層也用的是,的就是LSM-Tree的日志追加方式WAL (write ahead log)快速寫入數據,再通過LSM-Tree的,結構,索引key,獲取value,所以就是個標準的key/value數據庫。

    的核心優勢LSM-Tree結構

    為什么它們不約而同的都選擇了,因為作為核心結構LSM樹的WAL,,方式具有寫入數據的巨大優勢并保證數據可靠性,形成很多小的順序分組,同時又得到局部熱點上的驚人查詢優勢,在內存中完成查找。

    打開網易新聞 查看精彩圖片

    而且LSM-Tree配合Bloom 又能將時間線作為優先級,快速索引數據在磁盤中的位置范圍,這就大大減少掃描磁盤的動作。

    若遇到大范圍隨機查找,Bloom 有也查不到位置的情況,才會通過二分查找,并在樹的不同層進行多路合并,取優先級最高的數據。

    那么通過這種思路,就能比關系型數據庫的b/b+樹索引在寫的性能方面帶來質的提升,而且對于局部熱點,也就是近期數據帶來驚人的查詢性能,雖然全局范圍的查詢有所降低,數據段合并會帶來的資源消耗(通過多線程合并提升了這一過程的效率),但數據庫讀寫的整體性能的平衡性變得更合理了,總之將來通過集群處理讀的問題總是比處理寫的問題更容易,這就是選擇key/value數據庫的底層邏輯。

    相對于MySQL的優勢

    反觀關系型數據庫,例如要給MySQL加上一條索引,那么索引字段就是key。所以RDBMS也不能說自己跟key/value存儲沒啥聯系。

    作為業務邏輯上不需要 key而非要加一個key,這是因為關系型數據庫設計的初衷就不是為了海量數據的快速寫入和查找所設計的,即便沒有索引,行集掃描也沒有問題,這才是常態是其本質,這和Hadoo HDFS的按塊掃描一樣,都是一種原始的狀態,HDFS之上依然需要HBase數據庫來解決海量數據的隨機查找場景,本質上作為列族分類的HBase也是Key/Value模式。

    選擇了數據庫持久化什么意思,也就是選擇了業務記錄中key存在的必須,但換來的是海量數據的高效寫入和查找,非常劃算。

網站首頁   |    關于我們   |    公司新聞   |    產品方案   |    用戶案例   |    售后服務   |    合作伙伴   |    人才招聘   |   

友情鏈接: 餐飲加盟

地址:北京市海淀區    電話:010-     郵箱:@126.com

備案號:冀ICP備2024067069號-3 北京科技有限公司版權所有