hadoop—为什么在impala statestore关闭时执行ddl时impala查询会失败?

gev0vcfq  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(536)

在impala的官方文档中,statestore组件有一个声明:
如果在statestore关闭时发出ddl语句,那么访问ddl创建的新对象的查询将失败。
如果我错了,请纠正我,但是通过impala sql进行的元数据更改会从impala目录服务传播到impala守护进程。那么,如果statestore关闭了,为什么通过ddl生成的新对象查询会失败呢?

xzlaal3s

xzlaal3s1#

只是对你的理解做了一个小小的修正,文件上说
称为catalog服务的impala组件将来自impala sql语句的元数据更改中继到集群中的所有impala守护进程。
所以基本上,它通过statestore将元数据更改传递给impala守护进程。您还可以在文档中看到以下内容,
因为statestore的目的是在出现问题时提供帮助,并向协调器广播元数据
因此,任何元数据更改都由catalog服务通过statestore服务转发给impala守护进程。
简单地说,当statestore启动并运行时,impala守护进程和statestore总是保持连接。statestore负责
监视所有 Impala 守护进程,并让其他 Impala 守护进程知道是否在其中一个守护进程上发现任何运行状况问题(例如守护进程宕机)。
在执行查询和使元数据无效期间,它将元数据更改广播到impala守护进程。
希望有帮助!

相关问题