更新时间:2024-01-12 GMT+08:00
分享

概述

多源数据目录(Multi-Catalog)是Doris 1.2.0版本中推出的功能,旨在能够更方便对接外部数据目录,以增强Doris的数据湖分析和联邦数据查询能力。

在之前的Doris版本中,用户数据只有两个层级:Database和Table。当我们需要连接一个外部数据目录时,我们只能在Database或Table层级进行对接。比如通过create external table的方式创建一个外部数据目录中的表的映射,或通过create external database的方式映射一个外部数据目录中的Database。 如果外部数据目录中的Database或Table非常多,则需要用户手动进行一一映射,使用体验不佳。

而新的Multi-Catalog功能在原有的元数据层级上,新增一层Catalog,构成Catalog->Database->Table的三层元数据层级。其中,Catalog可以直接对应到外部数据目录。目前支持的外部数据目录包括:

  1. Hive
  2. JDBC: 对接数据库访问的标准接口(JDBC)来访问各式数据库的数据。

该功能将作为之前外表连接方式(External Table)的补充和增强,帮助用户进行快速的多数据目录联邦查询。

基础概念

  1. Internal Catalog

    Doris原有的Database和Table都将归属于Internal Catalog。Internal Catalog是内置的默认Catalog,用户不可修改或删除。

  2. External Catalog

    可以通过CREATE CATALOG命令创建一个External Catalog。创建后,可以通过SHOW CATALOGS命令查看已创建的Catalog。

  3. 切换Catalog

    用户登录Doris后,默认进入Internal Catalog,因此默认的使用和之前版本并无差别,可以直接使用SHOW DATABASES,USE DB等命令查看和切换数据库。

    用户可以通过SWITCH命令切换Catalog。如:

    SWITCH internal;
    SWITCH hive_catalog;

    切换后,可以直接通过SHOW DATABASES,USE DB等命令查看和切换对应Catalog中的Database。Doris会自动通过Catalog中的Database和Table。用户可以像使用Internal Catalog一样,对External Catalog中的数据进行查看和访问。

    当前,Doris只支持对 External Catalog中的数据进行只读访问。

  4. 删除Catalog

    External Catalog中的Database和Table都是只读的。但是可以删除Catalog(Internal Catalog无法删除)。可以通过DROP CATALOG命令删除一个External Catalog。

    该操作仅会删除Doris中该Catalog的映射信息,并不会修改或变更任何外部数据目录的内容。

  5. Resource

    Resource是一组配置的集合。用户可以通过CREATE RESOURCE命令创建一个Resource。之后可以在创建Catalog时使用这个Resource。

    一个Resource可以被多个Catalog使用,以复用其中的配置。

分享:

    相关文档

    相关产品