> 不可以使用jdbc catalog,但使用hive connector嘛?

关于这一点稍微补充一下,我们目前访问hive元数据要求必须启动一个HMS,然后我们通过这个HMS来读写元数据(HiveCatalog就是用来对接HMS的),而不是直接去读底层的DBMS的,所以jdbc
catalog是读不了hive元数据的。

On Tue, Aug 11, 2020 at 9:32 AM Leonard Xu <[email protected]> wrote:

> 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



-- 
Best regards!
Rui Li

回复