|NO.Z.00057|——————————|BigDataEnd|——|Hadoop&Sqoop.V05|——|Sqoop.v05|执行Job|
一、执行 job
### --- 执行数据增量导入有两种实现方式:
~~~ 每次手工配置last-value,手工调度
~~~ 使用job,给定初始last-value,定时任务每天定时调度很明显方式2更简便。
### --- 创建口令文件
[root@linux123 ~]# echo -n "12345678" > sqoopPWD.pwd
[root@linux123 ~]# hdfs dfs -mkdir -p /sqoop/pwd
[root@linux123 ~]# hdfs dfs -put sqoopPWD.pwd /sqoop/pwd
[root@linux123 ~]# hdfs dfs -chmod 400 /sqoop/pwd/sqoopPWD.pwd
~~~ # 可以在 sqoop 的 job 中增加:
--password-file /sqoop/pwd/sqoopPWD.pwd
### --- 创建 sqoop job
~~~ # 创建 sqoop job
[root@linux123 ~]# sqoop job --create myjob1 -- import \
--connect jdbc:mysql://linux123:3306/sqoop \
--username hive \
--password-file /sqoop/pwd/sqoopPWD.pwd \
--table goodtbl \
--incremental append \
--hive-table mydb.goodtbl \
--hive-import \
--check-column serialNumber \
--last-value 0 \
-m 1
~~~ # 查看已创建的job
[root@linux123 ~]# sqoop job --list
myjob1
~~~ # 查看job详细运行是参数
[root@linux123 ~]# sqoop job --show myjob1
Job: myjob1
Tool: import
Options:
----------------------------
~~~ # 执行job
[root@linux123 ~]# sqoop job --exec myjob1
~~~ # 删除job
[root@linux123 ~]# sqoop job --delete myjob1
### --- 执行job
[root@linux123 ~]# sqoop job -exec myjob1
### --- 查看数据
~~~ # 实现原理:
~~~ 因为job执行完成后,会把当前check-column的最大值记录到meta中,
~~~ 下次再调起时把此值赋给last-value。
~~~ 缺省情况下元数据保存在 ~/.sqoop/
~~~ # 其中,metastore.db.script 文件记录了对last-value的更新操作:
[root@linux123 ~]# ls ~/.sqoop/
metastore.db.properties metastore.db.script
[root@linux123 ~]# cat ~/.sqoop/metastore.db.script |grep incremental.last.value
INSERT INTO SQOOP_SESSIONS VALUES('myjob1','incremental.last.value','1199','SqoopOptions')
Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
——W.S.Landor
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」