Impala变量和会话id与JDBC
在impala shell中,我可以定义变量,并使用profile命令获取会话id。我正在寻找使用JDBC连接的类似功能。这仅限于shell还是有任何方法可以通过JDBC实现 更新 当我从shell运行“profile”命令时,会得到如下报告:Impala变量和会话id与JDBC,jdbc,impala,Jdbc,Impala,在impala shell中,我可以定义变量,并使用profile命令获取会话id。我正在寻找使用JDBC连接的类似功能。这仅限于shell还是有任何方法可以通过JDBC实现 更新 当我从shell运行“profile”命令时,会得到如下报告: Query Runtime Profile: Query (id=4c47466abb90bda5:8f0e5aa3ee01c7a6): Summary: Session ID: d34f51a1b95852fa:d83aa5e8911f96
Query Runtime Profile:
Query (id=4c47466abb90bda5:8f0e5aa3ee01c7a6):
Summary:
Session ID: d34f51a1b95852fa:d83aa5e8911f96ab
Session Type: BEESWAX
我对如何使用JDBC获取“会话ID”感兴趣
对于变量替换,我知道我可以从Java执行自定义版本,但不幸的是,我们使用了一个与JDBC连接的第三方工具,我正在寻找一个内置解决方案,将一些信息存储在连接到会话的变量中。变量替换由shell中的命令解释器完成(以及剥离注释、检测命令分隔符等);然后将最终命令一个接一个地提交给Impala。您可以使用Java代码重新开发自己的命令解释器,或者使用标准JDBC
PreparedStatement
。祝您玩得开心。profile
shell命令定义为“打印最后一条DML语句或执行的SELECT查询的运行时配置文件。”那么,“会话ID”是什么意思?是pid()
Impala函数的结果,例如SELECT pid();
?Cf。我更新了问题。@SamsonScharfrichter“我在寻找内置解决方案”--内置什么?Impala没有“程序性”选项“任何类型的扩展,它只处理基本的SQL命令;因此只剩下您的JDBC客户机>>“我们使用第三方工具”——那么,该工具是否支持自定义变量替换?