【翻译】Flink Table Api & SQL — Catalog Beta 版
本文翻译自官网:Catalogs Beta https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/table/catalogs.html
Catalogs 提供元数据,例如数据库,表,分区,视图以及访问存储在数据库或其他外部系统中的数据所需的功能和信息。
数据处理的最关键方面之一是管理元数据。它可能是临时元数据,例如临时表,或者是针对表环境注册的 UDF。或永久性元数据,例如Hive Metastore 中的元数据。Catalogs 提供了一个统一的API,用于管理元数据并使其可从 Table API 和 SQL 查询访问。
Catalogs类型
GenericInMemory Catalog
Flink会话始终具有一个名为default_catalog的内置GenericInMemoryCatalog,它具有一个名为default_database的内置默认数据库。 所有临时元数据(例如使用TableEnvironment#registerTable定义的表)均已注册到此目录。
Hive Catalog
HiveCatalog 有两个作用: 作为纯Flink元数据的持久存储,以及作为读写现有Hive元数据的接口。 Flink的Hive文档提供了有关设置 catalog 以及与现有Hive安装接口的完整详细信息。
警告: Hive Metastore以小写形式存储所有元对象名称。这与GenericInMemoryCatalog区分大小写不同。
用户定义的 Catalog
Catalog 是可插入的,用户可以通过实现Catalog接口来开发自定义 Catalog。 要在SQL CLI中使用自定义 Catalog,用户应通过实现CatalogFactory接口来开发 Catalog 及其相应的 CatalogFactory。
catalog factory 定义了一组属性,用于在 SQL CLI 引导时配置 catalog 。 属性集将传递给发现服务,在该服务中,服务将尝试将这些属性与CatalogFactory匹配并启动相应的 catalog 实例。
Catalog API
注册Catalog
用户可以将其他 Catalog 注册到现有的Flink会话中。
tableEnv.registerCatalog(new CustomCatalog("myCatalog"));
更改当前 Catalog 和数据库
Flink将始终在当前 Catalog 和数据库中搜索表,视图和UDF。
tableEnv.useCatalog("myCatalog");
tableEnv.useDatabase("myDb");
通过以catalog.database.object形式提供标准名称,可以访问不是当前 catalog 中的元数据。
tableEnv.scan("not_the_current_catalog", "not_the_current_db", "my_table");
列出可用 Catalog
tableEnv.listCatalogs();
列出可用的数据库
tableEnv.listDatabases();
列出可用表
tableEnv.listTables();
欢迎关注Flink菜鸟公众号,会不定期更新Flink(开发技术)相关的推文

【翻译】Flink Table Api & SQL — Catalog Beta 版的更多相关文章
- 【翻译】Flink Table Api & SQL — Hive Beta
本文翻译自官网:Hive Beta https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/table/hive/ Flink ...
- Flink Table Api & SQL 翻译目录
Flink 官网 Table Api & SQL 相关文档的翻译终于完成,这里整理一个安装官网目录顺序一样的目录 [翻译]Flink Table Api & SQL —— Overv ...
- 【翻译】Flink Table Api & SQL — SQL客户端Beta 版
本文翻译自官网:SQL Client Beta https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/table/sqlCl ...
- 【翻译】Flink Table Api & SQL —Streaming 概念 —— 表中的模式匹配 Beta版
本文翻译自官网:Detecting Patterns in Tables Beta https://ci.apache.org/projects/flink/flink-docs-release-1 ...
- 【翻译】Flink Table Api & SQL —— 数据类型
本文翻译自官网:https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/table/types.html Flink Table ...
- 【翻译】Flink Table Api & SQL — Hive —— 在 scala shell 中使用 Hive 连接器
本文翻译自官网:Use Hive connector in scala shell https://ci.apache.org/projects/flink/flink-docs-release-1 ...
- 【翻译】Flink Table Api & SQL — Hive —— Hive 函数
本文翻译自官网:Hive Functions https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/table/hive/h ...
- 【翻译】Flink Table Api & SQL — Hive —— 读写 Hive 表
本文翻译自官网:Reading & Writing Hive Tables https://ci.apache.org/projects/flink/flink-docs-release-1 ...
- 【翻译】Flink Table Api & SQL —— 概念与通用API
本文翻译自官网:https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/table/common.html Flink Tabl ...
随机推荐
- web页面死链测试方法
一.概述 > 来自百度百科释义 死链:指服务器的地址已经改变了.无法找到当前地址位置,包括协议死链和内容死链两种形式.死链出现的原因有网站服务器设置错误:某文件夹名称修改,路径错误链接变成死链等 ...
- python的pandas库读取csv
首先建立test.csv原始数据,内容如下 时间,地点 一月,北京 二月,上海 三月,广东 四月,深圳 五月,河南 六月,郑州 七月,新密 八月,大连 九月,盘锦 十月,沈阳 十一月,武汉 十二月,南 ...
- MySQL数据的优化方案
一.选取最使用的字段属性 mysql可以使用的支持大数据量的存取,但是一般说来,数据库中的表越小,在它上面执行的查询也就会越快,因此在创建表的时候,为了获得更好的性能,我们可以将表中的字段的宽度尽量设 ...
- web scraper——爬取知乎|微博用户数据模板【三】
前言 在这里呢,我就只给模板,不写具体的教程啦,具体的可以参考我之前写的博文. https://www.cnblogs.com/wangyang0210/p/10338574.html 模板 进入微博 ...
- 8-html表格
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http ...
- 小a与军团模拟器
题目描述 9102 年伊始,小a觉得山羊模拟器,乞丐模拟器之类的都太低级了,所以想自己建立一个征战天下的军团模拟器. 军团模拟器是在一个城市数为N的国家中运行的,每个城市都会通过一些道路和其他所有城市 ...
- 【NOIP2015】斗地主 D1 T3 及 增强版 (送命题)
恶心送命模拟题 暴搜顺子,DP预处理剩下的. 由于官方数据太水,很多情况没有讨论的都能过普通版本,想要测试自己代码正确性的同学们可以交交这道题,有很多dalao给出了hack数据 : Luogu P2 ...
- 过滤器的API
1.API a.生命周期(和servletcontext相似): (1)创建:服务器启动的时候创建(执行init方法). (2)销毁:服务器关闭的时候销毁(执行destory方法). b.filter ...
- Matlab下的文件执行路径
Matlab下有时命令出错,源于Command窗口的路径不正确.快捷键的执行会受此影响.
- (11)Go方法/接收者
方法和接收者 Go语言中的方法(Method)是一种作用于特定类型变量的函数.这种特定类型变量叫做接收者(Receiver).接收者的概念就类似于其他语言中的this或者 self. 方法的定义格式如 ...