1. 程式人生 > >Kudu概念與術語

Kudu概念與術語

Columnar Data Store(列式資料儲存)

Kudu 是一個 columnar data store(列式資料儲存)。列式資料儲存在強型別列中。由於幾個原因,通過適當的設計,Kudu 對 analytical(分析)或 warehousing(資料倉庫)工作會非常出色。

Read Efficiency(高效讀取)

對於分析查詢,允許讀取單個列或該列的一部分同時忽略其他列,這意味著您可以在磁碟上讀取更少塊來完成查詢。與基於行的儲存相比,即使只返回幾列的值,仍需要讀取整行資料。

Data Compression(資料壓縮)

由於給定的列只包含一種型別的資料,基於模式的壓縮比壓縮混合資料型別(在基於行的解決方案中使用)時更有效幾個數量級。結合從列讀取資料的效率,壓縮允許您在從磁碟讀取更少的塊時完成查詢。請參閱 

資料壓縮

Table(表)

一張 talbe 是資料儲存在 Kudu 的位置。表具有 schema 和全域性有序的 primary key(主鍵)。table 被分成稱為 tablets 的 segments。

Tablet

一個 tablet 是一張 table 連續的 segment,與其它資料儲存引擎或關係型資料庫中的 partition(分割槽)相似。給定的 tablet 冗餘到多個 tablet 伺服器上,並且在任何給定的時間點,其中一個副本被認為是 leader tablet。任何副本都可以對讀取進行服務,並且寫入時需要在為 tablet 服務的一組 tablet server之間達成一致性。

Tablet Server

一個 tablet server 儲存 tablet 和為 tablet 向 client 提供服務。對於給定的 tablet,一個 tablet server 充當 leader,其他 tablet server 充當該 tablet 的 follower 副本。只有 leader 服務寫請求,然而 leader或 followers 為每個服務提供讀請求。leader 使用 Raft Consensus Algorithm 來進行選舉 。一個 tablet server 可以服務多個 tablets ,並且一個 tablet 可以被多個 tablet servers 服務著。

Master

該 master 保持跟蹤所有的 tablets,tablet servers,Catalog Table 和其它與叢集相關的 metadata。在給定的時間點,只能有一個起作用的 master(也就是 leader)。如果當前的 leader 消失,則選舉出一個新的 master,使用  Raft Consensus Algorithm 來進行選舉。

master 還協調客戶端的 metadata operations(元資料操作)。例如,當建立新表時,客戶端內部將請求傳送給 master。 master 將新表的元資料寫入 catalog table,並協調在 tablet server 上建立 tablet的過程。

所有 master 的資料都儲存在一個 tablet 中,可以複製到所有其他候選的 master。

tablet server 以設定的間隔向 master 發出心跳(預設值為每秒一次)。

Raft Consensus Algorithm

Kudu 使用 Raft consensus algorithm 作為確保常規 tablet 和 master 資料的容錯性和一致性的手段。通過 Raft,tablet 的多個副本選舉出 leader,它負責接受以及複製到 follower 副本的寫入。一旦寫入的資料在大多數副本中持久化後,就會向客戶確認。給定的一組 N 副本(通常為 3 或 5 個)能夠接受最多(N - 1)/2 錯誤的副本的寫入。

Catalog Table(目錄表)

 catalog talbe 是 Kudu 的 metadata(元資料中)的中心位置。它儲存有關 tables 和 tablets 的資訊。該 catalog table(目錄表)可能不會被直接讀取或寫入。相反,它只能通過客戶端 API 中公開的元資料操作訪問。catalog table 儲存兩類元資料。

Tables

table schemas, locations, and states(表結構,位置 和狀態)

Tablets

現有 tablet 的列表,每個 tablet 的副本所在哪些 tablet server,tablet 的當前狀態以及開始和結束的 keys(鍵)。

Logical Replication(邏輯複製)

 Kudu 複製操作,不是磁碟上的資料。這被稱為 logical replication(邏輯複製),而不是 physical replication(物理複製)。這有幾個優點 : 

  • 雖然 insert(插入)和 update(更新)確實通過網路傳輸資料,deletes(刪除)不需要移動任何資料。delete(刪除)操作被髮送到每個 tablet server,它在本地執行刪除。

  • 物理操作,如 compaction,不需要通過 Kudu 的網路傳輸資料。這與使用 HDFS 的儲存系統不同,其中 blocks (塊)需要通過網路傳輸以滿足所需數量的副本。

  • tablet 不需要在同一時間或相同的時間表上執行壓縮,或者在物理儲存層上保持同步。這會減少由於壓縮或大量寫入負載而導致所有 tablet server 同時遇到高延遲的機會。

相關推薦

Kudu概念術語

Columnar Data Store(列式資料儲存) Kudu 是一個 columnar data store(列式資料儲存)。列式資料儲存在強型別列中。由於幾個原因,通過適當的設計,Kudu 對 analytical(分析)或 warehousing(資料倉庫)工作會非

資料結構演算法——基本概念術語

概述  資料、資料元素、資料物件 資料(data)是對客觀事物的符號表示,在電腦科學中是指所有能輸入到計算機中並被計算機程式處理的程式的總稱。 資料元素(data element)是資料的基本單位,在計算機程式中通常作為一個整體進行考慮和處理。一個數據元素可由若干個資料項(data ite

Spring AOP 概念術語

1.概念 AspectOriented Programming,面向切面程式設計。 利用AOP可以對業務邏輯的各個部分進行隔離,從而使得業務邏輯各部分之間的耦合度降低,提高程式的可重用性,同時提高了開發的效率。 AOP主要用於日誌記錄,效能統計,安全控制(許可權控制),事務處理,異常

ArcGIS重要概念術語-地形制圖分析

垂直剖面:一種表示沿著一條線(如步行小道、道路或河流)上的高度變化的圖。 字串7 等高距:等高線間的垂直距離。 字串3 等高線:相同高程點的連線。 字串8 德勞內三角測量法:一種把點連成三角形的計演算法則,它遵循所有點都與最近鄰接點連線,且三角形儘量密集排列。 字串9 分層設色:用顏色符號表示

圖的基本概念相關術語

1、圖(Graph)是由頂點的有窮非空集合和頂點之間邊的集合組成,通常表示為:G(V,E),其中,G表示一個圖,V是圖G中頂點的集合,E是圖G中邊的集合。 2、對於圖的定義,我們需要明確幾個注意的地方: (1)線性表中我們把資料元素叫元素,樹中叫結點,在圖中資料元素我們則稱之為頂點(V

經濟學的概念術語常識

國富論:國民財富的性質和原因的研究。 稀缺:供給太少,需求過大 1. 自由貿易理論 由於生產資料在不同國家的分佈不同,而每一種產品都需要消耗不同比例的生產資料,所以同樣的產品,在不同的國家相對生產成本就會不一樣。如果每個國家都集中精力生產相

垃圾回收的概念算法

還要 無法 次數 回收算法 串行 引用 from 標記壓縮 高效 GC中的垃圾,是指的是在內存中不在不再被使用的對象。 常見的垃圾回收算法 1.引用計數算法(無法回收循環引用的對象) 2.標記清除算法分為標記階段和清除階段(會產生內存的空間碎片) 3.復制算法(缺點是將系統

OpenStack的概念架構圖

雲計算 OpenStack項目是一個開源的雲計算平臺,旨在實現很簡單,大規模可伸縮,功能豐富。來自世界各地雲計算開發人員和技術人員共同創建OpenStack項目。OpenStack通過一組相關的服務提供一個基礎設施即服務(IaaS)解決方案。每個服務提供了一個應用程序編程接口(API),促進了這種集成

數據結構基本概念術語總結

重新 條件 關系 線性結構 lar 成員 color 插入 的人 在這裏整理一下數據結構一些基本概念和術語,是為了自己以後方便查閱,同時也可以幫助到查閱的人方便查找,因為有些概念性很強的東西的確不是很好記。 什麽是數據結構:數據結構就是按照一定的邏輯組成的一批數據,使用

設計模式的概念作用

content tle 抽象 具體類 而不是 作用 source 依賴倒置原則 first 1,什麽是設計模式 設計模式的作用 解決同一種類型的問題 使用設計模式可以讓代碼結構更加清晰 https://www.zhihu.com/question/19558521?utm_

DQL、DML、DDL、DCL的概念區別

刪除對象 null font llb key ros 單行 drop primary ##SQL(Structure Query Language)語言是數據庫的核心語言。 一、DDL (Data Definition Language) 數據庫定義語言   用於創建、

伯克利教授Stuart Russell:人工智能基礎概念34個誤區

you 編譯 問答 review 有用 足夠 治療 態度 發現 伯克利教授Stuart Russell:人工智能基礎概念與34個誤區 機器之心 9 個月前 機器之心 Russell 是加州大學伯克利分校人工智能系統中心創始人兼計算機科

【Python】 Web開發框架的基本概念開發的準備工作

世紀 依賴包 ade 並不是 模板 界面 inux tar cal Web框架基本概念 現在再來寫這篇文章顯然有些馬後炮的意思。不過正是因為已經學習了Flask框架, 並且未來計劃學習更加體系化的Django框架,在學習過程中碰到的很多術語等等,非常有必要通過這樣一篇

timestamptimedelta,管理信息系統概念基礎

指導 數據計算 數據處理 nbsp 系統應用 了解 是否 全局 日常 1、將字符串‘2017年10月9日星期一9時10分0秒 UTC+8:00’轉換為timestamp。 >>> from datetime import datetime,timedel

timestamptimedelta管理信息系統概念基礎

要求 src times 自動化 文件管理 www. 輔助 蜘蛛網 哪些 1、將字符串‘2017年10月9日星期一9時10分0秒 UTC+8:00’轉換為timestamp。 from datetime import datetime,timedelta def pr(s

計算機網路基礎 - 一些基本概念網絡結構

logs 網路 兩個 wdm comment quest 利用 gin 規範 1. 基本概念 計算機網絡 = 通信技術+計算機技術,是兩項技術緊密結合的產物。 通信系統的基礎模型: 計算機網絡,是指將地理位置不同、具有獨立功能的多臺計算機及其外部設備,通過通信線路連接,在

名詞的概念實際應用範例

運維常用詞匯名詞的概念與實際應用範例1 集群集群(cluster)就是通過網絡將一組計算機連接起來作為一個整體向用戶提供一組網絡資源。這些單個的計算機系統就是集群的節點(node)。一個理想的集群是,用戶從來不會意識到集群系統底層的節點,在他/她們看來,集群是一個系統,而非多個計算機系統。並且集群系統的管理

【轉載】編譯型語言、解釋型語言、靜態類型語言、動態類型語言概念區別

自己 運行 是把 修改 lin 鏈接 時代 dll 系統 編譯型語言和解釋型語言 1、編譯型語言 需通過編譯器(compiler)將源代碼編譯成機器碼,之後才能執行的語言。一般需經過編譯(compile)、鏈接(linker)這兩個步驟。編譯是把源代碼編譯成機器碼,鏈接是把

共享美容院營銷新概念盈利模式

共享美容院  美容院在我們的認知裏是高大上,只是有錢人的專利;隨便保養一下幾千甚至幾萬塊。效果還不是很明顯,如果想達到明顯效果不惜跑到韓國做美容;怎樣達到青春永駐呢?千嬌百媚共享美容院來了……  如何讓自己變得更美,幾乎是每個女性都想的問題,於是,以女性想變美的需求,美容行業越來越壯大,處處都是商機,而女性對

正則概念應用

regexp 正則的概念n 正則表達式(regular expression)是一個描述字符規則的對象。ECMAScript 的RegExp 類(構造函數)表示正則表達式,而String 和 RegExp 都定義了使用正則表達式進行強大的模式匹配和文本檢索與替換的函數。n 正則表達式主要用來驗證客戶端的輸入數