Hi,
尝试回答一下你提的这几个问题。
1.
不希望用户直接在metastore中建表的话,那我理解用户所能创建的hive表就只有临时表了。目前HiveCatalog还不支持临时hive表,不过社区已经有计划做了,顺利的话可以在1.13中实现。我想了解一下抛开flink不谈,你们在hive中是如何解决这个问题的呢?也是只允许用户创建临时表么?还是说通过某种权限控制的机制来限制哪些用户可以建表?
2. 针对hive metastore里已有的表,通过flink读写数据不需要修改table
property。除非是希望修改表自身的属性(比如format、SerDe等等),这方面跟hive中的使用习惯是一致的。
3.
不用hive方言创建hive表可以尝试添加'is_generic'='false'参数,但前提也是要创建在HiveCatalog里。另外这种方式所能表达的语义很有限,基本只能创建简单的文本表。
4. 这个问题跟#1比较类似,也是可以通过临时表达到这个效果。
On Tue, Feb 23, 2021 at 5:58 PM silence <
[hidden email]> wrote:
> 你好
> 感谢回复
> 主要有以下几点原因:
> 1、直接使用hive catalog进行hive表的创建修改风险太高,更希望在平台层限制hive表的创建和修改
>
> 2、connector的配置是保存在hive表的DBPROPERTIES里的,这是否就意味着想通过flink往现有hive表里写数据需要先通过alter语句修改hive表的属性配置,这里不希望对用户直接暴露alter
> hive的能力
> 3、使用普通的ddl可以与现有connector的定义统一风格,不需要来回切换方言
> 4、可以不用将配置信息持久化,通过GenericInMemoryCatalog使用即可
>
>
>
> --
> Sent from:
http://apache-flink.147419.n8.nabble.com/--
Best regards!
Rui Li