oracle - 将表中的特定分区导入 hadoop

标签 oracle hadoop hdfs sqoop

我正在使用 sqoop 将数据导入 hadoop。我正在使用以下命令将表导入 hadoop。

 sqoop import \
 --connect jdbc:oracle:thin:@172.16.XXX.XXX:15XX:TABS \
 --username user \
 --password pass \
 --table TABS.ADM_LOG0009 \
 --target-dir /hadoop/hptabs/recharge

现在我有另一个名为 IVM_IMAGE 的表,它是一个分区表。我只想将 3 个分区从 Oracle 导入到 hadoop。请帮助我为此编写命令。

  • Oracle 表名:TABS.IVM_IMAGE
  • 分区:LESS20161101、LESS20161001、LESS20160901
  • 分区键:BILLDATE

  • HIVE 表名:hptabs.IVM_IMAGE

表格属性:

PARTITIONED BY (BILLDATE TIMESTAMP) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' LOCATION 'hdfs:/hadoop/hptabs/usage';

最佳答案

要导入特定分区,我需要在我的 sqoop 命令中添加“-Doraoop.import.partitions='"LESS20161101","LESS20161001","LESS20160901",'"

sqoop import \
-Doraoop.disabled=false \
-Doraoop.import.partitions='"LESS20161101","LESS20161001","LESS20160901",' \
--connect jdbc:oracle:thin:@172.16.XXX.XXX:15XX:TABS \
--username user \
--password password \
--table TABS.IVM_IMAGE \
--target-dir /hadoop/hptabs/usage/ \
-m 1

关于oracle - 将表中的特定分区导入 hadoop,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40957853/

相关文章:

azure - 与使用JDBC从SQL Server读取表相比,使用SparkSQL访问Hive表有什么特别的好处?

forms - 如何在 Oracle Forms Builder 中显示对话框 Canvas ?

java - 如何获取 Jdeveloper 11.1.1.7 中构建的 Web 服务应用程序的调用客户端的 IP 地址?

hadoop - 谁在hadoop中拆分文件?是工作追踪器吗?

java - 从Hive读取表格而没有 map 减少

hadoop - 辅助服务 :mapreduce_shuffle does not exist on hive

Hadoop distcp - 可以保持每个文件相同(保留文件大小)?

hadoop 存储目录使用的空间超过 HDFS 上的总数据

c# - 尝试不需要针对 x86 和 x64 程序的两个单独的解决方案

sql - Oracle 10g 中的 LISTAGG 替代方案