本文翻译自官网:Catalogs Beta  https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/table/catalogs.html

Flink Table Api & SQL 翻译目录

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 版的更多相关文章

  1. 【翻译】Flink Table Api & SQL — Hive Beta

    本文翻译自官网:Hive Beta https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/table/hive/ Flink ...

  2. Flink Table Api & SQL 翻译目录

    Flink 官网 Table Api & SQL  相关文档的翻译终于完成,这里整理一个安装官网目录顺序一样的目录 [翻译]Flink Table Api & SQL —— Overv ...

  3. 【翻译】Flink Table Api & SQL — SQL客户端Beta 版

    本文翻译自官网:SQL Client Beta  https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/table/sqlCl ...

  4. 【翻译】Flink Table Api & SQL —Streaming 概念 —— 表中的模式匹配 Beta版

    本文翻译自官网:Detecting Patterns in Tables Beta  https://ci.apache.org/projects/flink/flink-docs-release-1 ...

  5. 【翻译】Flink Table Api & SQL —— 数据类型

    本文翻译自官网:https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/table/types.html Flink Table ...

  6. 【翻译】Flink Table Api & SQL — Hive —— 在 scala shell 中使用 Hive 连接器

    本文翻译自官网:Use Hive connector in scala shell  https://ci.apache.org/projects/flink/flink-docs-release-1 ...

  7. 【翻译】Flink Table Api & SQL — Hive —— Hive 函数

    本文翻译自官网:Hive Functions  https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/table/hive/h ...

  8. 【翻译】Flink Table Api & SQL — Hive —— 读写 Hive 表

    本文翻译自官网:Reading & Writing Hive Tables  https://ci.apache.org/projects/flink/flink-docs-release-1 ...

  9. 【翻译】Flink Table Api & SQL —— 概念与通用API

    本文翻译自官网:https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/table/common.html Flink Tabl ...

随机推荐

  1. 【转载】.Net 大型分布式基础服务架构横向演变概述

    原文:https://www.cnblogs.com/chejiangyi/p/5220217.html 一. 业务背景 构建具备高可用,高扩展性,高性能,能承载高并发,大流量的分布式电子商务平台,支 ...

  2. SpringCloud2.0 Hystrix Ribbon 基于Ribbon实现断路器 基础教程(六)

    1.启动[服务中心]集群,工程名:springcloud-eureka-server 参考 SpringCloud2.0 Eureka Server 服务中心 基础教程(二) 2.启动[服务提供者]集 ...

  3. Unity进阶之:MVC编程思想

    版权声明: 本文原创发布于博客园"优梦创客"的博客空间(网址:http://www.cnblogs.com/raymondking123/)以及微信公众号"优梦创客&qu ...

  4. Python 通过lxml 解析html页面自动组合xpath实例

    #coding:utf-8 ''' @author: li.liu ''' from selenium import webdriver from selenium.webdriver.common. ...

  5. BZOJ1499: 瑰丽华尔兹(单调队列)

    pro: 给出一个n*m的地图,刚开始人在(x,y),每次给出一段区间(l,r,t),表示在时间[l,r]内,可以使人向4个方向(t)移动一格,或者不动.求最大可以移动多少格. sol: 考虑每一列( ...

  6. SparkSQL读写外部数据源-jext文件和table数据源的读写

    object ParquetFileTest { def main(args: Array[String]): Unit = { val spark = SparkSession .builder() ...

  7. django-用户认证模型

    django本身会在mysql里存储一个user数据库 为了和django本身的user表区分 要在第一次迁移数据库前配置认证系统使用的用户模型 settings.py # django认证系统使用的 ...

  8. ActiveMQ基础

    消息队列的作用 为什么使用ActiveMQ,不使用其他工具 下载安装包并启动 http://localhost:8161/admin/ (账号:admin:admin) Java实现步骤: // 1. ...

  9. JS优化常用片断

    防抖debounce装饰器 在事件被触发n秒后再执行回调,如果在这n秒内又被触发,则重新计时. function debounce(func, delay) { let isCooldown = fa ...

  10. A - Happy Birthday, Polycarp!

    Codeforces Round #606 (Div. 2, based on Technocup 2020 Elimination Round 4) A. Happy Birthday, Polyc ...