【问题标题】:Create tables in hive from ddl files从 ddl 文件在 hive 中创建表
【发布时间】:2016-08-11 03:33:14
【问题描述】:

我正在使用 JRuby 连接到 Hive,这很成功。现在我想创建表,但不是将 create 语句作为参数写入 execute() 方法,而是要调用具有表定义的 ddl 文件。

我无法获取文件内容并使用它们,因为在实际创建表之前它们通常不止一个语句(即 CREATE DATABASE IF NOT EXISTS,CREATE TABLE IF NOT EXISTS ..)

有没有可以通过我的 JDBC 连接使用的命令来获取 ddl 文件并执行它?

【问题讨论】:

    标签: jdbc hive ddl


    【解决方案1】:

    据我所知,JDBC API 无法直接执行类似于 hive -f 的操作, 选项1) 您可以解析您的 SQL 文件并编写一个方法来顺序执行命令(或)使用第三方代码,

    这是一个参考http://www.codeproject.com/Articles/802383/Run-SQL-Script-sql-containing-DDL-DML-SELECT-state

    选项 2) 如果您运行 Jruby 代码的客户端环境也支持 hive,请编写一个可以连接到远程 JDBC 并使用直线运行 SQL 的 shell 脚本,这将进行远程 Thrift 调用

    参考:https://cwiki.apache.org/confluence/display/Hive/HiveServer2+Clients

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-05-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-24
      • 2015-12-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多