Druid-Druid中Router Process

  • 基于apache-druid-0.17.0

概述

  • Router進程可以被用于查詢不同的Broker進程追城。通常情況下郭计,broker查詢路由依賴與規(guī)則(Rule)的設定霞揉。舉例來說有额,假如最近一個月的數(shù)據(jù)被加載僅hot cluster,最近一個月內的查詢可以路由到一組專用的Broker慕蔚。查詢一個月之外的可以路由到另一組Brokers丐黄。這種設置提供了查詢隔離,以便對更重要數(shù)據(jù)的查詢不會受到對不太重要數(shù)據(jù)的查詢的影響坊萝。
  • 如果你的Druid集群達到TB級別,作為使用這僅僅只需要回到查詢路由的進程即可许起。
  • 配置文件信息及API信息詳見官網(wǎng)十偶;

啟動命令

org.apache.druid.cli.Main server router

Router作為管理代理

  • 可以將Router配置為將請求轉發(fā)給活著的Coordinator 或 Overlord 進程。將對集群的HA配置有效园细。

配置修改

  • To enable this functionality, set the following in the Router's runtime.properties:
druid.router.managementProxy.enabled=true

管理代理路由配置

  • 管理代理支持隱式和顯式路由惦积。隱式路由是那些可以根據(jù)Druid API路徑約定從原始請求路徑確定目標的路由。對于Coordinator來說路徑是/druid/ Coordinator /*猛频,對于Overlord來說路徑是/druid/indexer/*狮崩。這些是方便的蛛勉,因為它們意味著使用管理代理不需要修改API請求,只需向路由器發(fā)出請求睦柴,而不是Coordinator或Overlord诽凌。大多數(shù)Druid API請求可以隱式路由。
  • 顯式路由是指發(fā)送到路由器的請求包含一個路徑前綴坦敌,該前綴指示請求應該路由到哪個進程侣诵。對于Coordinator,這個前綴是/proxy/ Coordinator狱窘,對于Overlord杜顺,它是/proxy/ Overlord。這對于目標不明確的API調用是必需的蘸炸。例如躬络,所有的Druid進程都有/status API,所以需要使用顯式路由來指示代理目的地搭儒。
  • 下表敘述如下:
    |Request Route|Destination|Rewritten Route|Example|
    |-------------|-----------|---------------|-------|
    |/druid/coordinator/*|Coordinator|/druid/coordinator/*|router:8888/druid/coordinator/v1/datasources -> coordinator:8081/druid/coordinator/v1/datasources|
    |/druid/indexer/*|Overlord|/druid/indexer/*|router:8888/druid/indexer/v1/task -> overlord:8090/druid/indexer/v1/task|
    |/proxy/coordinator/*|Coordinator|/*|router:8888/proxy/coordinator/status -> coordinator:8081/status|
    |/proxy/overlord/*|Overlord|/*|router:8888/proxy/overlord/druid/indexer/v1/isLeader -> overlord:8090/druid/indexer/v1/isLeader|

Router策略

  • Router有一個可配置的策略列表穷当,用于選擇將查詢路由到哪個Broker。策略的順序很重要仗嗦,因為一旦匹配了策略條件膘滨,就會選擇Broker。

timeBoundary 時間邊界

{
  "type":"timeBoundary"
}
  • 包含此策略意味著所有時間邊界查詢始終路由到最高優(yōu)先級的Broker稀拐。

priority 優(yōu)先級

{
  "type":"priority",
  "minPriority":0,
  "maxPriority":1
}
  • 將優(yōu)先級設置為小于minPriority的查詢路由到最低優(yōu)先級的Broker火邓。將優(yōu)先級設置為大于maxPriority的查詢路由到優(yōu)先級最高的Broker。默認情況下德撬,minPriority是0,maxPriority是1铲咨。使用這些默認值,如果發(fā)送優(yōu)先級為0的查詢(默認查詢優(yōu)先級為0)蜓洪,查詢將跳過優(yōu)先級選擇邏輯纤勒。

Avatica 負載均衡

  • 所有具有給定連接ID的Avatica JDBC請求都必須路由到相同的Broker,因為Druid Broker之間不共享連接狀態(tài)隆檀。
  • 為此摇天,Druid提供了兩個內置的平衡器,分別使用集合哈希和請求連接ID的一致哈希來分配請求給Broker恐仑。
  • 請注意泉坐,當使用多個Router時,所有Router都應該具有相同的平衡器配置裳仆,以確保它們做出相同的路由決策腕让。

Rendezvous hash平衡器

  • 此平衡器使用Avatica請求的連接ID上的集合散列將請求分配給代理。
  • 要使用此平衡器歧斟,請指定以下屬性:
druid.router.avatica.balancer.type=rendezvousHash
  • If no druid.router.avatica.balancer property is set, the Router will also default to using the Rendezvous Hash Balancer.

Consistent hash平衡器

  • 這個平衡器對Avatica請求的連接ID使用一致的散列來將請求分配給代理纯丸。
  • 配置信息如下:
druid.router.avatica.balancer.type=consistentHash
  • 這是一個非默認的實現(xiàn)偏形,用于實驗目的。一致的hasher在初始化和代理集更改時的設置時間更長觉鼻,但是在使用5個代理進行測試時俊扭,其代理分配時間比會合hasher更快。這兩種實現(xiàn)的基準都已經在consistency asherbenchmark和voushasherbenchmark中提供了滑凉。一致的hasher也需要鎖定统扳,而會合的hasher不需要。
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末畅姊,一起剝皮案震驚了整個濱河市咒钟,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌若未,老刑警劉巖朱嘴,帶你破解...
    沈念sama閱讀 217,406評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異粗合,居然都是意外死亡萍嬉,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,732評論 3 393
  • 文/潘曉璐 我一進店門隙疚,熙熙樓的掌柜王于貴愁眉苦臉地迎上來壤追,“玉大人,你說我怎么就攤上這事供屉⌒斜” “怎么了?”我有些...
    開封第一講書人閱讀 163,711評論 0 353
  • 文/不壞的土叔 我叫張陵伶丐,是天一觀的道長悼做。 經常有香客問我,道長哗魂,這世上最難降的妖魔是什么肛走? 我笑而不...
    開封第一講書人閱讀 58,380評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮录别,結果婚禮上朽色,老公的妹妹穿的比我還像新娘。我一直安慰自己组题,他們只是感情好葫男,可當我...
    茶點故事閱讀 67,432評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著往踢,像睡著了一般腾誉。 火紅的嫁衣襯著肌膚如雪徘层。 梳的紋絲不亂的頭發(fā)上峻呕,一...
    開封第一講書人閱讀 51,301評論 1 301
  • 那天利职,我揣著相機與錄音,去河邊找鬼瘦癌。 笑死猪贪,一個胖子當著我的面吹牛,可吹牛的內容都是我干的讯私。 我是一名探鬼主播热押,決...
    沈念sama閱讀 40,145評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼斤寇!你這毒婦竟也來了桶癣?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 39,008評論 0 276
  • 序言:老撾萬榮一對情侶失蹤娘锁,失蹤者是張志新(化名)和其女友劉穎牙寞,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體莫秆,經...
    沈念sama閱讀 45,443評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡间雀,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,649評論 3 334
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了镊屎。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片惹挟。...
    茶點故事閱讀 39,795評論 1 347
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖缝驳,靈堂內的尸體忽然破棺而出连锯,到底是詐尸還是另有隱情,我是刑警寧澤党巾,帶...
    沈念sama閱讀 35,501評論 5 345
  • 正文 年R本政府宣布萎庭,位于F島的核電站,受9級特大地震影響齿拂,放射性物質發(fā)生泄漏驳规。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,119評論 3 328
  • 文/蒙蒙 一署海、第九天 我趴在偏房一處隱蔽的房頂上張望吗购。 院中可真熱鬧,春花似錦砸狞、人聲如沸捻勉。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,731評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽踱启。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間埠偿,已是汗流浹背透罢。 一陣腳步聲響...
    開封第一講書人閱讀 32,865評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留冠蒋,地道東北人羽圃。 一個月前我還...
    沈念sama閱讀 47,899評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像抖剿,于是被迫代替她去往敵國和親朽寞。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,724評論 2 354

推薦閱讀更多精彩內容

  • Druid.io(以下簡稱Druid)是面向海量數(shù)據(jù)的斩郎、用于實時查詢與分析的OLAP存儲系統(tǒng)脑融。Druid的四大關鍵...
    大詩兄_zl閱讀 6,460評論 0 9
  • Druid具有高可用、高容錯的特性缩宜。 本文將搭建一個簡單的Druid集群吨掌,并且將會討論如何進一步配置以滿足您的需求...
    helloworld1214閱讀 7,135評論 1 5
  • Druid被設計成可擴展、高容錯的集群脓恕。 在本文檔中膜宋,我們將搭建一個簡單的集群,并討論如何進一步配置以滿足您的需求...
    Sisyphus秋居拾遺閱讀 2,187評論 0 2
  • 使用的是imply集成的druid炼幔,Imply提供了一套完整的部署方式秋茫,包括依賴庫,Druid乃秀,tranquili...
    茂盛哥哥閱讀 1,563評論 0 1
  • 概覽 事件流的分析 druid 提供了快速的分析查詢一個高并發(fā)肛著,在實時節(jié)點和歷史節(jié)點上;強大的用戶交互界面跺讯; 重構...
    93張先生閱讀 4,108評論 1 1