版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
——Hadoop集群(第10期)精華集錦csAxp蝦皮工作室ogscomxiapi河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮1Hadoop集群(第10期)MySQL庫(kù)s1)準(zhǔn)備軟件2)安裝環(huán)境:3)開始安裝河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮2定制安裝:安裝允許你完全控制你想要安裝的軟件包和安裝路徑。包包括的組件包括。m河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮3下先前的設(shè)置,如果有誤,按“Back”返回重做。按“Install”開始安河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮4第六步:正在安裝中,請(qǐng)稍候……t河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮5MySQLConfigurationWizard(配置向?qū)?可以幫助自動(dòng)配置Windows中的服務(wù)器。MySQLConfigurationWizard(配置向?qū)?問(wèn)你一系列問(wèn)題,然后將回答放到模板中生成一河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮6和StandardConfiguration(標(biāo)準(zhǔn)配置)。StandardConfiguration(標(biāo)準(zhǔn)配置)選項(xiàng)適合想要快 ConfigurationWizard(配置向?qū)?自動(dòng)設(shè)置所有配置選項(xiàng),但不包括服務(wù)選項(xiàng)和安全選項(xiàng)。StandardConfiguration(標(biāo)準(zhǔn)配置)設(shè)置選項(xiàng)可能與安裝MySQL的系統(tǒng)不兼容。如果第十一步:選擇服務(wù)器類型,可以選擇3種服務(wù)器類型,選擇哪種服務(wù)器將影響到MySQLConfigurationWizard(配置向?qū)?對(duì)內(nèi)存、硬盤和過(guò)程或使用的決策。DeveloperMachine(開發(fā)機(jī)器):該選項(xiàng)代表典型個(gè)人用桌面工作站。假定機(jī)器上QLQLDedicatedMySQLServerMachine(專用MySQL服務(wù)器):該選項(xiàng)代表只運(yùn)行河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮7MySQL否使用InnoDB儲(chǔ)存引擎,lyMyISAMxt河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮8L河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮9第十五步:進(jìn)行網(wǎng)絡(luò)配置,在NetworkingOptions(網(wǎng)絡(luò)選項(xiàng))對(duì)話框中可以啟用或禁L河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮10MySQLWindows般選擇設(shè)成服務(wù),這樣以后l河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮11“Enablerootaccessfromremotemachines(是否允許root用戶在其它的機(jī)器上登,就勾上它)”。CreateAnAnonymousAccount(新建一個(gè)匿名用戶,匿名用戶可以連接數(shù)據(jù)庫(kù),河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮12ySQL4)驗(yàn)證成功p河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮131)準(zhǔn)備軟件2)安裝環(huán)境:3)檢查安裝rpm-qamysqlli。rm-rf/var/lib/mysql*rm-rf/usr/share/mysql*另一種善后處理:卸載后/var/lib/mysql中的/etc/f會(huì)重命名為f.rpmsave,河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮144)開始安裝第一步:上傳所需軟件。通過(guò)“FlashFXP”軟件使用“vsftpd”上傳用到的兩個(gè)軟件到“/home/hadoop”目錄下。m河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮15netstat-nat并沒(méi)有與“3306”有關(guān)的信息,說(shuō)明“MySQL服務(wù)器”沒(méi)有啟動(dòng)。通過(guò)rvicemysqlstart從上圖中已經(jīng)發(fā)現(xiàn)我們的MySQL服務(wù)器已經(jīng)起來(lái)了。irpm個(gè)目錄,它的數(shù)據(jù)庫(kù)文件、配置文件和命令文件分別在不同的目錄,了解這些目錄非常重河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮16要,尤其對(duì)于Linux的初學(xué)者,因?yàn)長(zhǎng)inux本身的目錄結(jié)構(gòu)就比較復(fù)雜,如果搞不清楚/var/lib/mysql/usrsharemysqlmysqlserver置文件)usr/bin(mysqladminmysqldump等命令)etcrcdinitdmysqlstart/restart/stop/status數(shù)據(jù)庫(kù)目錄配置文件相關(guān)命令河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮17啟動(dòng)腳本認(rèn)的數(shù)據(jù)文件存儲(chǔ)目錄為/“var/lib/mysql”,所以我們要把目錄移到“/”根目錄下的“/”根目錄下建立“mysql_data”目錄dmkdirmysql_data把MySQL服務(wù)進(jìn)程停掉rvicemysqlstop河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮18mysqladmin-uroot-pshutdown把“/var/lib/mysql”整個(gè)目錄移到“/mysql_data”mv/var/lib/mysql/mysql_data找到f配置文件cp/usr/share/mysql/f/etc/f查看“/etc/”下面是否有“f”文件,發(fā)現(xiàn)沒(méi)有,然后通過(guò)上面的命令河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮19mcnfRHELumcnf編輯MySQL的配置文件“/etc/f”vim/etc/f【client】socket=/mysql_data/mysql/mysql.sockdefault-character-set=utf8【mysqld】irmysqldata/mysql/mysql.sockysqldatamysql河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮20ctersetserverutf修改MySQL啟動(dòng)腳本“/etc/rc.d/init.d/mysql”vim/etc/rc.d/init.d/mysql重新啟動(dòng)MySQL服務(wù)河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮21rvicemysqlstartx很關(guān)鍵。河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮22修改登錄密碼mysqladmin-urootpassword'new-password'mysqladminu戶名-p舊密碼password新密碼mysqladmin–urootpasswordhadoop測(cè)試是否修改成功(1)不用密碼登錄(2)用修改后的密碼登錄從上圖中得知,我們已經(jīng)成功修改了密碼,并且用新的密碼登錄了MySQL服務(wù)器。防火墻stateNEWmtcpptcpsportjACCEPTstateNEWmtcpptcpdportjACCEPT河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮23serviceiptablesrestart防火墻erviceiptablesstopchkconfigiptablesoff河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮24root行的,但是當(dāng)我們切換至普通用戶登錄MySQL以MySQL用戶“root”用密碼形式登錄。mysql-uroot-p刪除空用戶,強(qiáng)烈建議。mysqldeletefrommysql.userwhereuser='';刷新權(quán)限表,以便可以使更改立即生效。mysqlflushprivileges;mysqlexit再重新以“mysql”登錄測(cè)試sqlysqlurootp河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮25MapReduceMapReduce不區(qū)進(jìn)行了很多努力。一方面,他們?cè)O(shè)計(jì)了類似于關(guān)系數(shù)據(jù)中結(jié)構(gòu)化數(shù)據(jù)表的技術(shù)(Googlee河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮26MapReduce序分別是DBInputFormat和ts分原則,利用SQL中的LIMIT和OFFSET進(jìn)行切分獲得數(shù)據(jù)集的范圍,請(qǐng)參考DBInputFormatpublicInputSplitgetSplitsJobConfjobintchunksthrowsIOException1)建立關(guān)系數(shù)據(jù)庫(kù)連接DBConfiguration庫(kù)配置和創(chuàng)建連接的接口。publicstaticvoidconfigureDBJobjobStringdriverClassStringdbUrlStringuserNameStringPassword)2)相應(yīng)的從關(guān)系數(shù)據(jù)庫(kù)查詢和讀取數(shù)據(jù)的接口DBInputFormat據(jù)庫(kù)讀取數(shù)據(jù)的格式。DBRecordReader數(shù)據(jù)記錄的接口。3)相應(yīng)的向關(guān)系數(shù)據(jù)庫(kù)直接輸出結(jié)果的編程接口DBOutputFormat據(jù)庫(kù)輸出數(shù)據(jù)的格式。DBRecordWrite據(jù)記錄的接口。MapReduce序向關(guān)系數(shù)據(jù)庫(kù)寫入數(shù)據(jù)的操作。為了publicstaticvoidsetOutputJobjobStringtableNameString...fieldName)2.1從數(shù)據(jù)庫(kù)中輸入數(shù)據(jù)MapReduce中查詢和讀取關(guān)系數(shù)據(jù)庫(kù)可能會(huì)大大增加數(shù)據(jù)庫(kù)庫(kù)聯(lián)機(jī)數(shù)據(jù)分析大量數(shù)據(jù)的讀取處理。讀取大量數(shù)據(jù)記錄一個(gè)更好的解決辦法是:用數(shù)據(jù)庫(kù)中的Dump工具將大量待分析數(shù)1)首先創(chuàng)建要讀入的數(shù)據(jù)Windows環(huán)境河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮27createdatabaseschool;useschool;urcedstudentsqlolstudentultvarchardefaultNULLarchardefaultNULLintdefaultNULL河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮28Server河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮29tport=3306ltcharactersetgbkThedefaultcharactersetthatwillbeusedwhenanewschemaortableiscreatedandnocharactersetisdefinedersetserverutfLinux環(huán)境河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮30school,并導(dǎo)入“student.sql”語(yǔ)句。河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮31到此為止在“Windows”和“Linux”兩種環(huán)境下面都創(chuàng)建了表“student”表,并初始2)使MySQL能遠(yuǎn)程連接用MySQL用戶“root”登錄。mysql-uroot-p使用下面語(yǔ)句進(jìn)行授權(quán),賦予任何主機(jī)訪問(wèn)數(shù)據(jù)的權(quán)限。TOrootIDENTIFIEDBYhadoopWITHGRANTOPTION刷新,使之立即生效。USHPRIVILEGES河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮32WinMySQL大家還應(yīng)該記得前面在SQL執(zhí)行順序:控制面板>管理工具>高級(jí)安全的Windows防火墻>入站規(guī)則然后新建規(guī)則>選擇‘端口’>在‘特定本地端口’上輸入一個(gè)‘3306’>選擇‘允3)對(duì)JDBC的Jar包處理(1)在每個(gè)節(jié)點(diǎn)下的${HADOOP_HOME}/lib下添加該包,重啟集群,一般是比較原(2)在Hadoop集群的分布式文件系統(tǒng)中創(chuàng)建“/lib”文件夾,并把我們的的JDBC的這個(gè)jar包。因?yàn)檫@個(gè)jar包放在了HDFS上,而不是本地系統(tǒng),這個(gè)要理解清楚。河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮33我們這里采用了第二種方式。4)源程序代碼如下所示hebutmrIOExceptionDataInputDataOutputlConnectionlDriverManagerqlPreparedStatementlResultSetlSQLExceptiongapachehadoopfilecacheDistributedCacheapachehadoopfsPathgapachehadoopioLongWritableapachehadoopioTextrgapachehadoopioWritablegapachehadoopmapredJobClientapachehadoopmapredJobConfapachehadoopmapredMapReduceBaseapachehadoopmapredMappergapachehadoopmapredOutputCollectorapachehadoopmapredFileOutputFormatgapachehadoopmapredReporterrgapachehadoopmapredlibIdentityReducerrgapachehadoopmapredlibdbDBWritableorgapachehadoopmapredlibdbDBInputFormatrgapachehadoopmapredlibdbDBConfigurationpublicclassReadDB{icclassMapextendsMapReduceBaseimplements河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮34Mapper<LongWritable,StudentRecord,LongWritable,Text>{idmapLongWritablekeyStudentRecordvaluectorReporterreporterthrowsIOException{llectnewLongWritablevalueidtvaluetoString}}aticclassStudentRecordimplementsWritableDBWritableameexverridepublicvoidreadFields(DataInputin)throwsIOException{thisidinreadInt;thisnameTextreadStringin;thissexTextreadStringin;thisageinreadInt;}verridepublicvoidwrite(DataOutputout)throwsIOException{iteIntthisidtwriteStringoutthisnametwriteStringoutthissexiteIntthisage}verrideoidreadFieldsResultSetresultthrowsSQLExceptionthisidresultgetInt);thisnameresultgetString2);thissexresultgetString3);thisageresultgetInt);}verridepublicvoidwrite(PreparedStatementstmt)throwsSQLException{河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮35isidgthisnamegthissexisage}verridepublicStringtoString(){}}publicstaticvoidmain(String[]args)throwsException{fnewJobConfReadDBclassconfsetmapredjobtracker",":9001");butedCacheaddFileToClassPathnewPathFormatDBInputFormatclassKeyClassLongWritableclassalueClassTextclassrClassMapclassrClassIdentityReducerclassormatsetOutputPathconfnewPathrdboutonfigurationconfigureDBconfcommysqljdbcDriverjdbcmysqlschoolroot,"hadoop");String]fields={"id","name","sex","age"};河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮36onf}}5)運(yùn)行結(jié)果如下所示W(wǎng)inLinuxMySQL,執(zhí)行結(jié)果都一樣。唯獨(dú)變得就是代碼中“DBConfiguration.configureDB”中MySQL數(shù)據(jù)庫(kù)所在機(jī)器2.2向數(shù)據(jù)庫(kù)中輸出數(shù)據(jù)基于數(shù)據(jù)倉(cāng)庫(kù)的數(shù)據(jù)分析和挖掘輸出結(jié)果的數(shù)據(jù)量一般不會(huì)太大,因而可能適合于直1)創(chuàng)建寫入的數(shù)據(jù)庫(kù)表useschool;sourcesql全路徑oolwordcount河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮37mentvarchardefaultNULLfaultNULLWindows環(huán)境Linux環(huán)境2)程序源代碼如下所示hebutmrIOExceptionDataInputDataOutput河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮38qlPreparedStatementlResultSetlSQLExceptionilIteratortilStringTokenizergapachehadoopfilecacheDistributedCacheapachehadoopfsPathapachehadoopioIntWritableapachehadoopioTextpachehadoopioWritablegapachehadoopmapredFileInputFormatgapachehadoopmapredJobClientapachehadoopmapredJobConfapachehadoopmapredMapReduceBaseapachehadoopmapredMappergapachehadoopmapredOutputCollectorapachehadoopmapredReducergapachehadoopmapredReportergapachehadoopmapredTextInputFormatorgapachehadoopmapredlibdbDBOutputFormatrgapachehadoopmapredlibdbDBWritablergapachehadoopmapredlibdbDBConfigurationpublicclassWriteDB{icclassMapextendsMapReduceBaseimplementsMapper<Object,Text,Text,IntWritable>{vatefinalstaticIntWritableonenewIntWritableteTextwordnewTextverrideidmapObjectkeyTextvalueOutputCollectorTextIntWritableoutputReporterreporter)throwsIOException{inglinevaluetoStringngTokenizertokenizernewStringTokenizerlinewhile(tokenizer.hasMoreTokens()){wordsettokenizernextToken());tcollectwordone}}}河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮39icclassCombineextendsMapReduceBaseimplementsReducerTextIntWritable,Text,IntWritable>{verridevoidreduceTextkeyIteratorIntWritablevaluesOutputCollectorTextIntWritableoutputReporterreporter)throwsIOException{mwhile(values.hasNext()){nextget}utputcollectkeynewIntWritablesum}}icclassReduceextendsMapReduceBaseimplementsReducerTextIntWritable,WordRecord,Text>{verridevoidreduceTextkeyIteratorIntWritablevaluesthrowsIOException{mwhile(values.hasNext()){nextget}WordRecordwordcountnewWordRecord);wordcountwordkey.toString();wordcountnumbersumrcollectwordcountnewText}}publicstaticclassWordRecordimplementsWritable,DBWritable{orderverride河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮40idreadFieldsDataInputinthrowsIOExceptionthiswordTextreadStringin;thisnumberinreadInt;}verridepublicvoidwrite(DataOutputout)throwsIOException{twriteStringoutthiswordteIntthisnumber}verrideoidreadFieldsResultSetresultthrowsSQLExceptionthiswordresultgetString1);thisnumberresultgetInt2);}verridepublicvoidwrite(PreparedStatementstmt)throwsSQLException{gthiswordisnumber}}publicstaticvoidmain(String[]args)throwsException{newJobConfWriteDBclassconfsetmapredjobtracker",":9001");butedCacheaddFileToClassPathnewPathormatTextInputFormatclassFormatDBOutputFormatclass這兩句,通不過(guò),但是網(wǎng)上給的例子沒(méi)有這兩句。KeyClassTextclassValueClassIntWritableclassrClassMapclasserClassCombineclass河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室編輯:蝦皮41rClassReduceclassrmatsetInputPathsconfnewPathwdbinonfigurationconfigureDBconfcommysqljdbcDriverjdbcmysqlschoolroot"hadoop");Stringfieldswordnumber"};OutputFormatsetOutputconfwordcountfieldsonf}}3)運(yùn)行結(jié)果如下所示W(wǎng)indows環(huán)境(1)file1.txthellowordhellohadoop(2)file2.txtp河北工業(yè)大學(xué)——軟件工程與理論實(shí)驗(yàn)室
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度企業(yè)債券發(fā)行合同4篇
- 2025年度個(gè)人房產(chǎn)買賣合同違約金計(jì)算范本4篇
- 教育變革下的自然課堂-以小學(xué)生為對(duì)象的探究教學(xué)法應(yīng)用
- 教育技術(shù)助力的小學(xué)生圖書引導(dǎo)策略匯報(bào)
- 個(gè)人養(yǎng)老保險(xiǎn)購(gòu)買合同2024年度3篇
- 二零二五版互聯(lián)網(wǎng)金融平臺(tái)用戶協(xié)議與風(fēng)險(xiǎn)提示2篇
- 二零二五年度高端不銹鋼制品制造與安裝服務(wù)合同3篇
- 二零二五版國(guó)際旅游導(dǎo)游勞動(dòng)合同模板4篇
- 二零二五年度職業(yè)教育院校教師招聘勞動(dòng)合同樣本3篇
- 2025年度人工智能助手軟件開發(fā)及商業(yè)化推廣合同4篇
- 江蘇省南京市第二十九中2025屆數(shù)學(xué)高二上期末學(xué)業(yè)質(zhì)量監(jiān)測(cè)模擬試題含解析
- 2024年公需科目培訓(xùn)考試題及答案
- 2024年江蘇鑫財(cái)國(guó)有資產(chǎn)運(yùn)營(yíng)有限公司招聘筆試沖刺題(帶答案解析)
- 2024年遼寧石化職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫(kù)含答案
- 廣西桂林市2023-2024學(xué)年高二上學(xué)期期末考試物理試卷
- 財(cái)務(wù)指標(biāo)與財(cái)務(wù)管理
- 部編版二年級(jí)下冊(cè)道德與法治第三單元《綠色小衛(wèi)士》全部教案
- 保安春節(jié)安全生產(chǎn)培訓(xùn)
- 初一語(yǔ)文上冊(cè)基礎(chǔ)知識(shí)訓(xùn)練及答案(5篇)
- 血液透析水處理系統(tǒng)演示
- GB/T 27030-2006合格評(píng)定第三方符合性標(biāo)志的通用要求
評(píng)論
0/150
提交評(píng)論