sqoop 學(xué)習(xí)(一)

一啃奴、簡介

Sqoop是一個用來將Hadoop和關(guān)系型數(shù)據(jù)庫中的數(shù)據(jù)相互轉(zhuǎn)移的工具淆衷,可以將一個關(guān)系型數(shù)據(jù)庫(例如 : MySQL ,Oracle ,Postgres等)中的數(shù)據(jù)導(dǎo)進(jìn)到Hadoop的HDFS中调煎,也可以將HDFS的數(shù)據(jù)導(dǎo)進(jìn)到關(guān)系型數(shù)據(jù)庫中五慈。Sqoop專為大數(shù)據(jù)批量傳輸設(shè)計蔫磨,能夠分割數(shù)據(jù)集并創(chuàng)建Hadoop任務(wù)來處理每個區(qū)塊淘讥。

  • 把MySQL、Oracle等數(shù)據(jù)庫中的數(shù)據(jù)導(dǎo)入到HDFS堤如、Hive蒲列、HBase中。
  • 把HDFS搀罢、Hive蝗岖、HBase中的數(shù)據(jù)導(dǎo)出到MySQL、Oracle等數(shù)據(jù)庫中榔至。
  • 1.4 為sqoop1, 1.9 為sqoop2 剪侮,sqoop1與sqoop2是不兼容的梅桩。

實(shí)現(xiàn)需要

數(shù)據(jù)庫:

  • driver
  • URL县钥、username、password
  • database、table

hadoop:

  • type (hdfp琉用、hive峭范、hbase)
  • path 存儲到哪里墓造?
  • 數(shù)據(jù)分隔符
  • mappers 數(shù)量杏愤,也就是使用多少線程。

二驼仪、命令

查看 sqoop 支持的命令

  • sqoop help

![sqoop 命令列表][1]

顯示所有庫名

sqoop list-databases \
--connect jdbc:mysql://192.168.66.4:3306 \
--username sendi \
--password 1234

![list-databases 例子][2]

顯示某個數(shù)據(jù)庫里所有表

sqoop list-tables \
--connect jdbc:mysql://192.168.66.4:3306/networkmanagement \
--username sendi \
--password 1234

![list-tables 例子][3]

MYSQL 導(dǎo)入數(shù)據(jù)到 HIVE

sqoop import
--connect jdbc:mysql://192.168.66.4:3306/networkmanagement \
--username sendi \
--password 1234 \
--table people
--hive-import 
--create-hive-table 
--fields-terminated-by "\t"
-m 5

hive 參數(shù)

  • --hive-import 必須參數(shù)掸犬,指定導(dǎo)入hive
  • --hive-database default hive庫名
  • --hive-table people hive表名
  • --fields-terminated-by hive的分隔符
  • --hive-overwrite 重寫重復(fù)字段
  • --create-hive-table 幫創(chuàng)建好 hive 表,但是表存在會出錯绪爸。不建議使用這個參數(shù)湾碎,因為到導(dǎo)入的時候,會與我們的字段類型有出入奠货。
  • --hive-partition-key "dt" 指定分區(qū)表的字段
  • --hive-partition-value "2018-08-08" 指定分區(qū)表的值

導(dǎo)出沒有主鍵的表

可以使用兩種方式:

  • --split-by 指定切分的字段
  • -m 1 : 設(shè)置只使用一個map進(jìn)行數(shù)據(jù)遷移

過濾條件

  • --where "age>18" 匹配條件
  • --columns "name,age" 選擇要導(dǎo)入的指定列
  • --query ‘select * from people where age>18 and $CONDITIONS’: sql語句查詢的結(jié)果集
    • 不能 --table 一起使用
    • 需要指定 --target-dir 路徑

當(dāng)數(shù)據(jù)庫中字符為空時的處理

  • --null-non-string '0' 當(dāng)不是字符串的數(shù)據(jù)為空的時候介褥,用 0 替換
  • --null-string 'string' 當(dāng)字符串為空的時候,使用string 字符替換

提高傳輸速度

  • --direct 提高數(shù)據(jù)庫到hadoop的傳輸速度

支持的數(shù)據(jù)庫類型與版本:

  • myslq 5.0 以上
  • oracle 10.2.0 以上

增量導(dǎo)入

增量導(dǎo)入對應(yīng)递惋,首先需要知監(jiān)控那一列柔滔,這列要從哪個值開始增量

* check-column id 用來指定一些列
* 這些被指定的列的類型不能使任意字符類型,如char萍虽、varchar等類型都是不可以的,常用的是指定主鍵id.
* –check-column 可以去指定多個列
  • last-value 10 從哪個值開始增量
  • incremental 增量的模式
    • append id 是獲取大于某一列的某個值睛廊。
    • lastmodified "2016-12-15 15:47:30" 獲取某個時間后修改的所有數(shù)據(jù)
      • --append 附加模式
      • --merge-key id 合并模式

注意:增量導(dǎo)入不能與 --delete-target-dir 一起使用,還有必須指定增量的模式

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末杉编,一起剝皮案震驚了整個濱河市超全,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌邓馒,老刑警劉巖嘶朱,帶你破解...
    沈念sama閱讀 217,542評論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異绒净,居然都是意外死亡见咒,警方通過查閱死者的電腦和手機(jī)偿衰,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,822評論 3 394
  • 文/潘曉璐 我一進(jìn)店門挂疆,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人下翎,你說我怎么就攤上這事缤言。” “怎么了视事?”我有些...
    開封第一講書人閱讀 163,912評論 0 354
  • 文/不壞的土叔 我叫張陵胆萧,是天一觀的道長。 經(jīng)常有香客問我,道長跌穗,這世上最難降的妖魔是什么订晌? 我笑而不...
    開封第一講書人閱讀 58,449評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮蚌吸,結(jié)果婚禮上锈拨,老公的妹妹穿的比我還像新娘。我一直安慰自己羹唠,他們只是感情好奕枢,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,500評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著佩微,像睡著了一般缝彬。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上哺眯,一...
    開封第一講書人閱讀 51,370評論 1 302
  • 那天谷浅,我揣著相機(jī)與錄音,去河邊找鬼族购。 笑死壳贪,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的寝杖。 我是一名探鬼主播违施,決...
    沈念sama閱讀 40,193評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼瑟幕!你這毒婦竟也來了磕蒲?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,074評論 0 276
  • 序言:老撾萬榮一對情侶失蹤只盹,失蹤者是張志新(化名)和其女友劉穎辣往,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體殖卑,經(jīng)...
    沈念sama閱讀 45,505評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡站削,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,722評論 3 335
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了孵稽。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片许起。...
    茶點(diǎn)故事閱讀 39,841評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖菩鲜,靈堂內(nèi)的尸體忽然破棺而出园细,到底是詐尸還是另有隱情,我是刑警寧澤接校,帶...
    沈念sama閱讀 35,569評論 5 345
  • 正文 年R本政府宣布猛频,位于F島的核電站,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏鹿寻。R本人自食惡果不足惜睦柴,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,168評論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望毡熏。 院中可真熱鬧爱只,春花似錦、人聲如沸招刹。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,783評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽疯暑。三九已至训柴,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間妇拯,已是汗流浹背幻馁。 一陣腳步聲響...
    開封第一講書人閱讀 32,918評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留越锈,地道東北人仗嗦。 一個月前我還...
    沈念sama閱讀 47,962評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像甘凭,于是被迫代替她去往敵國和親稀拐。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,781評論 2 354