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