欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種采用shell腳本啟動(dòng)Nutch采集系統(tǒng)的方法

文檔序號(hào):6551097閱讀:153來源:國(guó)知局
一種采用shell腳本啟動(dòng)Nutch采集系統(tǒng)的方法
【專利摘要】本發(fā)明公開了一種采用shell腳本啟動(dòng)Nutch采集系統(tǒng)的方法,屬于搜索引擎啟動(dòng)【技術(shù)領(lǐng)域】,基于Nutch的服務(wù)器上,對(duì)Nutch采集系統(tǒng)進(jìn)行啟動(dòng),將命令寫在一個(gè)shell腳本中,并在啟動(dòng)命令前做檢查工作,Nutch采集系統(tǒng)是應(yīng)用在硬件服務(wù)器內(nèi)、一個(gè)安裝了Hadoop、Hbase、Zookeeper的集群系統(tǒng),各個(gè)節(jié)點(diǎn)之間要實(shí)現(xiàn)NameNode到DataNode、JobTracker到TaskTracker無密碼登陸,shell腳本在運(yùn)行NameNode的節(jié)點(diǎn)上執(zhí)行。本發(fā)明的一種采用shell腳本啟動(dòng)Nutch采集系統(tǒng)的方法,使系統(tǒng)的啟動(dòng)方便快捷,不再是一個(gè)個(gè)的分別手動(dòng)啟動(dòng)對(duì)應(yīng)進(jìn)程,而是將之一體化,高效快速開啟集群。
【專利說明】[0001] -種采用she I I腳本啟動(dòng)Nutch采集系統(tǒng)的方法

【技術(shù)領(lǐng)域】
[0002] 本發(fā)明涉及一種搜索引擎啟動(dòng)【技術(shù)領(lǐng)域】,具體地說是一種采用shell腳本啟動(dòng) Nutch采集系統(tǒng)的方法。

【背景技術(shù)】
[0003] Nutch是一個(gè)由Java實(shí)現(xiàn)的,剛剛誕生開放源代碼(open-source)的web搜索引 擎。相對(duì)于那些商用的搜索引擎,Nutch作為開放源代碼搜索引擎將會(huì)更加透明,從而更 值得大家信賴.現(xiàn)在所有主要的搜索引擎都采用私有的排序算法,而不會(huì)解釋為什么一 個(gè)網(wǎng)頁(yè)會(huì)排在一個(gè)特定的位置.除此之外,有的搜索引擎依照網(wǎng)站所付的費(fèi)用,而不是根 據(jù)它們本身的價(jià)值進(jìn)行排序.與它們不同,Nutch沒有什么需要隱瞞,也沒有動(dòng)機(jī)去扭曲 搜索的結(jié)果.Nutch盡自己最大的努力為用戶提供最好的搜索結(jié)果。Nutch主要分為兩個(gè) 部分:爬蟲crawler和查詢searcher。Crawler主要用于從網(wǎng)絡(luò)上抓取網(wǎng)頁(yè)并為這些網(wǎng)頁(yè) 建立索引。Searcher主要利用這些索引檢索用戶的查找關(guān)鍵詞來產(chǎn)生查找結(jié)果。兩者之 間的接口是索引,所以除去索引部分,兩者之間的稱合度很低。Crawler和Searcher兩部 分盡量分開的目的主要是為了使兩部分可以分布式配置在硬件平臺(tái)上,例如將Crawler和 Searcher分別放在兩個(gè)主機(jī)上,這樣可以提升性能。
[0004] Nutch采集系統(tǒng)是匯總各各種數(shù)據(jù)信息的基于Nutch的服務(wù)器數(shù)據(jù)系統(tǒng)。要啟動(dòng) Nutch采集系統(tǒng),要分別去執(zhí)行Hadoop的啟動(dòng)腳本,Zookeeper的啟動(dòng)腳本,Hbase的啟動(dòng) 腳本,這三者的腳本分別控制著各自進(jìn)程的啟動(dòng),如果分別取手動(dòng)運(yùn)行這些腳本,就降低了 工作的效率。
[0005] HadoopHadoop是一個(gè)能夠?qū)Υ罅繑?shù)據(jù)進(jìn)行分布式處理的軟件框架。ZooKeeper 是一個(gè)分布式的,開放源碼的分布式應(yīng)用程序協(xié)調(diào)服務(wù),包含一個(gè)簡(jiǎn)單的原語(yǔ)集,是Hadoop 和Hbase的重要組件。HBase是一個(gè)開源的非關(guān)系型分布式數(shù)據(jù)庫(kù)(NoSQL),它參考了谷歌 的BigTable建模,實(shí)現(xiàn)的編程語(yǔ)言為Java。


【發(fā)明內(nèi)容】

[0006] 本發(fā)明的技術(shù)任務(wù)是提供一種使系統(tǒng)的啟動(dòng)方便快捷,不再是一個(gè)個(gè)的分別手動(dòng) 啟動(dòng)對(duì)應(yīng)進(jìn)程,而是將之一體化,高效快速開啟集群的一種采用shell腳本啟動(dòng)Nutch采集 系統(tǒng)的方法。
[0007] 本發(fā)明的技術(shù)任務(wù)是按以下方式實(shí)現(xiàn)的,一種采用shell腳本啟動(dòng)Nutch采集 系統(tǒng)的方法,將命令寫在一個(gè)shell腳本中,并在啟動(dòng)命令前做檢查工作,Nutch采集系統(tǒng) 是一個(gè)安裝了 Hadoop、Hbase、Zookeeper的集群系統(tǒng),各個(gè)節(jié)點(diǎn)之間要實(shí)現(xiàn)NameNode到 DataNode、JobTracker到TaskTracker無密碼登陸,shell腳本在運(yùn)行NameNode的節(jié)點(diǎn)上 執(zhí)行,包括如下步驟: (1) 、將shell腳本運(yùn)行時(shí)傳遞的第一個(gè)參數(shù)所代表的文件的內(nèi)容導(dǎo)出到一個(gè)名為 SLAVES的變量中; (2) 、將shell腳本運(yùn)行時(shí)傳遞的第二個(gè)參數(shù)所代表的文件的內(nèi)容導(dǎo)出到一個(gè)名為 ZOOKEEPERHOSTS 的變量中; (3) 、要被檢查的節(jié)點(diǎn)機(jī)的數(shù)量導(dǎo)出到一個(gè)名為SLAVESCOUNT的變量中; (4) 、將被檢查的節(jié)點(diǎn)機(jī)的數(shù)量賦值給一個(gè)shell變量i ; (5) 、遍歷SLAVES的內(nèi)容,然后對(duì)每個(gè)節(jié)點(diǎn)檢查是否可以連通,以此來判斷節(jié)點(diǎn)是否工 作; (6) 、用jps命令查看正在運(yùn)行的java進(jìn)程,然后查看NameNode關(guān)鍵詞的內(nèi)容,并統(tǒng)計(jì) 內(nèi)容行數(shù); (7) 判斷變量i是否等于0,即是否所有被檢查節(jié)點(diǎn)都可以連通;若非連通,則給出未連 通的提示信息;若連通則繼續(xù)判斷NN變量是否等于0,即是否有NameNode進(jìn)程運(yùn)行; (8) 、若判斷NameNode進(jìn)程已經(jīng)在運(yùn)行,給出已經(jīng)在運(yùn)行的提示;若判斷NameNode進(jìn)程 沒有在運(yùn)行,則啟動(dòng)動(dòng)Nutch采集系統(tǒng)。
[0008] 步驟(1)中的參數(shù)是一個(gè)文件的路徑,此文件的內(nèi)容是被檢查的節(jié)點(diǎn)機(jī)的機(jī)器名, 每行一個(gè)。
[0009] 步驟(2)中的參數(shù)也是一個(gè)文件的路徑,而這個(gè)文件的內(nèi)容是安裝有Zooke印er 服務(wù)器的節(jié)點(diǎn)的機(jī)器名,每行一個(gè)。
[0010] Shell :殼層,在計(jì)算機(jī)科學(xué)中,是指"提供用戶使用界面"的軟件,通常指的是命令 行界面的解析器。它類似于DOS下的co_and.com。它接收用戶命令,然后調(diào)用相應(yīng)的應(yīng)用 程序。同時(shí)它又是一種程序設(shè)計(jì)語(yǔ)言。作為命令語(yǔ)言,它交互式解釋和執(zhí)行用戶輸入的命 令或者自動(dòng)地解釋和執(zhí)行預(yù)先設(shè)定好的一連串的命令;作為程序設(shè)計(jì)語(yǔ)言,它定義了各種 變量和參數(shù),并提供了許多在高階語(yǔ)言中才具有的控制結(jié)構(gòu),包括循環(huán)和分支。
[0011] 本發(fā)明的一種采用shell腳本啟動(dòng)Nutch采集系統(tǒng)的方法具有以下優(yōu)點(diǎn): 1、 使用腳本的方式依次統(tǒng)一啟動(dòng)Hadoop,Zookeeper,Hbase,將現(xiàn)有技術(shù)分別手動(dòng)啟動(dòng) Hadoop,Zookeeper,Hbase的費(fèi)力工作簡(jiǎn)化,將之合并在一起,提高工作的效率; 2、 還可以判斷節(jié)點(diǎn)機(jī)的運(yùn)行狀況,如果應(yīng)用在節(jié)點(diǎn)非常多的集群中,比起要一個(gè)一個(gè) 檢查,方便很多。

【專利附圖】

【附圖說明】
[0012] 下面結(jié)合附圖對(duì)本發(fā)明進(jìn)一步說明。
[0013] 附圖1為一種采用shell腳本啟動(dòng)Nutch采集系統(tǒng)的方法的流程圖。

【具體實(shí)施方式】
[0014] 參照說明書附圖和具體實(shí)施例對(duì)本發(fā)明的一種采用shell腳本啟動(dòng)Nutch采集系 統(tǒng)的方法作以下詳細(xì)地說明。
[0015] 實(shí)施例1 : 本發(fā)明的一種采用shell腳本啟動(dòng)Nutch采集系統(tǒng)的方法,將命令寫在一個(gè)shell 腳本中,并在啟動(dòng)命令前做檢查工作,Nutch采集系統(tǒng)是一個(gè)安裝了 Hadoop、Hbase、 Zookeeper的集群系統(tǒng),各個(gè)節(jié)點(diǎn)之間要實(shí)現(xiàn)NameNode到DataNode、JobTracker到 TaskTracker無密碼登陸,shell腳本在運(yùn)行NameNode的節(jié)點(diǎn)上執(zhí)行,包括如下步驟: (1) 、將shell腳本運(yùn)行時(shí)傳遞的第一個(gè)參數(shù)所代表的文件的內(nèi)容導(dǎo)出到一個(gè)名為 SLAVES的變量中; (2) 、將shell腳本運(yùn)行時(shí)傳遞的第二個(gè)參數(shù)所代表的文件的內(nèi)容導(dǎo)出到一個(gè)名為 Z00KEEPERH0STS 的變量中; (3) 、要被檢查的節(jié)點(diǎn)機(jī)的數(shù)量導(dǎo)出到一個(gè)名為SLAVESCOUNT的變量中; (4) 、將被檢查的節(jié)點(diǎn)機(jī)的數(shù)量賦值給一個(gè)shell變量i ; (5) 、遍歷SLAVES的內(nèi)容,然后對(duì)每個(gè)節(jié)點(diǎn)檢查是否可以連通,以此來判斷節(jié)點(diǎn)是否工 作; (6) 、用jps命令查看正在運(yùn)行的java進(jìn)程,然后查看NameNode關(guān)鍵詞的內(nèi)容,并統(tǒng)計(jì) 內(nèi)容行數(shù); (7) 判斷變量i是否等于0,即是否所有被檢查節(jié)點(diǎn)都可以連通;若非連通,則給出未連 通的提示信息;若連通則繼續(xù)判斷NN變量是否等于0,即是否有NameNode進(jìn)程運(yùn)行; (8) 、若判斷NameNode進(jìn)程已經(jīng)在運(yùn)行,給出已經(jīng)在運(yùn)行的提示;若判斷NameNode進(jìn)程 沒有在運(yùn)行,則啟動(dòng)動(dòng)Nutch采集系統(tǒng)。
[0016] 步驟(1)中的參數(shù)是一個(gè)文件的路徑,此文件的內(nèi)容是被檢查的節(jié)點(diǎn)機(jī)的機(jī)器名, 每行一個(gè)。
[0017] 步驟(2)中的參數(shù)也是一個(gè)文件的路徑,而這個(gè)文件的內(nèi)容是安裝有Zooke印er 服務(wù)器的節(jié)點(diǎn)的機(jī)器名,每行一個(gè)。
[0018] 實(shí)施例2: 本發(fā)明的一種采用shell腳本啟動(dòng)Nutch采集系統(tǒng)的方法 一種采用shell腳本啟動(dòng)Nutch采集系統(tǒng)的方法,其特征在于將命令寫在一個(gè)shell 腳本中,并在啟動(dòng)命令前做檢查工作,Nutch采集系統(tǒng)是一個(gè)安裝了 Hadoop、Hbase、 Zookeeper的集群系統(tǒng),各個(gè)節(jié)點(diǎn)之間要實(shí)現(xiàn)NameNode到DataNode、JobTracker到 TaskTracker無密碼登陸,shell腳本在運(yùn)行NameNode的節(jié)點(diǎn)上執(zhí)行,包括如下步驟: (1) 、將shell腳本運(yùn)行時(shí)傳遞的第一個(gè)參數(shù)所代表的文件的內(nèi)容導(dǎo)出到一個(gè)名為 SLAVES的變量中; (2) 、將shell腳本運(yùn)行時(shí)傳遞的第二個(gè)參數(shù)所代表的文件的內(nèi)容導(dǎo)出到一個(gè)名為 Z00KEEPERH0STS 的變量中; (3) 、要被檢查的節(jié)點(diǎn)機(jī)的數(shù)量導(dǎo)出到一個(gè)名為SLAVESCOUNT的變量中; (4) 、將被檢查的節(jié)點(diǎn)機(jī)的數(shù)量賦值給一個(gè)shell變量i ; (5) 、遍歷SLAVES的內(nèi)容,然后對(duì)每個(gè)節(jié)點(diǎn)檢查是否可以連通,以此來判斷節(jié)點(diǎn)是否工 作; set 'ping -c 4 $host | grep loss' 這行代碼將對(duì) $host 節(jié)點(diǎn) ping4 次,然后查找 loss 的關(guān)鍵詞所在的行,再將這行set到一個(gè)變量中,if [ $6 != "100%"]這個(gè)代碼的作用是判 斷set到的變量中的第七個(gè)參數(shù)內(nèi)容是否等于" 100%",等于100%說明完全ping不通,節(jié)點(diǎn) 未工作,不等于100%說明節(jié)點(diǎn)可以ping通,正在工作,如果ping通就將變量i減去1,如果 ping不通就在終端上提示〃Can't connect host $host, please check〃的信息,同時(shí)將信息 寫入一個(gè)在/tmp/下的名為start-cluster-info· log的日志文件; (6) 、用jps命令查看正在運(yùn)行的java進(jìn)程,然后查看NameNode關(guān)鍵詞的內(nèi)容,并統(tǒng)計(jì) 內(nèi)容行數(shù); (7) 判斷變量i是否等于0,即是否所有被檢查節(jié)點(diǎn)都可以連通;若非連通,則給出未連 通的提示信息;若連通則繼續(xù)判斷NN變量是否等于0,即是否有NameNode進(jìn)程運(yùn)行; (8) 、若判斷NameNode進(jìn)程已經(jīng)在運(yùn)行,給出已經(jīng)在運(yùn)行的提示;若判斷NameNode進(jìn)程 沒有在運(yùn)行,則啟動(dòng)動(dòng)Nutch采集系統(tǒng)。
[0019] 在if條件滿足后,代碼第26行start-all. sh用來啟動(dòng)Hadoop集群。
[0020] 用來在安裝有Zooke印er的服務(wù)器上啟動(dòng)Zooke印er,代碼執(zhí)行前要在對(duì)應(yīng)節(jié)點(diǎn) 上安裝一個(gè)名為"expect"的軟件包,這個(gè)軟件包可以ssh遠(yuǎn)程登陸到節(jié)點(diǎn),運(yùn)行交互式的 命令,來一個(gè)個(gè)的啟動(dòng)Zookeeper,代碼第39行start-hbase. sh用來啟動(dòng)Hbase集群。如 果不滿足if條件,就說明有節(jié)點(diǎn)連不通或者已經(jīng)有NameNode進(jìn)程在運(yùn)行,然后在終端輸出 日志信息,并且也輸出同樣信息到日志文件中。
[0021] 步驟(1)中的參數(shù)是一個(gè)文件的路徑,此文件的內(nèi)容是被檢查的節(jié)點(diǎn)機(jī)的機(jī)器名, 每行一個(gè)。
[0022] 步驟(2)中的參數(shù)也是一個(gè)文件的路徑,而這個(gè)文件的內(nèi)容是安裝有Zooke印er 服務(wù)器的節(jié)點(diǎn)的機(jī)器名,每行一個(gè)。
[0023] 上述【具體實(shí)施方式】?jī)H是本發(fā)明的具體個(gè)案,本發(fā)明的專利保護(hù)范圍包括但不限于 上述【具體實(shí)施方式】,任何符合本發(fā)明的一種采用shell腳本啟動(dòng)Nutch采集系統(tǒng)的方法的 權(quán)利要求書的且任何所屬【技術(shù)領(lǐng)域】的普通技術(shù)人員對(duì)其所做的適當(dāng)變化或替換,皆應(yīng)落入 本發(fā)明的專利保護(hù)范圍。
【權(quán)利要求】
1. 一種采用shell腳本啟動(dòng)Nutch采集系統(tǒng)的方法,其特征在于基于Nutch的服務(wù)器 上,對(duì)Nutch采集系統(tǒng)進(jìn)行啟動(dòng),將命令寫在一個(gè)shell腳本中,并在啟動(dòng)命令前做檢查工 作,Nutch采集系統(tǒng)是應(yīng)用在硬件服務(wù)器內(nèi)、一個(gè)安裝了 Hadoop、Hbase、Zookeeper的集群 系統(tǒng),各個(gè)節(jié)點(diǎn)之間要實(shí)現(xiàn)NameNode到DataNode、JobTracker到TaskTracker無密碼登 陸,shell腳本在運(yùn)行NameNode的節(jié)點(diǎn)上執(zhí)行,包括如下步驟: (1) 、將shell腳本運(yùn)行時(shí)傳遞的第一個(gè)參數(shù)所代表的文件的內(nèi)容導(dǎo)出到一個(gè)名為 SLAVES的變量中; (2) 、將shell腳本運(yùn)行時(shí)傳遞的第二個(gè)參數(shù)所代表的文件的內(nèi)容導(dǎo)出到一個(gè)名為 Z00KEEPERH0STS 的變量中; (3) 、要被檢查的節(jié)點(diǎn)機(jī)的數(shù)量導(dǎo)出到一個(gè)名為SLAVESCOUNT的變量中; (4) 、將被檢查的節(jié)點(diǎn)機(jī)的數(shù)量賦值給一個(gè)shell變量i ; (5) 、遍歷SLAVES的內(nèi)容,然后對(duì)每個(gè)節(jié)點(diǎn)檢查是否可以連通,以此來判斷節(jié)點(diǎn)是否工 作; (6) 、用jps命令查看正在運(yùn)行的java進(jìn)程,然后查看NameNode關(guān)鍵詞的內(nèi)容,并統(tǒng)計(jì) 內(nèi)容行數(shù); (7) 判斷變量i是否等于0,即是否所有被檢查節(jié)點(diǎn)都可以連通;若非連通,則給出未連 通的提示信息;若連通則繼續(xù)判斷NN變量是否等于0,即是否有NameNode進(jìn)程運(yùn)行; (8) 、若判斷NameNode進(jìn)程已經(jīng)在運(yùn)行,給出已經(jīng)在運(yùn)行的提示;若判斷NameNode進(jìn)程 沒有在運(yùn)行,則啟動(dòng)動(dòng)Nutch采集系統(tǒng)。
2. 根據(jù)權(quán)利要求1所述的一種采用shell腳本啟動(dòng)Nutch采集系統(tǒng)的方法,其特征在 于步驟(1)中的參數(shù)是一個(gè)文件的路徑,此文件的內(nèi)容是被檢查的節(jié)點(diǎn)機(jī)的機(jī)器名,每行一 個(gè)。
3. 根據(jù)權(quán)利要求1所述的一種采用shell腳本啟動(dòng)Nutch采集系統(tǒng)的方法,其特征在 于步驟(2)中的參數(shù)也是一個(gè)文件的路徑,而這個(gè)文件的內(nèi)容是安裝有Zookeeper服務(wù)器 的節(jié)點(diǎn)的機(jī)器名,每行一個(gè)。
【文檔編號(hào)】G06F17/30GK104050003SQ201410295739
【公開日】2014年9月17日 申請(qǐng)日期:2014年6月27日 優(yōu)先權(quán)日:2014年6月27日
【發(fā)明者】戴鴻君, 于治樓 申請(qǐng)人:浪潮集團(tuán)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
平南县| 辽宁省| 黔西县| 清苑县| 沭阳县| 康乐县| 石林| 翁牛特旗| 绿春县| 麻江县| 乃东县| 任丘市| 平泉县| 雷山县| 民和| 郁南县| 武强县| 鸡东县| 裕民县| 保德县| 德清县| 哈密市| 和田县| 荣成市| 新安县| 屏南县| 冕宁县| 东源县| 宝应县| 白河县| 霍邱县| 双桥区| 陇西县| 丹阳市| 永新县| 南通市| 棋牌| 宜良县| 桦川县| 教育| 渭源县|