sqoop 兼容性问题
--direct 只支持mysql 5.0 + 和postgresql 8.3+(只是import)
jdbc的jar包需要放在$SQOOP_HOME/lib目录下
mysql zeroDateTimeBehavior
mysql允许DATE列使用'0000-00-00\' 如果不处理sqoop默认给转换为null
当然你也可以自己指定为 round,自动转换为('0001-01-01\')
$ sqoop import --table foo \
--connect jdbc:mysql://db.example.com/someDb?zeroDateTimeBehavior=round
mysql UNSIGNED 列
如果是UNSIGNED的,它是介于0 and ^ ()的,但是数据库会告诉sqoop,这是整形
整形的大小是介于- and \+2147483647的,超过214748364的,它处理不了。
--direct模式不支持BLOB和CLOB,不支持视图
为了性能,一般的是32MB提交一次,可以通过 -D sqoop.mysql.export.checkpoint.bytes=size来指定
它的单位是bytes,设置为0,就禁用检查点了。
在对生产环境导入数据时,用户也在用,我们通过stage表来解决稳定性的问题,肯定会对生产环境产生影响
我们可以通过设置 -D sqoop.mysql.export.sleep.ms=time 参数(单位毫秒)来让它停止一段时间
每传输sqoop.mysql.export.checkpoint.bytes个字节就休息一段时间
oracle部分
sqoop支持 ojdbc6.jar
oracle当中的DATE和TIME,都会当做是TIMESTAMP值,sqoop会当做java.sql.Timestamp来存储
当把数据导回到数据库的时候,sqoop会把它转换为 yyyy-mm-dd HH:MM:SS.ffffffff格式
但是你只希望yyyy-mm-dd格式
时区,默认是GMT
$ sqoop import -D oracle.sessionTimeZone=America/Los_Angeles \
--connect jdbc:oracle:thin:@//db.example.com/foo --table bar
hive和sql的数据类型匹配
DATE,TIME,TIMESTAMP 会被当做是字符串处置, NUMERIC和DECIMAL会被认为是double
sqoop会提醒你精度丢失了
Microsoft SQL特殊的参数
--schema <name> Scheme name that sqoop should use. Default is "dbo".
--table-hints <hints> Table hints that Sqoop should use for data movement.
$ sqoop import ... --table custom_table -- --schema custom_schema
$ sqoop import ... --table custom_table -- --table-hints NOLOCK
PostgreSQL
$ sqoop export (generic-args) --connection-manager org.apache.sqoop.manager.PGBulkloadManager (export-args)
支持参数和例子
Property Description
mapred.reduce.tasks map数量
pgbulkload.bin pg_bulkoad binary安装路径,每一台机器都有
pgbulkload.check.constraints 检查约束,默认是true
pgbulkload.parse.errors 在转义,加密,过滤,检查约束,数据类型转换中产生的错误的最大数,默认是无穷大
pgbulkload.duplicate.errors 数据重复的忍耐值. 重复值在数据库中存储是badfile,默认是无穷大
pgbulkload.filter 转换每一行为输入的数据
Here is a example of complete command line.
$ sqoop export \
-Dmapred.reduce.tasks=
-Dpgbulkload.bin="/usr/local/bin/pg_bulkload" \
-Dpgbulkload.input.field.delim=$'\t' \
-Dpgbulkload.check.constraints="YES" \
-Dpgbulkload.parse.errors="INFINITE" \
-Dpgbulkload.duplicate.errors="INFINITE" \
--connect jdbc:postgresql://pgsql.example.net:5432/sqooptest \
--connection-manager org.apache.sqoop.manager.PGBulkloadManager \
--table test --username sqooptest --export-
sqoop 兼容性问题的更多相关文章
- [sqoop1.99.7] sqoop入门-下载、安装、运行和常用命令
一.简介 Apache Sqoop is a tool designed for efficiently transferring data betweeen structured, semi-str ...
- 049 CDH商业版本的搭建(hadoop5.3.6 +hive+sqoop)
为什么使用CDH版本? 这个主要考虑到兼容性. 下载地址:http://archive.cloudera.com/cdh5/cdh/5 最新的CDH公司的hadoop版本: 一:准备工作 1.步骤 1 ...
- 数据迁移之Sqoop
一 简介 Apache Sqoop(TM)是一种用于在Apache Hadoop和结构化数据存储(如关系数据库)之间高效传输批量数据的工具 . 官方下载地址:http://www.apache.org ...
- 前端css兼容性与易混淆的点
一.常用的骨灰级清除浮动 .clearfix:after { content: "."; display: block; height:; clear: both; visibil ...
- SQL Server2008R2 在windows8上安装,出现“兼容性”和 “执行未经授权的操作”的错误!
本人是windows8.1的操作系统,亲测安装成功 解决方法如下: 1.卸载干净sql Server2008r2,包括注册表内容,删除c盘下的安装路径! 2.关闭防火墙(这步很重要) 3.断开网络连接 ...
- [转载]强制不使用“兼容性视图”的HTML代码
在IE8浏览器以后版本,都有一个"兼容性视图",让不少新技术无法使用.那么如何禁止浏览器自动选择"兼容性视图",强制IE以最高级别的可用模式显示内容呢?下面就介 ...
- 企业IT管理员IE11升级指南【16】—— 使用Compat Inspector快速定位IE兼容性问题
企业IT管理员IE11升级指南 系列: [1]—— Internet Explorer 11增强保护模式 (EPM) 介绍 [2]—— Internet Explorer 11 对Adobe Flas ...
- 浅谈WebService的版本兼容性设计
在现在大型的项目或者软件开发中,一般都会有很多种终端, PC端比如Winform.WebForm,移动端,比如各种Native客户端(iOS, Android, WP),Html5等,我们要满足以上所 ...
- position:sticky的兼容性尝试
开篇 笔者刚刚结束淘宝的工作,现在加入了一家有青春活力的垂直电商公司,正对着阿里巴巴的西溪园区,最近一直在熟悉新的工作环境和规范,因此博客有好些时间没有更新了,在此抱歉! 在忙碌完公司的发布系统之后, ...
随机推荐
- [转]What are mode and status columns under gp_segment_configuration table
February 16, 2017 10:39 Goal In this article we will try to understand and answer to the below two q ...
- Github emoji 表情包大全
传送门:https://www.jianshu.com/p/72a4214764e4 https://www.webpagefx.com/tools/emoji-cheat-sheet/
- U811.1接口EAI系列之四--委外订单生成--VB语言
委外订单主细表.子个构成需求.具体代码与参数说明. 下面调用的通用方法在: http://www.cnblogs.com/spring_wang/p/3393147.html 作者:王春天 2013- ...
- 两种屏幕HUD区域限制的做法(矩形,弧形)
HUD区域限制算是比较常用到的功能,方形的HUD区域限制多见于小地图,弧形或者椭圆多见于屏幕范围约束. 我没有研究倒角矩形做法,而是将椭圆和矩形进行插值得到一个弧度比较高的形状: 当插值为0时限制范围 ...
- DDR3控制
很简单的,app_en和app_rdy一握手,代表MIG接受了一个写数据请求或者读数据请求,只要保证app_en和app_rdy握手,根本就不关心写数据rdy,这是MIG的一个bug,你看它源码就知道 ...
- python中包含UTF-8编码中文的列表或字典的输出
在python 下面一个包含中文字符串的列表(list)或字典,直接使用print会出现以下的结果: >>> dict = {"asdf": "我们的p ...
- 【delphi】TStringList类常用属性方法详解
TStringList 常用方法与属性 var List: TStringList; i: Integer; begin List := TStringList.Create; List.Add('S ...
- 解决chrome extension无法下载的问题
由于GFW把谷歌应用商店给屏蔽了,下载chrome扩展变得很困难. 我使用的是版本30.0.1599.101 m. 那么你需要做的第一个处理是,修改host文件,保证chrome应用商店可以登录.如下 ...
- Win10+VMplayer12中U盘无法挂载解决
VMplayer 中运行mac osx,想挂载个U盘进去,无奈居然一直挂载不进去,而此时宿主机Win10中的U盘也消失,查看设备管理器居然显示"未知设备" 于是乎一顿度娘,网上的方 ...
- n阶方阵A可逆充分必要条件
n阶方阵A可逆 充分必要条件:<=> A非奇异(非奇异矩阵就是对应的行列式不等于等于0的方阵)<=> |A|≠0 <=> r(A) = n <=> A的 ...