大数据之Sqoop 二
五、Sqoop一些常用命令及參數(shù)
5.1、常用命令列舉
這里給大家列出來了一部分Sqoop操作時的常用參數(shù),以供參考,需要深入學(xué)習(xí)的可以參看對應(yīng)類的源代碼。
序號 | 命令 | 類 | 說明 |
1 | import | ImportTool | 將數(shù)據(jù)導(dǎo)入到集群 |
2 | export | ExportTool | 將集群數(shù)據(jù)導(dǎo)出 |
3 | codegen | CodeGenTool | 獲取數(shù)據(jù)庫中某張表數(shù)據(jù)生成Java并打包Jar |
4 | create-hive-table | CreateHiveTableTool | 創(chuàng)建Hive表 |
5 | eval | EvalSqlTool | 查看SQL執(zhí)行結(jié)果 |
6 | import-all-tables | ImportAllTablesTool | 導(dǎo)入某個數(shù)據(jù)庫下所有表到HDFS中 |
7 | job ? | JobTool | 用來生成一個sqoop的任務(wù),生成后,該任務(wù)并不執(zhí)行,除非使用命令執(zhí)行該任務(wù)。 |
8 | list-databases | ListDatabasesTool | 列出所有數(shù)據(jù)庫名 |
9 | list-tables | ListTablesTool | 列出某個數(shù)據(jù)庫下所有表 |
10 | merge | MergeTool | 將HDFS中不同目錄下面的數(shù)據(jù)合在一起,并存放在指定的目錄中 |
11 | metastore ? | MetastoreTool | 記錄sqoop job的元數(shù)據(jù)信息,如果不啟動metastore實例,則默認的元數(shù)據(jù)存儲目錄為:~/.sqoop,如果要更改存儲目錄,可以在配置文件sqoop-site.xml中進行更改。 |
12 | help | HelpTool | 打印sqoop幫助信息 |
13 | version | VersionTool | 打印sqoop版本信息 |
5.2、命令&參數(shù)詳解
剛才列舉了一些Sqoop的常用命令,對于不同的命令,有不同的參數(shù),讓我們來一一列舉說明。
首先來我們來介紹一下公用的參數(shù),所謂公用參數(shù),就是大多數(shù)命令都支持的參數(shù)。
5.2.1、公用參數(shù):數(shù)據(jù)庫連接
序號 | 參數(shù) | 說明 |
1 | --connect | 連接關(guān)系型數(shù)據(jù)庫的URL |
2 | --connection-manager | 指定要使用的連接管理類 |
3 | --driver | Hadoop根目錄 |
4 | --help | 打印幫助信息 |
5 | --password | 連接數(shù)據(jù)庫的密碼 |
6 | --username | 連接數(shù)據(jù)庫的用戶名 |
7 | --verbose | 在控制臺打印出詳細信息 |
5.2.2、公用參數(shù):import
序號 | 參數(shù) | 說明 |
1 | --enclosed-by <char> | 給字段值前加上指定的字符 |
2 | --escaped-by <char> | 對字段中的雙引號加轉(zhuǎn)義符 |
3 | --fields-terminated-by <char> | 設(shè)定每個字段是以什么符號作為結(jié)束,默認為逗號 |
4 | --lines-terminated-by <char> | 設(shè)定每行記錄之間的分隔符,默認是\n |
5 | --mysql-delimiters | Mysql默認的分隔符設(shè)置,字段之間以逗號分隔,行之間以\n分隔,默認轉(zhuǎn)義符是\,字段值以單引號包裹。 |
6 | --optionally-enclosed-by <char> | 給帶有雙引號或單引號的字段值前后加上指定字符。 |
5.2.3、公用參數(shù):export
序號 | 參數(shù) | 說明 |
1 | --input-enclosed-by <char> | 對字段值前后加上指定字符 |
2 | --input-escaped-by <char> | 對含有轉(zhuǎn)移符的字段做轉(zhuǎn)義處理 |
3 | --input-fields-terminated-by <char> | 字段之間的分隔符 |
4 | --input-lines-terminated-by <char> | 行之間的分隔符 |
5 | --input-optionally-enclosed-by <char> | 給帶有雙引號或單引號的字段前后加上指定字符 |
5.2.4、公用參數(shù):hive
序號 | 參數(shù) | 說明 |
1 | --hive-delims-replacement <arg> | 用自定義的字符串替換掉數(shù)據(jù)中的\r\n和\013 \010等字符 |
2 | --hive-drop-import-delims | 在導(dǎo)入數(shù)據(jù)到hive時,去掉數(shù)據(jù)中的\r\n\013\010這樣的字符 |
3 | --map-column-hive <arg> | 生成hive表時,可以更改生成字段的數(shù)據(jù)類型 |
4 | --hive-partition-key | 創(chuàng)建分區(qū),后面直接跟分區(qū)名,分區(qū)字段的默認類型為string |
5 | --hive-partition-value <v> | 導(dǎo)入數(shù)據(jù)時,指定某個分區(qū)的值 |
6 | --hive-home <dir> | hive的安裝目錄,可以通過該參數(shù)覆蓋之前默認配置的目錄 |
7 | --hive-import | 將數(shù)據(jù)從關(guān)系數(shù)據(jù)庫中導(dǎo)入到hive表中 |
8 | --hive-overwrite | 覆蓋掉在hive表中已經(jīng)存在的數(shù)據(jù) |
9 | --create-hive-table | 默認是false,即,如果目標表已經(jīng)存在了,那么創(chuàng)建任務(wù)失敗。 |
10 | --hive-table | 后面接要創(chuàng)建的hive表,默認使用MySQL的表名 |
11 | --table | 指定關(guān)系數(shù)據(jù)庫的表名 |
?
公用參數(shù)介紹完之后,我們來按照命令介紹命令對應(yīng)的特有參數(shù)。
總結(jié)
以上是生活随笔為你收集整理的大数据之Sqoop 二的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 什么是函数式编程,函数合并与柯里化又是什
- 下一篇: 不买房做什么都是不务正业