当前位置:   article > 正文

Java使用sqoop连接Postgre库的参数注意事项_sqoop 连接pg jar包

sqoop 连接pg jar包

参数:schema的使用

java在调用sqoop时候,一些通用参数在此就不介绍了,很多地方都有详细介绍,本文只介绍一些我个人在使用sqoop工具包遇到的问题:访问Postgre库时候怎么加上schema参数

  • 1 加上schema参数时候,要在–schema之前再加一个"–"
  • 2 schema参数要加在所有参数的最后

连接Postgre库的代码示例

// 将HDFS文件导入到Postgre库
/**
*@param conf 连接Hadoop的conf
*@param pg_tablename pg库的表名
*@param table_columns 表的列名
*@param schema_name schema名字
*@param hdfsDir HDFS的文件目录
*@param pg_con_info_map pg库的连接信息
*/
public static void ExportCmd(Configration conf,
String pg_tablename,String schema_name,List<String> table_columns,
String hdfsDir,Map<String,String> pg_con_info_map){
	list<String> list = new ArryList<>();
	//pg库的连接名
	list.add("--connect");
	list.add(pg_con_info_map.get("DRIVERURL"));
	list.add("--username");
	list.add(pg_con_info_map.get("USER"));
	list.add("--password");
	list.add(pg_con_info_map.get("PASSWORD"));
	list.add("--table");
	list.add(pg_tablename);
	list.add("--colnumns");
	list.add(StringUtils.join(table_columns));
	list.add("--fields-terminated-by");
	list.add("\t");
	list.add("--export-dir");
	list.add(hdfsDir);
	list.add("-m");
	list.add("1");
	//设置表的schema
	//放在所有参数的最后
	list.add("--");
	list.add("--schema");
	list.add(schema_name);
	
	Exporter exporter = new Exporter();
	....
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39

另外我自己修改了sqoop-1.4.5的jar包源码

修改了jar包的源码,目前支持scheme.tableName的表名格式,例如表名为:hero.zero_test_pg,会自动处理,在Postgre库中找"hero".zero_test_pg的表名,
原来schema参数依然可以使用,jar包后续会上传

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/798062
推荐阅读
相关标签
  

闽ICP备14008679号