1.概述
用户可以通过Hadoop迁移组件将关系型数据库中的数据批量导入到impala或petabase、hive等库中。
2.操作步骤
前置条件:用户已部署HDFS服务器。
操作入口:【任务管理>任务定义>新建批处理任务>大数据组件】
1)新建Hadoop迁移组件
打开任务编辑器,左侧组件面板中找到大数据分组栏,选择Hadoop迁移组件拖拽到右边编辑区域。
2)界面设置
双击Hadoop迁移组件,打开源设置界面,选择源库表
切换到目标设置界面,设置组件信息,点击确定。
界面设置说明:
目标连接池:只列出impala或hive类型的库。
表名前缀:源表迁移到目标连接池时所生成的表名前缀。
数据写入时覆盖:该选项对已存在的表生效。勾选,则会覆盖已经存在的数据;否则,只是简单的追加,不做重 复性校验。
HDFS地址:目的连接池所在服务器上的HDFS对应地址,默认是127.0.0.1:8020。
HDFS临时目录:指定源表的数据写入到hdfs上时的临时目录,如果是不存在的目录(因为最终在目标库中生成表时,会将该数据文件从临时目录下移到表数据文件在系统中的默认路径下,一般默认是/user/tmp)
文件格式:支持TXT和PARQUET两种格式,TDH环境只支持TXT方式,其他环境:如CDH,则使用PARQUET。
压缩方式:TXT文件默认不压缩,PARQUET文件支持几种常用的压缩方式:不压缩(默认)、SNAPPY、GZIP。
1.因为HDFS文件的操作涉及到权限的问题,所以对于HDFS临时目录的选择需要注意,如果在组件执行过程中报权限的错(Permission denied),需要修改目录(该目录的权限最好为777)。
2.对权限的理解详参考: http://hadoop.apache.org/docs/r1.0.4/cn/hdfs_permissions_guide.html以及http://www.cnblogs.com/webnote/p/5734714.html
3.HDFS临时目录可以指定一个不存在的目录,系统会自动创建该目录。但因为子目录的权限会继承父目录的权限,且由于上述所述权限问题,故最好满足父目录的权限为777。
4.Hadoop迁移组件支持将原表字段注释输出到目标表,详情见批量交换到表组件。
请先登录