Hi Zhao

> 1 为什么flinksql 1.11中,JDBC 
> Catalog通过简单的链接转给了connector,catalog和connector并不是同一个概念。我认为应该将jdbc 
> connectior和jdbc catalog分开放入各自目录。


两个是不同的概念,JDBC catalog 可以 包含在 JDBC connector 里,你可以理解 JDBC connector 是 Flink 与 
JDBC 交互的连接器,Catalog也属于交互的一部分。JDBC connector里不只是数据的读取/写入 JDBC,也包括了JDBC dialect 和 
JDBC catalog等, JDBC catalog 目前能读取的表都是 JDBC(目前支持Pg) 的表,JDBC catalog 读取表/库 的逻辑 和 
JDBC 读取/写入数据 有很多的复用的逻辑。


> 2      为什么flinksql1.11中,connector部分没有hive connector。而是在hive 
> integration部分,以及catalogs中介绍。而且在 Table API & SQL/Hive Integration/Hive Read & 
> Write 部分,第一句是“Using the HiveCatalog and Flink’s connector to Hive, Flink can 
> read and write from Hive data as an alternative to Hive’s batch engine.”
Hive 是Hadoop上一个比较大的生态系统,同时hive也有自己的计算引擎(batch),Flink 不是简单地 链接 到hive,而是可以作为 Hive 
的一个替代的计算引擎,除了读取/写入数据到Hive外,用户Hive里的SQL作业完全可以用Flink跑,这已经脱离了简单的交互的范畴了,所以会放在集成部分。

> 。难道不使用hivecatalog就不能读取hive数据?是这个意思嘛。感觉好像意思是hive读取特别,这种情况必须使用hive 
> catalog。不可以使用jdbc catalog,但使用hive connector嘛?

是的,不是特别,而是HiveCatalog 就是用来管理 
Hive中表、库、函数的元数据中心,用这个HiveCatalog也是很自然的事情。目前不可以使用JDBC catalog,很长一段时间也应该不行,Jdbc 
catalog 里存的表都是DB里的表,不支持存放Hive的表。


祝好
Leonard Xu

回复