hadoop - 如何将数据和元数据从 Hive 传输到 RDBMS

标签 hadoop apache-spark hive sqoop

我的hive环境中有300多张表。 我想将所有表从 Hive 导出到 Oracle/MySql,包括元数据。

我的 Oracle 数据库没有与这些 Hive 表对应的任何表。

从 Oracle 到 Hive 的 Sqoop 导入如果表不存在,则在 Hive 中创建表。
但是从 Hive 到 Oracle 的 Sqoop 导出如果不存在,则不会创建表,并会失败并出现异常。

Sqoop 中是否也有导出元数据的选项?要么
是否有任何其他 Hadoop 工具可以实现此目的?

提前致谢

最佳答案

您要求的功能不在 Spark 中。不幸的是,我不知道当前的 hadoop 工具可以满足您的要求。一个潜在的解决方法是在 Hive 中使用“show create table mytable”语句。它将返回创建表语句。您可以通过 awk 手动或实用地解析它并在文件中获取创建表,然后针对您的 oracle 数据库运行该文件。从那里,您可以使用 sqoop 填充表。

这不会很有趣。

关于hadoop - 如何将数据和元数据从 Hive 传输到 RDBMS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40273255/

相关文章:

csv - 运行hadoop/mapReduce时发生ClassNotFoundException

hadoop - pig 的分组和平均值

hadoop - 无法找到创建的Hive表,也无法从表中检索数据

apache-spark - Spark2无法将数据帧写入 Parquet hive 表: HiveFileFormat`.与指定格式 `ParquetFileFormat`不匹配

scala - Spark 中的 Broadcast Hash Join (BHJ) 用于全外连接(outer、full、fulouter)

hadoop - Hbase中的单行超过hbase.hregion.max.filesize时的性能问题

apache-spark - 如果后缀出现在 DataFrame 的字符串列上,则删除后缀

hadoop - 从配置单元导入数据时出现 Solr DIH 错误

hadoop - 在配置单元表中查找唯一值

hadoop - 使用Pig脚本读取配置单元表