在学习sqoop job之前,最好先学习一下sqoop命令的导入导出

sqoop 使用 import 将 mysql 中数据导入到 hive

sqoop 使用 import 将 mysql 中数据导入到 hdfs

sqoop 使用 export 将 hive 中数据导出到 mysql

sqoop job

sqoop job 可将一些参数配置以及命令语句保存起来,方便调用。

接下来实现一个从mysql导入到hive的任务

  • mysql建表,表名为 sqoop_job

    CREATE TABLE `sqoop_job` (
    `id` int() DEFAULT NULL,
    `name` varchar() DEFAULT NULL,
    `jobname` varchar() DEFAULT NULL
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1
  • 给sqoop_job插入测试数据
    insert into sqoop_job values(,"name1","jobname1");
    insert into sqoop_job values(,"name2","jobname2");
    insert into sqoop_job values(,"name3","jobname3");
  • 将mysql表结构同步到hive
    sqoop create-hive-table --connect jdbc:mysql://localhost:3306/sqooptest --username root --password 123qwe --table sqoop_job
    --hive-table sqoop_job --fields-terminated-by ,
  • 创建一个导入任务的sqoop job
    sqoop job --create sqoopimport1 -- import --connect jdbc:mysql://localhost:3306/sqooptest --username root -password 123qwe --table sqoop_job
    --hive-import --hive-table sqoop_job --fields-terminated-by ',' -m 1

    创建成功后可使用命令查看当前job列表

    sqoop job -list
    sqoop还支持查看已创建任务的参数配置
    使用命令 sqoop job --show jobname

    EFdeMacBook-Pro:sbin FengZhen$ sqoop job --show sqoopimport1
    Job: sqoopimport1
    Tool: import
    Options:
    ----------------------------
    verbose = false
    db.connect.string = jdbc:mysql://localhost:3306/sqooptest
    codegen.output.delimiters.escape =
    codegen.output.delimiters.enclose.required = false
    codegen.input.delimiters.field =
    hbase.create.table = false
    db.require.password = true
    hdfs.append.dir = false
    db.table = sqoop_job
    codegen.input.delimiters.escape =
    import.fetch.size = null
    accumulo.create.table = false
    codegen.input.delimiters.enclose.required = false
    db.username = root
    reset.onemapper = false
    codegen.output.delimiters.record =
    import.max.inline.lob.size =
    hbase.bulk.load.enabled = false
    hcatalog.create.table = false
    db.clear.staging.table = false
    codegen.input.delimiters.record =
    enable.compression = false
    hive.overwrite.table = false
    hive.import = true
    codegen.input.delimiters.enclose =
    hive.table.name = sqoop_job
    accumulo.batch.size =
    hive.drop.delims = false
    codegen.output.delimiters.enclose =
    hdfs.delete-target.dir = false
    codegen.output.dir = .
    codegen.auto.compile.dir = true
    relaxed.isolation = false
    mapreduce.num.mappers =
    accumulo.max.latency =
    import.direct.split.size =
    codegen.output.delimiters.field =
    export.new.update = UpdateOnly
    incremental.mode = None
    hdfs.file.format = TextFile
    codegen.compile.dir = /tmp/sqoop-FengZhen/compile/546e29b092f451585b5c8547b3e9985e
    direct.import = false
    hive.fail.table.exists = false
    db.batch = false
  • 执行job
    sqoop job --exec sqoopimport1
    执行成功后可查看hive中表的数据
    hive> select * from sqoop_job;
    OK
    name1 jobname1
    name2 jobname2
    name3 jobname3
    Time taken: 1.618 seconds, Fetched: row(s)

    Done.

sqoop job从创建到执行的更多相关文章

  1. ASP.NET Web API 过滤器创建、执行过程(二)

    ASP.NET Web API 过滤器创建.执行过程(二) 前言 前面一篇中讲解了过滤器执行之前的创建,通过实现IFilterProvider注册到当前的HttpConfiguration里的服务容器 ...

  2. ASP.NET Web API 过滤器创建、执行过程(一)

    ASP.NET Web API 过滤器创建.执行过程(一) 前言 在上一篇中我们讲到控制器的执行过程系列,这个系列要搁置一段时间了,因为在控制器执行的过程中包含的信息都是要单独的用一个系列来描述的,就 ...

  3. linux进程编程:子进程创建及执行函数简介

    linux进程编程:子进程创建及执行函数简介 子进程创建及执行函数有三个: (1)fork();(2)exec();(3)system();    下面分别做详细介绍.(1)fork()    函数定 ...

  4. (转)ASP.NET Mvc 2.0 - 1. Areas的创建与执行

    转自:http://www.cnblogs.com/terrysun/archive/2010/04/13/1711218.html ASP.NET Mvc 2.0 - 1. Areas的创建与执行 ...

  5. JBPM4入门——6.流程实例的创建和执行

    本博文只是简要对JBPM4进行介绍,如需更详细内容请自行google 链接: JBPM入门系列文章: JBPM4入门——1.jbpm简要介绍 JBPM4入门——2.在eclipse中安装绘制jbpm流 ...

  6. 创建可执行的JAR包

    创建可执行的JAR文件包,需要使用带cvfm参数的jar命令,命令如下:JAR cvfm test.jar manifest.mf testtest.jar和manifest.mf为两个文件,分别对应 ...

  7. SpringBoot 创建可执行Jar

    创建可执行JAR 我们也可以通过插件创建一个在生产环境中运行的可执行jar文件来完成我们的示例. 首先引入依赖: <build> <plugins> <plugin> ...

  8. 使用jar命令打jar/war包、创建可执行jar包、运行jar包、及批处理脚本编写

    jar 命令 jar 是一个jar.exe可执行命令,即可以生成jar文件,也可以生成war文件   使用示例:jar -cvf ../xxx.jar *  -c   create,创建新的归档文档 ...

  9. 《linux下进程的创建,执行,监控和终止》

    <linux下进程的创建,执行,监控和终止> http://blog.csdn.net/miss_acha/article/details/43671047 http://blog.csd ...

随机推荐

  1. MySQL四-1:数据类型

    阅读目录 一 介绍 二 数值类型 三 日期类型 四 字符串类型 五 枚举类型与集合类型 一 介绍 存储引擎决定了表的类型,而表内存放的数据也要有不同的类型,每种数据类型都有自己的宽度,但宽度是可选的 ...

  2. [译]GLUT教程(目录)

    http://www.lighthouse3d.com/tutorials/glut-tutorial/ GLUT是OpenGL Utility Toolkit的意思.作者Mark J. Kilgar ...

  3. Swing与javafx直接调用

    Swing调用javafx 调用方法: Platform.runLater(new Runnable(){ @Override public void run() { WebView webView ...

  4. tftp服务配置

    tft概念: TFTP(Trivial File Transfer Protocol,简单文件传输协议)是TCP/IP协议族中的用来在客户机与服务器之间进行简单文件传输的协议,提供不复杂.开销不大的文 ...

  5. BFS 和 DFS

    DFS用到递归,BFS要用到一个辅助队列 #include "stdafx.h" #include<iostream> #include<vector> # ...

  6. Java 获取指定日期的方法汇总

    import java.text.DateFormat; import java.text.ParsePosition; import java.text.SimpleDateFormat; impo ...

  7. ubuntu 1204 安装mysql

    检測本机是否有安装mysql sudo netstat -tap | grep mysql 运行上面的命令之后.看到 mysq 的socket 处于监听状态,说明有成功安装. 安装mysql sudo ...

  8. saltstack之定时管理

    1.设置定时任务 /srv/salt/cron/ntpdate.sls /usr/sbin/ntpdate 10.31.10.3; /sbin/hwclock -w: cron.present: - ...

  9. Domino Angular 前端UI开发

    因为如今前端的要求越来越专业化,不少企业已经有前端的专业职位了.当然我们dominio软件企业.有些也在特意招一些前端的project师. 比方如今流程的多平台(之前我的有教程).就必需要有专业的UI ...

  10. 你须知道的30个CSS选择器 »

    你也许已经掌握了id.class.后台选择器这些基本的css选择器.但这远远不是css的全部.下面向大家系统的解析css中30个最常用的选择器,包括我们最头痛的浏览器兼容性问题.掌握了它们,才能真正领 ...