方案一:根據(jù)官方實(shí)例,下載預(yù)編譯好的版本,執(zhí)行以下步驟:
? ? ? 1.nc -lk 9999 作為實(shí)時(shí)數(shù)據(jù)源
? ? ? ?2../bin/run-example org.apache.spark.examples.sql.streaming.StructuredNetworkWordCount localhost 9999
? ? ? 3.在第一步的terminal 窗口輸入一些句子
? ? ? 4.第二步的output 就是實(shí)時(shí)執(zhí)行結(jié)果
?此方案的問(wèn)題有
? ? ? 1.探索其中的api 比較困難安寺,比如我想試試另外一種寫(xiě)法,需要改源碼凉馆,然后編譯,時(shí)間就變長(zhǎng)了
? ? ?2.如果是一個(gè)裸機(jī)的話价涝,需要安裝好java 環(huán)境,spark和java版本之間的依賴也要特別小心
方案二(2個(gè)docker 命令验烧,你就可以為所欲為的在瀏覽器里面運(yùn)行板驳,更改Word counts這個(gè)hello word了)
? ? ? ? ? 除去下載docker img的時(shí)間,5min沒(méi)法完成以下步驟碍拆,請(qǐng)立即私信給我若治,有獎(jiǎng)慨蓝,哈哈
? ? ?1.docker run? ? -p 8080:8080 --rm fancyisbest/zeppeinsparkstreaming:0.1 (第一次會(huì)花很長(zhǎng)時(shí)間在pull img)
2.docker exec? ?-it `docker ps -q`? nc -lkp 9999 (注意如果你有多個(gè)container在運(yùn)行,請(qǐng)把`docker ps -q` 替換成上一個(gè)的container id)
3.打開(kāi)瀏覽器輸入http://localhost:8080/#/端幼, 左下角有Word counts礼烈,點(diǎn)擊進(jìn)入notebook,點(diǎn)擊運(yùn)行所有段落婆跑。
4.?在第二步terminal輸入些句子此熬,你就可以在notebook里面觀察到streaming 在執(zhí)行。
此方案的優(yōu)勢(shì)
1.除了docker滑进,不需要安裝任何依賴犀忱,這很dev ops
2.可以狠狠地改代碼,改完就可以立即執(zhí)行郊供,不用擔(dān)心會(huì)破壞任何環(huán)境峡碉,探索你的世界近哟,你做主驮审。
提示:
? ? 1.此方案的技術(shù)堆是:docker+zeppelin+spark
? ? 2.docker img是我在zeppelin img上加入了必要的命令和notebook 打包成的img,請(qǐng)放心使用吉执。
? ? 3.如果你對(duì)docker疯淫,zeppelin不熟悉,不要擔(dān)心戳玫,它們都很簡(jiǎn)單熙掺,只要稍微花點(diǎn)時(shí)間就可以掌握,請(qǐng)記住我們的目標(biāo)是學(xué)習(xí)spark streaming
參考:
? ? ?zeppelin 官網(wǎng)http://zeppelin.apache.org/