怎么做淘寶聯(lián)盟網(wǎng)站寧波網(wǎng)站推廣制作
1.Sqoop
Apache Sqoop是Hadoop生態(tài)體系和RDBMS(關(guān)系型數(shù)據(jù)庫(kù))體系之間傳遞數(shù)據(jù)的一種工具。
Sqoop工作機(jī)制是將導(dǎo)入或者導(dǎo)出命令翻譯成MapReduce程序來(lái)實(shí)現(xiàn)。在翻譯出的MapReduce中主要是對(duì)inputformat和outputformat進(jìn)行定制。
Hadoop生態(tài)包括:HDFS,Hive,Hbase等。
RDBMS體系包括:Mysql,Oracle,DB2等。
Sqoop可以理解為:SQL到Hadoop,Hadoop到SQL。
?2.Sqoop全量導(dǎo)入HDFS
從RDBMS導(dǎo)入到HDFS,表中的每一行視為HDFS的記錄,所有的記錄都存儲(chǔ)為文本文件的文本數(shù)據(jù)。
3.Sqoop進(jìn)行并行的數(shù)據(jù)導(dǎo)入
如果表的數(shù)據(jù)比較大,可以并行啟動(dòng)maptask執(zhí)行導(dǎo)入操作,如果表沒(méi)有主鍵,請(qǐng)指定根據(jù)哪個(gè)字段進(jìn)行切分。
4.Sqoop導(dǎo)入HDFS中的分隔符也是可以通過(guò)命令指定的
5.Sqoop的導(dǎo)入命令示例:
注意事項(xiàng):命令攜帶的參數(shù)必須出現(xiàn)在同一行,若換行就意味著自動(dòng)提交執(zhí)行,可以通過(guò)"\"表示未結(jié)束。
6.Hadoop,Hive,Mysql的關(guān)系:
Hive 和 HDFS、MySQL 之間的關(guān)系_hive、mysql與hdfs的關(guān)系-CSDN博客
7.全量導(dǎo)入mysql表數(shù)據(jù)到Hive
方式一:先復(fù)制表結(jié)構(gòu)到hive中,然后再導(dǎo)入數(shù)據(jù)。
方式二:直接復(fù)制表結(jié)構(gòu)數(shù)據(jù)到hive中。
(目的一樣,命令不同罷了)
8.導(dǎo)入數(shù)據(jù)表子集
其實(shí)就是導(dǎo)入數(shù)據(jù)表中的一部分數(shù)據(jù),用where關(guān)鍵字或者query關(guān)鍵字來(lái)過(guò)濾。
query關(guān)鍵字:
在sqoop命令中,就是--query命令參數(shù),實(shí)際上就是執(zhí)行了一個(gè)sql語(yǔ)句。且需要按照sqoop的規(guī)范來(lái)寫query的命令語(yǔ)句。