Talend 将Oracle中数据导入到hive中,根据系统时间设置hive分区字段

首先,概览下任务图:

流程是,先用tHDFSDelete将hdfs上的文件删除掉,然后将oracle中的机构表中的数据导入到HDFS中;建立hive连接-》hive建表-》tJava获取系统时间-》tHiveLoad将hdfs上的文件导入到hive表中。

下面介绍每一个组件的设置:

tHDFSDelete_1:

机构:

tHDFSOutput_1:

hive:

tHiveCreateTable:

tJava_1:

tHiveLoad_1:

在Context下面建一个内容变量:

这个内容变量riqi, 在tJava_1中赋值,然后在tHiveLoad_1中被使用,这样插入的分区就是程序运行是的系统日期。

[[email protected] root]$ hive

Logging initialized using configuration in file:/etc/hive/conf/hive-log4j.properties
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/usr/hdp/2.2.0.0-2041/hadoop/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/usr/hdp/2.2.0.0-2041/hive/lib/hive-jdbc-0.14.0.2.2.0.0-2041-standalone.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
hive> use zhangchao;
OK
Time taken: 1.023 seconds

hive> show tables;
OK
jigou
Time taken: 0.255 seconds, Fetched: 1 row(s)
hive> select * from jigou limit 10;
OK
d64ceb0d-c85a-43ca-a705-c34f4258e938    002     成都高新区西园社区卫生服务中心  CDGXQXYSQW      1       09465203-3              程小川                  oracle.sql.OPAQUE@7cfa3f14      510109          13323434
821028cc-30cc-461b-a197-28d62abc92dc    002     成都高新区中和社区卫生服务中心  CDGXQZHSQW      1       45081237-2              贾朝勇  028-85658497    成都市高新区中和大道3段56号     oracle.sql.OPAQUE@11437a26                    13323434
0a49de29-5562-4951-abf3-829b0cff9692    004     成都高新区肖家河社区卫生服务中心        CDGXQXJHSQ      1                       岳晖    028-85178759    成都高新区肖家河巷8号   oracle.sql.OPAQUE@65085da4   13323434
fd6d1f13-e435-4461-8cdc-d2fe48158c8c    001     高新区合作社区卫生服务中心      GXQHZSQWSF      1       45085201-6              罗洪林  028-87876286    成都高新区合作清江小区清源环街171号     oracle.sql.OPAQUE@83bedce     510109          13323434
94ac1712-199f-4461-9761-5d5ed3410a7f    003     高新区芳草社区卫生服务中心      GXQFCSQWSF      1       003             管理员                  oracle.sql.OPAQUE@1679739b                      13323434
d64ceb0d-c85a-43ca-a705-c34f4258e938    002     成都高新区西园社区卫生服务中心  CDGXQXYSQW      1       09465203-3              程小川                  oracle.sql.OPAQUE@3116aa4b      510109          2015-06-29
821028cc-30cc-461b-a197-28d62abc92dc    002     成都高新区中和社区卫生服务中心  CDGXQZHSQW      1       45081237-2              贾朝勇  028-85658497    成都市高新区中和大道3段56号     oracle.sql.OPAQUE@47063b1a                    2015-06-29
0a49de29-5562-4951-abf3-829b0cff9692    004     成都高新区肖家河社区卫生服务中心        CDGXQXJHSQ      1                       岳晖    028-85178759    成都高新区肖家河巷8号   oracle.sql.OPAQUE@6a124c63   2015-06-29
fd6d1f13-e435-4461-8cdc-d2fe48158c8c    001     高新区合作社区卫生服务中心      GXQHZSQWSF      1       45085201-6              罗洪林  028-87876286    成都高新区合作清江小区清源环街171号     oracle.sql.OPAQUE@57552dfc    510109          2015-06-29
94ac1712-199f-4461-9761-5d5ed3410a7f    003     高新区芳草社区卫生服务中心      GXQFCSQWSF      1       003             管理员                  oracle.sql.OPAQUE@193e282f                      2015-06-29
Time taken: 0.807 seconds, Fetched: 10 row(s)
hive>
时间: 2024-10-12 15:49:36

Talend 将Oracle中数据导入到hive中,根据系统时间设置hive分区字段的相关文章

使用Sqoop1.4.4将MySQL数据库表中数据导入到HDFS中

问题导读:         1.--connect参数作用? 2.使用哪个参数从控制台读取数据库访问密码? 3.Sqoop将关系型数据库表中数据导入HDFS基本参数要求及命令? 4.数据默认导入HDFS文件系统中的路径? 5.--columns参数的作用? 6.--where参数的作用? 一.部分关键参数介绍 参数介绍 --connect <jdbc-uri> 指定关系型数据库JDBC连接字符串 --connection-manager <class-name> 指定数据库使用的管

talend 将hbase中数据导入到mysql中

首先,解决talend连接hbase的问题: 公司使用的机器是HDP2.2的机器,上面配置好Hbase服务,在集群的/etc/hbase/conf/hbase-site.xml下,有如下配置: <property> <name>zookeeper.znode.parent</name> <value>/hbase-unsecure</value> </property> 这个配置是决定, Hbase master在zookeeper中

22.把hive表中数据导入到mysql中

先通过可视化工具链接mysql,在链接的时候用sqoop 用户登录 在数据库userdb下新建表 保存,输入表名upflow 现在我们需要把hive里面的数据通过sqoop导入到mysql里面 sqoop export --connect jdbc:mysql://node1:3306/userdb \ --username sqoop --password sqoop --table upflow --export-dir /user/hive/warehouse/mydb2.db/upflo

将oracle的数据导入到mysql的四种方法

一.Navicat Premium中的数据迁移工具 为了生产库释放部分资源,需要将API模块迁移到mysql中,及需要导数据. 尝试了oracle to mysql工具,迁移时报错不说,这么大的数据量,用这种简陋的工具不大可靠. 意外发现平时用的数据库视图工具Navicat Premium中有数据迁移工具,意外的好用.这个工具本身支持mysql,oracle,sqlLite,PostgreSql数据库,因此而也提供了在不同数据库之间迁移数据的功能. 迁移之前,先确保你建立了这两个数据库的conn

IT忍者神龟之Oracle 的数据导入导出及 Sql Loader (sqlldr) 的用法

在 Oracle 数据库中,我们通常在不同数据库的表间记录进行复制或迁移时会用以下几种方法: 1. A 表的记录导出为一条条分号隔开的 insert 语句,然后执行插入到 B 表中 2. 建立数据库间的 dblink,然后用 create table B as select * from [email protected] where ...,或 insert into B select * from [email protected] where ... 3. exp A 表,再 imp 到

Sqoop1.4.4将MySQL数据库表中数据导入到HBase表中

问题导读:         1.--hbase-table.--hbase-row-key.--column-family及--hbase-create-table参数的作用? 2.Sqoop将关系型数据库表中数据导入HBase中,默认Rowkey是什么? 3.如果关系型数据库表中存在多关键字,该怎么办? 一.简介及部分重要参数介绍 Sqoop除了能够将数据从关系型数据库导入到HDFS和Hive中,还能够导入到HBase表中. --hbase-table:通过指定--hbase-table参数值

将csv和txt 数据导入到数据库中

将文本数据导入到数据库中,最简单的选择是:Excel使用OpenSet,csv和txt 使用bulk insert来实现 1,使用OpenRowSet将Excel导入到数据库中 参考<OpenRowSet 用法> 2,使用bulk insert 将txt数据导入到数据库中,文本数据使用Tab分割Column,使用换行符分割row. --create staging table create table dbo.txt_staging ( col1 nvarchar(255), col2 nva

(solr系列:四)将mysql数据库中的数据导入到solr中

在前面的博文中,已完成了在tomcat中对solr的部署,为solr添加了一个自定义的core,并且引入了ik分词器. 那么该如何将本地的mysql的数据导入到solr中呢? 准备工作: 1.mysql数据源:myuser库中的user表(8条数据) /* Navicat MySQL Data Transfer Source Server         : localhost Source Server Version : 50521 Source Host           : local

机房收费系统———如何将MSFlexGrid中的数据导入到Excel中

机房收费系统进行了一段时间了,虽然说大体上跟学生信息管理系统一样,不过也有不一样的地方.比如说报表.如何将MSFlexGrid中德数据导入到Excel中等等.这些东西原来没有接触过,第一次接触难免有些陌生.这些问题困扰了我好长-时间,一看到它头都大了.不过,提高班名言——不将就是发现的源动力.本着这一原则,慢慢的攻克了这些问题. 机房收费系统中好几个地方需要将MSFlexGrid中德数据导入到Excel中,这是在学生信息管理系统中没有的功能.首先,首先需要在vb里面引用我们所需要的对象:Micr