sqoop 常用命令整理(二)
26.Validate 它用来比较源数据和目标数据的数量 它有三个接口 Validator.
它有三个接口
Validator.
Property:         validator
Description:      Driver for validation,
                  must implement org.apache.sqoop.validation.Validator
Supported values: The value has to be a fully qualified class name.
Default value:    org.apache.sqoop.validation.RowCountValidator
Validation Threshold
Property:         validation-threshold
Description:      Drives the decision based on the validation meeting the
                  threshold or not. Must implement
                  org.apache.sqoop.validation.ValidationThreshold
Supported values: The value has to be a fully qualified class name.
Default value:    org.apache.sqoop.validation.AbsoluteValidationThreshold
Validation Failure Handler
Property:         validation-failurehandler
Description:      Responsible for handling failures, must implement
                  org.apache.sqoop.validation.ValidationFailureHandler
Supported values: The value has to be a fully qualified class name.
Default value:    org.apache.sqoop.validation.LogOnFailureHandler
27.validate例子
$ sqoop import --connect jdbc:mysql://db.foo.com/corp  \
    --table EMPLOYEES --validate
$ sqoop export --connect jdbc:mysql://db.example.com/foo --table bar  \
    --export-dir /results/bar_data --validate
$ sqoop import --connect jdbc:mysql://db.foo.com/corp --table EMPLOYEES \
    --validate --validator org.apache.sqoop.validation.RowCountValidator \
    --validation-threshold \
          org.apache.sqoop.validation.AbsoluteValidationThreshold \
    --validation-failurehandler \
          org.apache.sqoop.validation.LogOnFailureHandler
29.sqoop job 保存常用的作业,以便下次快速调用
  --create <job-id>  创建一个新的job.
  --delete <job-id>  删除job
  --exec <job-id>     执行job
  --show <job-id>    显示job的参数
  --list                     列出所有的job
30.例子
#创建job
$ sqoop job --create myjob -- import --connect jdbc:mysql://example.com/db \
    --table mytable
#列出所有job
$ sqoop job --list
#查看job
$ sqoop job --show myjob
 Job: myjob
 Tool: import
 Options:
 ----------------------------
 direct.import = false
 codegen.input.delimiters.record =
 hdfs.append.dir = false
 db.table = mytable
 ...
#执行job
$ sqoop job --exec myjob
// :: INFO tool.CodeGenTool: Beginning code generation
...
#重写参数
$ sqoop job --exec myjob -- --username someuser -P
Enter password:
...
31.别的常用工具
  sqoop-metastore
  sqoop-merge
 
#合并两个目录 $ sqoop merge --new-data newer --onto older --target-dir merged \ --jar-file datatypes.jar --class-name Foo --merge-key id
  sqoop-codegen
  sqoop-create-hive-table
#在hive中创建一个名叫emps的和employees一样的表 $ sqoop create-hive-table --connect jdbc:mysql://db.example.com/corp \ --table employees --hive-table emps
sqoop-eval
#选择10行数据
$ sqoop eval --connect jdbc:mysql://db.example.com/corp \
    --query "SELECT * FROM employees LIMIT 10"
#往foo表插入一行
$ sqoop eval --connect jdbc:mysql://db.example.com/corp \
    -e "INSERT INTO foo VALUES(42, 'bar')"
sqoop-list-databases
$ sqoop list-databases --connect jdbc:mysql://database.example.com/ information_schema employees
sqoop-list-tables
后面是附录,我把前面攒得一些东西放在这里了。
import的主要参数 --connect <jdbc-uri> jdbc连接地址 --connection-manager <class-name> 连接管理者 --driver <class-name> 驱动类 --hadoop-mapred-home <dir> $HADOOP_MAPRED_HOME --help help信息 -P 从命令行输入密码 --password <password> 密码 --username <username> 账号 --verbose 打印信息 --connection-param-file <filename> 可选参数 Argument Description --append 添加到hdfs中已经存在的dataset --as-avrodatafile 导入数据作为avrodata --as-sequencefile 导入数据位SequenceFiles --as-textfile 默认导入数据为文本 --boundary-query <statement> 创建splits的边界 --columns <col,col,col…> 选择列 --direct 使用直接导入快速路径 --direct-split-size <n> 在快速模式下每n字节使用一个split --fetch-size <n> 一次读入的数量 --inline-lob-limit <n> 最大数值 an inline LOB -m,--num-mappers <n> 通过实行多少个map,默认是4个,某些数据库8 or 16性能不错 -e,--query <statement> 通过查询语句导入 --split-by <column-name> 创建split的列,默认是主键 --table <table-name> 要导入的表名 --target-dir <dir> HDFS 目标路径 --warehouse-dir <dir> HDFS parent for table destination --where <where clause> where条件 -z,--compress Enable compression --compression-codec <c> 压缩方式,默认是gzip --null-string <null-string> 字符列null值 --null-non-string <null-string> 非字符列null值 export主要参数 --direct 快速导入 --export-dir <dir> HDFS到处数据的目录 -m,--num-mappers <n> 都少个map线程 --table <table-name> 导出哪个表 --call <stored-proc-name> 存储过程 --update-key <col-name> 通过哪个字段来判断更新 --update-mode <mode> 插入模式,默认是只更新,可以设置为allowinsert. --input-null-string <null-string> 字符类型null处理 --input-null-non-string <null-string> 非字符类型null处理 --staging-table <staging-table-name> 临时表 --clear-staging-table 清空临时表 --batch 批量模式 转义字符相关参数。 Argument Description --enclosed-by <char> 设置字段结束符号 --escaped-by <char> 用哪个字符来转义 --fields-terminated-by <char> 字段之间的分隔符 --lines-terminated-by <char> 行分隔符 --mysql-delimiters 使用mysql的默认分隔符: , lines: \n escaped-by: \ optionally-enclosed-by: ' --optionally-enclosed-by <char> 复制结束符
  
  
sqoop 常用命令整理(二)的更多相关文章
- sqoop 常用命令整理(一)
		这些内容是从sqoop的官网整理出来的,是1.4.3版本的Document,如果有错误,希望大家指正. 1.使用sqoop导入数据 sqoop import --connect jdbc:mysql: ... 
- 【linux】---常用命令整理
		linux常用命令整理 一.ls命令 就是list的缩写,通过ls 命令不仅可以查看linux文件夹包含的文件,而且可以查看文件权限(包括目录.文件夹.文件权限)查看目录信息等等 常用参数搭配: l ... 
- Tomcat性能优化及常用命令整理
		1汤姆猫性能优化 1.1连接参数 1.1.1默认连接配置 默认连接器采用阻塞式 IO,默认最大线程数为200,配置如下: <Connector port="8080" pro ... 
- linux 服务器常用命令整理
		linux 服务器常用命令整理 目录 网络分析 - tcpdump \ telnet \ (netstat \ ss \ lsof) \ nload 网络传输 - scp \ rsync \ (rz ... 
- Hive记录-Sqoop常用命令
		1.sqoop是什么 Sqoop是一款开源的数据迁移工具,主要用于Hadoop(Hive)与传统的关系型数据库(mysql...)相互之间的数据迁移. 2.sqoop的特点 sqoop的底层实现是ma ... 
- (小组)Git 常用命令整理
		Git 常用命令整理 取得Git仓库 初始化一个版本仓库 git init Clone远程版本库 git clone git@xbc.me:wordpress.git 添加远程版本库origin,语法 ... 
- salt 常用命令整理
		salt 常用命令整理 ***********模块*********** 查看模块列表module salt 'minion' sys.list_modules 查看指定module的function ... 
- Dos常用命令整理
		Dos常用命令整理 打开cmd的方法 开始菜单 -> 系统 -> 命令提示符 组合键Win+R打开运行 -> 输入cmd 在任意文件夹下Shift+鼠标右键 -> 在此处打开命 ... 
- Linux 最常用命令整理,建议收藏!
		Linux是目前应用最广泛的服务器操作系统,基于Unix,开源免费,由于系统的稳定性和安全性,市场占有率很高,几乎成为程序代码运行的最佳系统环境. linux不仅可以长时间的运行我们编写的程序代码,还 ... 
随机推荐
- hive SQL 字母大小写转换
			lower(string A) lcase(string A) 将文本字符串转换成字母全部小写形式 upper(string A) ucase(string A) 将文本字符串转换成字母全部大写形式 
- Cadence 5141 下TSMC 05U工艺库安装
			以下资料摘自:<T13RF PDK簡介>-張文旭 观念与TSMC工艺库的安装 管理者安裝TSMC 0.13 MS/RF的環境下之PDK的安裝方式相當容易,首先以root的方式進入Unix/ ... 
- linux进程后台运行,且关终端后继续运行
			ctrl+z,fg,bg什么的都无法实现这一点.因为关终端之后就可能出问题 常用的命令如下 nohup /home/user/yourcommand.sh & nohup /home/user ... 
- supervisor 安装脚本
			mkdir /data/tools && cd /data/tools wget --no-check-certificate https://bootstrap.pypa.io/ez ... 
- 微信小程序-wx:for 循环列表
			获取了 N 条信息(具体有多少条不确定),如何在界面中动态呈现出来呢? .wxml 代码 <view wx:for="{{items}}" wx:for-index=&q ... 
- tomcat 8080 冲突 急速解决方法 -------屡试不爽
			cmd 输入: netstat -ano|findstr 8080 记住 最后的端口号**** 再输入: taskkill /pid **** /f 
- constexpr与常量表达式(c++11标准)
			关键字 constexpr 是C++11中引入的关键字,是指值不会改变并且在编译过程中就得到计算结果的表达式.(运行中得到结果的不能成为常量表达式,比如变量). 声明为constexpr的变量一定是一 ... 
- gcp上使用gpu来学习tensorflow
			1080ti显卡实在是太贵了,8k一张的价格,让我感到无耐.还好,有gcp的gpu来训练,最有意思的是,他还提供300美元,让你挥霍. 1.当然是申请gcp的账号. 2.登录后,左侧->&quo ... 
- 【R】R语言常用函数
			R语言常用函数 基本 一.数据管理vector:向量 numeric:数值型向量 logical:逻辑型向量character:字符型向量 list:列表 data.frame:数据框c:连接为向量或 ... 
- [svc]NFS存储企业场景及nfs最佳实战探究
			办公网络里人一般系统用共享,尤其是财务, 他们喜欢直接点开编辑. 而不喜欢ftp nfs在网站架构中的用途 注: 如果pv量少,则放在一台机器上速度更快,如果几千万pv,则存储分布式部署. 网站架构中 ... 
