使用DLF元数据

E-MapReduce(简称EMR)的EMR-5.8.0及之后版本的集群(对应StarRocks 2.3及之后的版本)支持查询元数据类型为DLF的外表。本文通过示例为您介绍如何访问DLF的外部表。

前提条件

已创建EMR-5.8.0及之后版本的数据分析(OLAP)或自定义场景(Custom)的集群,且选择了StarRocks服务,详情请参见创建集群

注意事项

本文仅适用于Hive、Hudi、Iceberg和Delta Lake数据源。

操作步骤

  1. 使用SSH方式登录StarRocks集群,详情请参见登录集群

  2. 执行以下命令,连接StarRocks集群。

    mysql -h127.0.0.1 -P 9030 -uroot
  3. 执行以下命令,创建External Catalog。

    本文以Hive数据源为例。

    CREATE EXTERNAL CATALOG hive_catalog
    properties
    (
        "type" = "hive",
        "hive.metastore.type" = "DLF"
    );

    参数

    是否必选

    说明

    type

    数据源的类型。支持的数据源类型有hive、hudi、iceberg、deltalake。

    dlf.catalog.id

    待读取的DLF Catalog ID。如果不添加该配置,则使用默认DLF Catalog。

    hive.metastore.type

    配置MetaStore类型。固定值为DLF。

  4. 查询数据。

    • 通过SHOW DATABASES查看指定Catalog下的数据库。

      SHOW DATABASES FROM hive_catalog;
    • 指定当前会话生效的数据库

      USE hive_catalog.default;
    • 通过SELECT查询目标表。

      SELECT * FROM <table_name>;

相关文档

如果使用Hive MetaStore,请参见Hive数据源Iceberg数据源Hudi数据源Delta Lake数据源