Druid翻譯二:Druid Quickstart

Quickstart

本文會(huì)下載最新的druid,單機(jī)部署后加載一些數(shù)據(jù)并進(jìn)行查詢。

前提條件需要:

  • java7及其以上版本
  • Linux, Mac OS X, or other Unix-like OS丸逸,不支持windows
  • 8G內(nèi)存
  • 2核CPU

入門

通過在終端輸入以下指令痢掠,來安裝Druid:

curl -O http://static.druid.io/artifacts/releases/druid-0.9.2-bin.tar.gz
tar -xzf druid-0.9.2-bin.tar.gz
cd druid-0.9.2

在druid包下仓技,有以下內(nèi)容:

  • LICENSE - license文件
  • bin/ - 對(duì)此quickstart有用的腳本
  • conf/ - 集群設(shè)置的配置模板
  • conf-quickstart/ - 此quickstart的配置
  • extensions/ - Druid的所有擴(kuò)展
  • haddop-dependencies/ - Druid haddop的依賴
  • lib/ - 所有Druid核心包含的包
  • quickstart/ - 對(duì)此quickstart有用的文件

啟動(dòng)zookeeper

Druid依賴zookeeper進(jìn)行分布式系統(tǒng)的協(xié)調(diào)施禾,你需要下載并運(yùn)行Zookeeper。

curl http://www.gtlib.gatech.edu/pub/apache/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz -o zookeeper-3.4.6.tar.gz
tar -xzf zookeeper-3.4.6.tar.gz
cd zookeeper-3.4.6
cp conf/zoo_sample.cfg conf/zoo.cfg
./bin/zkServer.sh start

啟動(dòng)Druid服務(wù)

當(dāng)Zookeeper啟動(dòng)后宣蠕,返回druid-0.9.2的目錄例隆。在根目錄下,執(zhí)行以下指令:

bin/init

這會(huì)為你設(shè)置一些目錄抢蚀。然后镀层,你可以在不同的終端窗口啟動(dòng)多個(gè)Druid 進(jìn)程。在本教程中會(huì)在同一系統(tǒng)中運(yùn)行所有Druid進(jìn)程皿曲,在一些大型分布式集群中也可以將一些Druid進(jìn)程配置在一起唱逢。

java `cat conf-quickstart/druid/historical/jvm.config | xargs` -cp "conf-quickstart/druid/_common:conf-quickstart/druid/historical:lib/*" io.druid.cli.Main server historical
java `cat conf-quickstart/druid/broker/jvm.config | xargs` -cp "conf-quickstart/druid/_common:conf-quickstart/druid/broker:lib/*" io.druid.cli.Main server broker
java `cat conf-quickstart/druid/coordinator/jvm.config | xargs` -cp "conf-quickstart/druid/_common:conf-quickstart/druid/coordinator:lib/*" io.druid.cli.Main server coordinator
java `cat conf-quickstart/druid/overlord/jvm.config | xargs` -cp "conf-quickstart/druid/_common:conf-quickstart/druid/overlord:lib/*" io.druid.cli.Main server overlord
java `cat conf-quickstart/druid/middleManager/jvm.config | xargs` -cp "conf-quickstart/druid/_common:conf-quickstart/druid/middleManager:lib/*" io.druid.cli.Main server middleManager

當(dāng)服務(wù)啟動(dòng)后你能看到一條日志信息被打印。
如果你想停止服務(wù)屋休,CTRL-C 可以退出正在運(yùn)行的java進(jìn)程坞古。服務(wù)停止后,如果你想干凈的啟動(dòng)劫樟,刪除var目錄并且重新執(zhí)行init腳本痪枫。
每次服務(wù)啟動(dòng)后,你都可以加載數(shù)據(jù)了叠艳。

批量加載數(shù)據(jù)

為了便于你開始使用Druid奶陈,我們收錄了2016年9月12號(hào)維基百科的編輯示例。

本節(jié)介紹如何批量加載數(shù)據(jù)附较,但是你可以跳過開頭直接學(xué)習(xí)如何加載實(shí)時(shí)數(shù)據(jù)流吃粒。Druid的流媒體攝取能夠在事件發(fā)生和可查詢之間無時(shí)延的加載數(shù)據(jù)。

除了時(shí)間維度以外拒课,在維基百科的數(shù)據(jù)集中的維度dimensions (可以過濾和拆分的屬性)徐勃,還包括:

  • channel
  • cityName
  • comment
  • countryIsoCode
  • countryName
  • isAnonymous
  • isMinor
  • isNew
  • isRobot
  • isUnpatrolled
  • metroCode
  • namespace
  • page
  • regionIsoCode
  • regionName
  • user

在Druid(能夠聚合的值)中維基百科數(shù)據(jù)集中有如下已知度量方式:

  • count
  • added
  • deleted
  • delta
  • user_unique

你可以提交一個(gè)指向文件的數(shù)據(jù)提取任務(wù),向Druid中加載數(shù)據(jù)捕发。我們已經(jīng)包含了一個(gè)任務(wù)疏旨,能夠加載歸檔文件中的wikiticker-2015-09-12-sampled.json文件很魂。打開一個(gè)新的終端窗口扎酷,進(jìn)入druid-0.9.2目錄,然后將這個(gè)任務(wù)提交到Druid:

curl -X 'POST' -H 'Content-Type:application/json' -d @quickstart/wikiticker-index.json localhost:8090/druid/indexer/v1/task

如果任務(wù)提交成功遏匆,將會(huì)打印輸出任務(wù)的ID

{"task":"index_hadoop_wikipedia_2013-10-09T21:30:32.802Z"}

可以通過http://localhost:8090/console.html控制臺(tái)界面法挨,查看任務(wù)的狀態(tài)谁榜。你可以定期的刷新界面,當(dāng)任務(wù)成功的時(shí)候凡纳,任務(wù)狀態(tài)會(huì)變成"SUCCESS"窃植。
當(dāng)數(shù)據(jù)提取任務(wù)結(jié)束后,數(shù)據(jù)會(huì)被historical nodes加載荐糜,然后一兩分鐘后就可以查詢到了巷怜。你可以通過協(xié)調(diào)器控制臺(tái)界面來監(jiān)控?cái)?shù)據(jù)加載的進(jìn)度暴氏,登錄http://localhost:8081/#/ 界面,觀察是否存在一個(gè)"wikiticker"數(shù)據(jù)源答渔,如果有一個(gè)藍(lán)色圓圈則表明該數(shù)據(jù)完全可用。
一旦數(shù)據(jù)已經(jīng)完全可用沼撕,你就能立即查詢到它-通過下面的數(shù)據(jù)查詢章節(jié)可以學(xué)習(xí)如何進(jìn)行查詢宋雏。或者如果你想加載不同的數(shù)據(jù)集磨总,你也能夠繼續(xù)加載想要的數(shù)據(jù)部分。

加載流式數(shù)據(jù)

我們可以通過簡(jiǎn)單的HTTP API將事件推送到Druid舍败,來加載流式數(shù)據(jù)。為了實(shí)現(xiàn)這點(diǎn)我們需要用到一個(gè)高級(jí)別的data producer庫Tranquility敬拓。
執(zhí)行以下指令來下載
Tranquility:

curl -O http://static.druid.io/tranquility/releases/tranquility-distribution-0.8.0.tgz
tar -xzf tranquility-distribution-0.8.0.tgz
cd tranquility-distribution-0.8.0

在Druid配置文件conf-quickstart/tranquility/server.json里面已經(jīng)包含了配置邻薯,作為Druid分發(fā)的一個(gè)metrics datasource。將Tranquility服務(wù)進(jìn)程啟動(dòng)厕诡,就可以將時(shí)間直接推送到Druid了营勤。

bin/tranquility server -configFile <path_to_druid_distro>/conf-quickstart/tranquility/server.json

本節(jié)介紹了如何使用Tranquility加載數(shù)據(jù),但Druid還支持各種其他的流式傳輸方式葛作,包括現(xiàn)在比較流行的流技術(shù),如Kafka, Storm, Samza和Spark Streaming绪穆。

數(shù)據(jù)源的維度(能夠過濾和拆分的屬性)是靈活的。無模式維度的配置意味著Druid能夠接受JSON輸入中的任意字段作為維度玖院。
此數(shù)據(jù)源中的metrics度量(可以聚合的值)為:

  • count
  • value_sum (從輸入中導(dǎo)出)
  • value_min (從輸入中導(dǎo)出)
  • value_max (從輸入中導(dǎo)出)

我們內(nèi)置了一些腳本,可以生成一些隨機(jī)樣本維度加載到此數(shù)據(jù)源中试溯。你可以在Druid分發(fā)庫中執(zhí)行以下指令來使用它:

bin/generate-example-metrics | curl -XPOST -H'Content-Type: application/json' --data-binary @- http://localhost:8200/v1/post/metrics

然后會(huì)打印輸出類似如下信息:

{"result":{"received":25,"sent":25}}

這表示HTTP服務(wù)器收到你發(fā)送的25個(gè)事件郊酒,并且向Druid發(fā)送了25個(gè)。請(qǐng)注意燎窘,這可能需要幾秒鐘來完成第一次運(yùn)行,因?yàn)楸仨氁o攝取任務(wù)分配Druid資源钩骇。后續(xù)的POSTS應(yīng)該能快速完成铝量。

一旦數(shù)據(jù)發(fā)送到Druid,就能夠馬上查詢到它了纽匙。

數(shù)據(jù)查詢

直接Druid查詢

Druid支持一系列基于JSON的查詢。我們?cè)趒uickstart/wikiticker-top-pages.json中包含了一個(gè)topN查詢的示例烛缔,它會(huì)在此數(shù)據(jù)集中找到最多編輯的文章:

curl -L -H'Content-Type: application/json' -XPOST --data-binary @quickstart/wikiticker-top-pages.json http://localhost:8082/druid/v2/?pretty

可視化數(shù)據(jù)

Druid是面向高級(jí)用戶的分析應(yīng)用程序的理想選擇轩拨。有許多不同的開源軟件用Druid進(jìn)行數(shù)據(jù)的可視化和探索。 我們建議嘗試Pivot晕翠,Caravel或Metabase對(duì)剛攝取的數(shù)據(jù)進(jìn)行可視化砍濒。
例如,如果您安裝了Pivot爸邢,您應(yīng)該可以在瀏覽器中的localhost:9090查看您的數(shù)據(jù)。

SQL和其它查詢庫

對(duì)于Druid碌尔,我們還有更多的查詢工具,包括SQL引擎和各種語言(如python和Ruby)的庫。更多信息請(qǐng)參考庫列表陪白。

集群安裝

此快速入門將使您能在單個(gè)計(jì)算機(jī)上運(yùn)行的所有服務(wù)。 下一步是加載您自己的數(shù)據(jù)立由。 或者序厉,您可以跳過去運(yùn)行一個(gè)分布式集群

原文鏈接:http://druid.io/docs/0.9.2/tutorials/quickstart.html

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末道盏,一起剝皮案震驚了整個(gè)濱河市文捶,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌粹排,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,635評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件坠敷,死亡現(xiàn)場(chǎng)離奇詭異膝迎,居然都是意外死亡胰耗,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,543評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門掂恕,熙熙樓的掌柜王于貴愁眉苦臉地迎上來弛槐,“玉大人,你說我怎么就攤上這事乎串。” “怎么了鸯两?”我有些...
    開封第一講書人閱讀 168,083評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)忙灼。 經(jīng)常有香客問我钝侠,道長(zhǎng),這世上最難降的妖魔是什么帅韧? 我笑而不...
    開封第一講書人閱讀 59,640評(píng)論 1 296
  • 正文 為了忘掉前任忽舟,我火速辦了婚禮,結(jié)果婚禮上叮阅,老公的妹妹穿的比我還像新娘。我一直安慰自己哑诊,他們只是感情好及刻,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,640評(píng)論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著暑劝,像睡著了一般颗搂。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上丢氢,一...
    開封第一講書人閱讀 52,262評(píng)論 1 308
  • 那天疚察,我揣著相機(jī)與錄音,去河邊找鬼貌嫡。 笑死该溯,一個(gè)胖子當(dāng)著我的面吹牛别惦,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播氯庆,決...
    沈念sama閱讀 40,833評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼猾漫,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼感凤!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起禽翼,我...
    開封第一講書人閱讀 39,736評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤族跛,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后长酗,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體桐绒,經(jīng)...
    沈念sama閱讀 46,280評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,369評(píng)論 3 340
  • 正文 我和宋清朗相戀三年咧叭,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了烁竭。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,503評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡婉弹,死狀恐怖终吼,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情衔峰,我是刑警寧澤蛙粘,帶...
    沈念sama閱讀 36,185評(píng)論 5 350
  • 正文 年R本政府宣布出牧,位于F島的核電站歇盼,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏豹缀。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,870評(píng)論 3 333
  • 文/蒙蒙 一啸如、第九天 我趴在偏房一處隱蔽的房頂上張望氮惯。 院中可真熱鬧,春花似錦妇汗、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,340評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至模她,卻和暖如春懂牧,著一層夾襖步出監(jiān)牢的瞬間侈净,已是汗流浹背僧凤。 一陣腳步聲響...
    開封第一講書人閱讀 33,460評(píng)論 1 272
  • 我被黑心中介騙來泰國(guó)打工躯保, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人途事。 一個(gè)月前我還...
    沈念sama閱讀 48,909評(píng)論 3 376
  • 正文 我出身青樓该肴,卻偏偏與公主長(zhǎng)得像夹纫,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子娃承,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,512評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理怕篷,服務(wù)發(fā)現(xiàn)廊谓,斷路器,智...
    卡卡羅2017閱讀 134,701評(píng)論 18 139
  • Druid 是一個(gè)為在大數(shù)據(jù)集之上做實(shí)時(shí)統(tǒng)計(jì)分析而設(shè)計(jì)的開源數(shù)據(jù)存儲(chǔ)舔示。這個(gè)系統(tǒng)集合了一個(gè)面向列存儲(chǔ)的層电抚,一個(gè)分布式...
    曹振華閱讀 8,463評(píng)論 1 24
  • Druid具有高可用竖共、高容錯(cuò)的特性。 本文將搭建一個(gè)簡(jiǎn)單的Druid集群公给,并且將會(huì)討論如何進(jìn)一步配置以滿足您的需求...
    helloworld1214閱讀 7,143評(píng)論 1 5
  • Druid被設(shè)計(jì)成可擴(kuò)展淌铐、高容錯(cuò)的集群。 在本文檔中腿准,我們將搭建一個(gè)簡(jiǎn)單的集群,并討論如何進(jìn)一步配置以滿足您的需求...
    Sisyphus秋居拾遺閱讀 2,191評(píng)論 0 2
  • 我忘記我們是怎么認(rèn)識(shí)的,也許是一句你好孟辑,也許是一個(gè)微笑蔫敲。就像他們說的那樣烧给,應(yīng)該認(rèn)識(shí)的人,是會(huì)不管以什么樣的方式認(rèn)識(shí)...
    鑰匙給你嫁給你閱讀 216評(píng)論 0 0