sqoop 问题以及 小tips
1. Sqoop import 任务里把原来NULL的转化成字符串‘null’了。
解决方法:
先: alter table ${table_name} SET SERDEPROPERTIES('serialization.null.format' = '\\N');
再: sqoop代码最后面加上 --null-string '\\N' --null-non-string '\\N'
2. sqoop 如果hive to mysql 的时候,会因为hive数据条为0导致任务失败
其实本身任务是没问题的。
方法:直接再后面打印一行就是如,echo `date +%Y%m%d-%H:%M:%S` "cs_live_interaction end"
然后就会跳过前面的失败,却执行成功
但是同时,如果你这个任务真的同步失败的话,调度状态看不出来
3. sqoop import 和 export 样例
import
#!/bin/bash
set -v
echo `date +%Y%m%d-%H:%M:%S` "table_xxx begin"
sqoop import -D mapred.job.queue.name=root.offline \
--mapreduce-job-name sqoop_table_xxx \
--hive-drop-import-delims \
--connect "${datasource_connect}" \
--username ${datasource_username} \
--password '${datasource_password}' \
--split-by id \
--boundary-query 'select min(id),max(id) from table_xxx' \
--hive-overwrite \
--hive-import \
--hive-table db_xxx.table_xxx \
--query 'select id,column1_xxx,column2_xxx from table_xxx where $CONDITIONS' \
--target-dir /tmp/sqoop_table_xxx_`date +%s` \
--fields-terminated-by '\t' \
export
#删除mysql数据
mysql -u${datasource_username} -p'${datasource_password}' -h${datasource_host} -P${datasource_port} db_xxx -e "truncate table table_xxx"; sqoop export -D mapred.job.queue.name=root.offline \
--mapreduce-job-name sqoop_table_xxx \
--connect "${datasource_connect}" \
--driver "${datasource_driver}" \
--username ${datasource_username} \
--password '${datasource_password}' \
--table table_xxx \
--columns column1_xxx,column2_xxx \
--export-dir /user/hive/warehouse/db_xxx.db/table_xxx \
--mapreduce-job-name table_xxx \
--input-fields-terminated-by '\t' \
--input-null-string '\\N' \
--input-null-non-string '\\N'
sqoop 问题以及 小tips的更多相关文章
- HTML meta锚点跳转 小tips
小tips meta锚点跳转 http://www.zhangxinxu.com/wordpress/2015/03/meta-http-equiv-refresh-content/
- Windows7驱动调试小Tips
v:* { } o:* { } w:* { } .shape { }p.MsoNormal,li.MsoNormal,div.MsoNormal { margin: 0cm; margin-botto ...
- 你不知道的JavaScript--Item17 循环与prototype最后的几点小tips
1.优先使用数组而不是Object类型来表示有顺序的集合 ECMAScript标准并没有规定对JavaScript的Object类型中的属性的存储顺序. 但是在使用for..in循环对Object中的 ...
- 小tips:JS之浅拷贝与深拷贝
浅拷贝: function extendCopy(p) { var c = {}; for (var i in p) { c[i] = p[i]; } return c; } 深拷贝: functio ...
- keras搭建深度学习模型的一些小tips
定义模型两种方法: 1.sequential 类仅用于层的线性堆叠,这是目前最常用的网络架构 2.函数式API,用于层组成的有向无环图,让你可以构建任意形式的架构 from keras import ...
- 申请MVP奖励时的小Tips
大家新年好,今天MSPrecious为大家带来一些申请MVP奖励时的小Tips. 本文分为三个部分 MVP是什么 如何申请MVP 申请MVP需要注意的事项 MVP是什么? 我想,点进来看这篇文章的 ...
- 整理一些《纸书科学计算器》的小Tips
本文最开始是在2016年的文章 Win10应用<纸书科学计算器>更新啦! 发表之后撰写的,当时那篇文章收到了不少人点赞,应用在国内市场的日下载量也突然上涨,让我感到受宠若惊,这里要感谢Wp ...
- 最近工作的一点小tips
最近工作比较忙,但也积累了一些小tips,比较杂,不成系统,也并不很深入,就开一篇笼统的先记录一下,以后再深入挖掘. 1.-webkit-tap-highlight-color -webkit-tap ...
- Unity3D性能优化小tips——把this.transform缓存缓存起来
Unity3D开发时中有一个小tips,这在官方的文档里其实有提及的,但不那么显眼,这里小说一下: 在MonoBehaviour进行编程时,我们经常会用this.transform, this.gam ...
随机推荐
- abaqus python库变强变大233333333333333
有没有小伙伴想在 至于怎么安装pip 度小娘一位大神提供了办法 https://jingyan.baidu.com/article/7e4409533f32092fc0e2ef24.html 如有需 ...
- Mybatis根据List批量查询List结果
https://blog.csdn.net/qq_36688928/article/details/82783392
- 经典问题----拓扑排序(HDU2647)
题目简介:有个工厂的老板给工人发奖金,每人基础都是888,工人们有自己的想法,如:a 工人想要比 b 工人的奖金高,老板想要使花的钱最少 那么就可以 给b 888,给a 889 ,但是如果在此基础上, ...
- Dubbo的三种连接方式
1.采用zookeeper作为注册中心 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns ...
- win10 uwp 读取resw资源文件
ResourceContext resourceContext = ResourceContext.GetForViewIndependentUse(); ResourceMap resourceMa ...
- 前后端数据交互处理基于原生JS模板引擎开发
json数据错误处理,把json文件数据复制到----> https://www.bejson.com/ 在线解析json 这样能直观的了解到是否是json数据写错,在控制台打断点,那里错误打那 ...
- URL编码表 Base64编码表 HTTP消息含义
URL编码表 backspace 8% A 41% a 61% § %A7 Õ %D5 tab 9% B 42% b 62% « %AB Ö %D6 linefeed %0A C 43% c ...
- vue对象属性监听
对象属性监听的两种方法: 1.普通的watch data() { return { frontPoints: 0 } }, watch: { frontPoints(newValue, oldValu ...
- bond-team
nmcli con add type team con-name team0 ifname team0 config '{"runner":{"name": & ...
- CRM-stark组件
stark组件 1. stark也是一个app(用startapp stark创建),目标时把这个做成一个可以拔插的组件 2. setting文件下INSTALLED_APPS 路径要配置好(app的 ...