Spark Streaming 初見

環(huán)境:

[root@test spark]# uname -a
Linux test 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
[root@test spark]# cat /etc/issue
CentOS release 6.5 (Final)
[root@test ~]# ls
jdk-7u79-linux-x64.tar.gz  spark-1.6.0-bin-hadoop2.6.tgz

這里我假設(shè)你已經(jīng)安裝并且配置好了運(yùn)行spark的環(huán)境伞芹,本文只記錄官網(wǎng)教程給出的Spark Streaming 的WordCount程序的一個(gè)python版本。

進(jìn)入安裝好的spark目錄中纯衍,這里我是

cd  /usr/local/spark

examples/src/main/python/streaming/下我們能看到各種數(shù)據(jù)接入方式的示例贝椿,這里我使用的是network_wordcount.py(因?yàn)檫@個(gè)看起來使用方法很easy)

官網(wǎng)也給了例子的使用方法

"""
Counts words in UTF8 encoded, '\n' delimited text received from the network every second.
Usage: network_wordcount.py <hostname> <port>
<hostname> and <port> describe the TCP server that Spark Streaming would connect to receive data.

To run this on your local machine, you need to first run a Netcat server
$ nc -lk 9999
and then run the example
$ bin/spark-submit examples/src/main/python/streaming/network_wordcount.py localhost 9999
"""

即:我們首先要安裝nc(netcat)這個(gè)東西

  1. 下載netcat安裝包
wget http://sourceforge.net/projects/netcat/files/netcat/0.7.1/netcat-0.7.1-1.i386.rpm
  1. 執(zhí)行安裝: rpm -ihv netcat-0.7.1-1.i386.rpm
    這里報(bào)了如下錯(cuò)誤:
rpm -ihv netcat-0.7.1-1.i386.rpm  
warning: netcat-0.7.1-1.i386.rpm: Header V3 DSA/SHA1 Signature, key ID b2d79fc1: NOKEY  
error: Failed dependencies:  
        libc.so.6 is needed by netcat-0.7.1-1.i386  
        libc.so.6(GLIBC_2.0) is needed by netcat-0.7.1-1.i386  
        libc.so.6(GLIBC_2.1) is needed by netcat-0.7.1-1.i386  
        libc.so.6(GLIBC_2.3) is needed by netcat-0.7.1-1.i386  
  1. 解決依賴包問題
[root@test streaming]# yum list glibc*
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * epel: ftp.cuhk.edu.hk
 * extras: mirrors.aliyun.com
 * rpmforge: ftp.neowiz.com
 * updates: mirrors.aliyun.com
Installed Packages
glibc.i686                                          2.12-1.192.el6                                @base
glibc.x86_64                                        2.12-1.192.el6                                @base
glibc-common.x86_64                                 2.12-1.192.el6                                @base
glibc-devel.x86_64                                  2.12-1.192.el6                                @base
glibc-headers.x86_64                                2.12-1.192.el6                                @base
glibc-static.x86_64                                 2.12-1.192.el6                                @base
glibc-utils.x86_64                                  2.12-1.192.el6                                @base
Available Packages
glibc-devel.i686                                    2.12-1.192.el6                                base 
glibc-static.i686                                   2.12-1.192.el6                                base 
  1. 安裝依賴包:
yum install glibc.i686
  1. 再次執(zhí)行安裝:
rpm -ihv netcat-0.7.1-1.i386.rpm
warning: netcat-0.7.1-1.i386.rpm: Header V3 DSA/SHA1 Signature, key ID b2d79fc1: NOKEY  
Preparing...                ########################################### [100%]  
   1:netcat                 ########################################### [100%]  

安裝成功

  1. 執(zhí)行指令nc -lk 9999
    提示
nc: invalid option -- 'k'
Try `nc --help' for more information.

網(wǎng)上搜了一下解決辦法http://unix.stackexchange.com/questions/193579/nc-commands-k-option

S O L V E D The consultant installed netcat so I uninstalled netcat and then nc was not working. So I also removed and reinstalled nc again. Now -k option is working now Thanks for your helps – Murat Apr 1 '15 at 10:03
意思就是卸載了再重新安裝一遍,貌似是被netcat的一種指令裝重復(fù)了儡陨。

  1. 解決netcat問題
[root@test ~]# yum remove netcat
Loaded plugins: fastestmirror
Setting up Remove Process
Resolving Dependencies
--> Running transaction check
---> Package netcat.i386 0:0.7.1-1 will be erased
--> Finished Dependency Resolution

重新安裝:(這里要注意使用依賴包的名稱是nc)

[root@test ~]# yum install nc
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * epel: mirror.premi.st
 * extras: mirrors.aliyun.com
 * rpmforge: ftp.neowiz.com
 * updates: mirrors.aliyun.com
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package nc.x86_64 0:1.84-24.el6 will be installed
--> Finished Dependency Resolution
  1. 執(zhí)行程序
    新建一個(gè)命令行窗口執(zhí)行以下指令:
[root@test spark]# nc -lk 9999

在剛才的窗口執(zhí)行指令(還是在spark主目錄下):

[root@test spark]# bin/spark-submit examples/src/main/python/streaming/network_wordcount.py localhost 9999
  1. 測(cè)試輸出

在nc 那端的窗口輸入:

hello nihao my name is xzp hello world!

spark程序顯示:

-------------------------------------------
Time: 2016-07-20 11:56:41
-------------------------------------------
(u'my', 1)
(u'is', 1)
(u'nihao', 1)
(u'world!', 1)
(u'xzp', 1)
(u'name', 1)
(u'hello', 2)

-------------------------------------------
Time: 2016-07-20 11:56:42
-------------------------------------------

-------------------------------------------
Time: 2016-07-20 11:56:43
-------------------------------------------

整個(gè)流程到這里就結(jié)束拉辙诞,接下來就是根據(jù)業(yè)務(wù)邏輯自己更改官方實(shí)例了辙售,因?yàn)槲宜臼峭ㄟ^RESTAPI方式調(diào)用從而獲取數(shù)據(jù),所以接下來的數(shù)據(jù)接口就會(huì)改成調(diào)用RESTAPI版本

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末飞涂,一起剝皮案震驚了整個(gè)濱河市旦部,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌封拧,老刑警劉巖志鹃,帶你破解...
    沈念sama閱讀 217,826評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異泽西,居然都是意外死亡曹铃,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,968評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門捧杉,熙熙樓的掌柜王于貴愁眉苦臉地迎上來陕见,“玉大人,你說我怎么就攤上這事味抖∑捞穑” “怎么了?”我有些...
    開封第一講書人閱讀 164,234評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵仔涩,是天一觀的道長忍坷。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么佩研? 我笑而不...
    開封第一講書人閱讀 58,562評(píng)論 1 293
  • 正文 為了忘掉前任柑肴,我火速辦了婚禮,結(jié)果婚禮上旬薯,老公的妹妹穿的比我還像新娘晰骑。我一直安慰自己,他們只是感情好绊序,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,611評(píng)論 6 392
  • 文/花漫 我一把揭開白布巫财。 她就那樣靜靜地躺著选调,像睡著了一般艰争。 火紅的嫁衣襯著肌膚如雪上陕。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,482評(píng)論 1 302
  • 那天阶捆,我揣著相機(jī)與錄音耗式,去河邊找鬼。 笑死趁猴,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的彪见。 我是一名探鬼主播儡司,決...
    沈念sama閱讀 40,271評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼余指!你這毒婦竟也來了捕犬?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,166評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤酵镜,失蹤者是張志新(化名)和其女友劉穎碉碉,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體淮韭,經(jīng)...
    沈念sama閱讀 45,608評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡垢粮,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,814評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了靠粪。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蜡吧。...
    茶點(diǎn)故事閱讀 39,926評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖占键,靈堂內(nèi)的尸體忽然破棺而出昔善,到底是詐尸還是另有隱情,我是刑警寧澤畔乙,帶...
    沈念sama閱讀 35,644評(píng)論 5 346
  • 正文 年R本政府宣布君仆,位于F島的核電站,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏返咱。R本人自食惡果不足惜钥庇,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,249評(píng)論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望洛姑。 院中可真熱鬧上沐,春花似錦、人聲如沸楞艾。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,866評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽硫眯。三九已至蕴侧,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間两入,已是汗流浹背净宵。 一陣腳步聲響...
    開封第一講書人閱讀 32,991評(píng)論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留裹纳,地道東北人择葡。 一個(gè)月前我還...
    沈念sama閱讀 48,063評(píng)論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像剃氧,于是被迫代替她去往敵國和親敏储。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,871評(píng)論 2 354

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