我正在尝试使用flink sql client执行配置单元查询,并修改sql-client-defaults.yaml
选择要执行的执行类型 batch
模式为:
执行:
planner: blink
type: batch
定义配置单元目录并将当前目录设置为 hive
目录:
- name: myhive
type: hive
hive-conf-dir: /software/apache-hive-2.3.7-bin/conf/
default-database: default
然后我用以下命令启动sql客户端: sql-client.sh embedded
我可以看到Hive数据库和表。
然后我做以下表格;
use testdb; ---success select * from t1 limit 10; ---fail
第二步失败,出现以下异常:
Flink SQL> select * from t1;
2020-12-21 11:33:27,755 WARN org.apache.hadoop.hive.conf.HiveConf [] - HiveConf of name hive.metastore.local does not exist
2020-12-21 11:33:28,599 INFO org.apache.hadoop.mapred.FileInputFormat [] - Total input paths to process : 1
[ERROR] Could not execute SQL statement. Reason:
java.net.ConnectException: Connection refused
我会问你怎么修理这个房间 connection refused
例外
谢谢。
更新:
启动flink独立集群后,查询成功。我会问的
为什么我要启动flink独立集群,我认为它是在本地模式下运行的(我有一个sql客户机和sql-client.sh) embedded
)
我可以在集群上运行sql客户机吗?
1条答案
按热度按时间ccrfmcuu1#
sql客户端依赖于能够向集群提交查询。”“嵌入式”指的是这种架构,
其中sql执行器嵌入到sql客户机中。但是flink集群仍然在sql客户机的外部。详见flip-24。
为了将sql客户机连接到非本地集群,sql客户机yaml有一个部署部分。您可以在那里使用常规的flink run选项并配置例如您的yarn会话集群。另请参阅flink sql client connect to non-local cluster。