首页 > 编程知识 正文

sqoop自动创建表,sqoop导出hive数据

时间:2023-05-05 00:51:07 阅读:286403 作者:964

1.使用sqoop创建表并且指定对应的hive表中的字段的数据类型,同时指定该表的分区字段名称

sqoop create-hive-table --connect "jdbc:oracle:thin:@192.168.13.1:1521/test" --username root --password 12345 --table test --hive-table myhive5 --hive-partition-key partition_time --map-column-hive id=String,number=String,modify_time=String

2.按照时间字段来组装sql增量导入指定时间范围内的数据,同时改变时间的类型,可以使时间精确到秒;另外注意导入时指定的分区值的路径与对应的值

sqoop import --connect "jdbc:oracle:thin:@192.168.13.1:1521/test" --username root --password 12345  --query "SELECT i.id,i.number,i.FILE_NO,TO_CHAR(i.MODIFY_DATE_TIME ,'yyyy-mm-dd hh24:mi:ss') FROM JHMR_FILE_INDEX i WHERE MODIFY_DATE_TIME >=TO_DATE('2017-10-23 11:00:00', 'yyyy-mm-dd hh24:mi:ss') and $CONDITIONS" --target-dir /user/hive/warehouse/myhive5/partition_time=20171023 --hive-import -m 5 --hive-table myhive5 --split-by PATIENT_ID --hive-partition-key partition_time --hive-partition-value 20171023

过滤导入的时候,没有主键的要加--split-by 且 --target-dir 后面的路径加上分区路径即可(这样就不会报路径存在异常)

3.创建表,全量导入(sqlserver条件用where,oracle用and)

sqoop create-hive-table --connect "jdbc:sqlserver://192.168.13.1:1433;username=root;password=12345;databasename=test" --table test --hive-table myhive2 --hive-partition-key partition_time --map-column-hive ID=String,name=String,addr=String

sqoop import --connect "jdbc:sqlserver://192.168.13.1:1433;username=root;password=12345;databasename=test" --query "select * from test i where $CONDITIONS" --target-dir /user/hive/warehouse/myhive2/partition_time=20171023 --hive-import -m 5 --hive-table myhive2 --split-by ID --hive-partition-key partition_time --hive-partition-value 20171023

批量导入数据到hive表中:假设我有60张主子表如何批量创建导入数据

背景:根据业务需要需要把60张主子表批量入库到hive表. 创建测试数据: def createBatchTestFile(): Unit = { to ) { val sWriter = new P ...

第3节 sqoop:4、sqoop的数据导入之导入数据到hdfs和导入数据到hive表

注意: (1)01 是hive当中默认使用的分隔符,这个玩意儿是一个asc 码值,键盘上面打不出来 (2)linux中一行写不下,可以末尾加上 一些空格和 “ ”,换行继续写余下的命令: bi ...

sqoop导入数据到hive

1.1hive-import参数 使用--hive-import就可以将数据导入到hive中,但是下面这个命令执行后会报错,报错信息如下: sqoop import --connect jdbc:my ...

sqoop导入数据到hive中元数据问题

简单配置了sqoop之后开始使用,之前用的时候很好用,也不记得有没有启动hivemetastore,今天用的时候没有启动,结果导入数据时,如果使用了db.tablename,就会出现找不到数据库的错, ...

spark读取mongodb数据写入hive表中

一 环境: spark-: hive-; scala-; hadoop--cdh-; jdk-1.8; mongodb-2.4.10; 二.数据情况: MongoDB数据格式{    "_i ...

BCP批量导入数据时候如何处理表中自动增加的字段

大容量导入数据时保留标识值 (SQL Server) http://msdn.microsoft.com/zh-cn/library/ms186335(v=sql.120).aspx 使用格式化文件跳 ...

sqoop导入数据到hive---2

1.hive-table 从mysql导入数据到hive表中,可以使用--hive-table来指定hive的表名,不指定hive表名,则hive表名与mysql表名保持一致. sqoop impor ...

将DataFrame数据如何写入到Hive表中

1.将DataFrame数据如何写入到Hive表中?2.通过那个API实现创建spark临时表?3.如何将DataFrame数据写入hive指定数据表的分区中? 从spark1.2 到spark1.3 ...

将Hive统计分析结果导入到MySQL数据库表中(一)——Sqoop导入方式

https://blog.csdn.net/niityzu/article/details/45190787 交通流的数据分析,需求是对于海量的城市交通数据,需要使用MapReduce清洗后导入到HB ...

随机推荐

jq 模板

菜鸟教程1.4.6版本angularJS

Jersey rest接口对POJO的支持如下: package com.coshaho.learn.jersey; import java.net.URI; import javax.ws.rs.C ...

maven-shade-plugin 入门指南

1. Why? 通过 maven-shade-plugin 生成一个 uber-jar,它包含所有的依赖 jar 包. 2. Goals Goal Description shade:help Dis ...

组合数计算-java

排列组合是计算应用经常使用的算法,通常使用递归的方式计算,但是由于n!的过于大,暴力计算很不明智.一般使用以下两种方式计算. 一,递归的思想:假设m中取n个数计算排列组合数,表示为comb(m,n). ...

二进制安装mariaDB

1.获取二进制安装包 获取二进制格式MariaDB安装包,可去官网下载. 因为是实验环境,所以选择了最新版. mariadb-10.2.12-linux-x86_64.tar.gz 2.解压 解压到 ...

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。