pig使用入门1
1、在pig下載的安裝包,解壓完成了之后,有一個(gè)tutorial目錄,我們使用里面的數(shù)據(jù)來(lái)開(kāi)始pig學(xué)習(xí)。如果tutorial目錄下沒(méi)有存在pigtutorial.tar.gz文件的話,那么需要使用ant來(lái)編譯出這個(gè)文件
如果沒(méi)有ant,見(jiàn)分類(lèi)linux下的ant安裝
2、進(jìn)入tutorial目錄,執(zhí)行命令ant
得到pigtutorial.tar.gz
3、使用tar -zxvf pigtutorial.tar.gz 解壓
4、上傳excite-small.log進(jìn)入hdfs中
$>hadoop dfs -put excite-smal.log /input
因?yàn)槭褂胮ig處理的是hdfs中的文件
我們下面將主要分析excite-small.log文件,該文件的數(shù)據(jù)結(jié)構(gòu)如下:
UserID?? TimeStamp SearchQuery
5、執(zhí)行pig進(jìn)入pig的上下文grunt
6、首先將excite-small.log加載到一個(gè)變量(也稱之為alias)中,我們將使用該變量來(lái)表示這個(gè)數(shù)據(jù)集:
grunt> log = load 'excite-small.log' as (user, time, query);
注意的是這時(shí)pig并沒(méi)有運(yùn)行該命令,僅僅是解析了該命令,只有到使用dump命令或者是store命令時(shí)pig才會(huì)真正執(zhí)行該命令。dump命令將打印出這個(gè)變量的內(nèi)容,store命 令將變量所代表的內(nèi)容保存到一個(gè)文件中。
7、 grunt> describe log; 查看結(jié)構(gòu)(語(yǔ)句都以; 結(jié)束)
8、如果我們想要查看該log文件的前4行的話:
grunt> lmt = limit log 4;
grunt> dump lmt;(打印)
?
注意:如果出現(xiàn):Unable to open iterator for alias a,請(qǐng)檢查hadoop是否仍處于safemode狀態(tài),如果是,退出這個(gè)狀態(tài)。
轉(zhuǎn)載于:https://www.cnblogs.com/jsunday/p/3789632.html
總結(jié)
- 上一篇: Swift学习笔记(8)--函数
- 下一篇: MONO Design创建电信3D机房