文档首页/ 数智融合计算服务 DataArtsFabric/ 最佳实践/ 使用DataArtsFabric SQL进行数据查询
更新时间:2025-07-08 GMT+08:00
分享

使用DataArtsFabric SQL进行数据查询

场景描述

DataArtsFabric全新推出云原生Serverless版本DataArtsFabric SQL,利用云基础设施提供的资源池化和海量存储能力,结合并行执行、元数据解耦、计算持久化分离架构,实现了极致弹性和湖仓一体等特性。

本文介绍如何快速使用DataArtsFabric SQL并完成简单的数据查询。

前提条件

  • 已注册账号并实名认证,且账号不能处于欠费或冻结状态。
  • 已开通LakeFormation、OBS权限并进行了委托确认。
  • 已存在可使用的工作空间。

步骤一:规划并创建OBS桶并导入数据

DataArtsFabric SQL通过OBS服务实现数据存储,需要先在OBS控制台进行桶及文件夹创建,并导入样例数据。

  1. 登录管理控制台。
  2. 在页面左上角单击图标,选择“存储 > 对象存储服务”,进入对象存储服务页面。
  3. 以并行文件系统为例:
    选择“并行文件系统 > 创建并行文件系统”,进入创建页面,配置相关参数后单击“立即创建”。
    • 文件系统名称:根据界面要求设置并行文件系统名称,例如“fabric-serverless”。
    • 其他参数根据实际情况选择。
  4. 在并行文件系统页面,单击已创建的文件系统名称,例如“fabric-serverless”。
  5. 在左侧导航栏选择“文件”,单击“新建文件夹”,填写待创建的文件夹名称,单击“确定”。继续单击该文件夹名称,单击“新建文件夹”,可以创建其子文件夹。
  6. 参考该步骤,依次创建用于存放元数据的路径,例如:
    • Catalog存储路径:fabric-serverless/catalog1
    • 数据库存储路径:fabric-serverless/catalog1/database1
    • 数据表存储路径:fabric-serverless/catalog1/database1/table1

步骤二:规划并创建Lakeformation实例、Catalog、数据库

DataArtsFabric SQL通过LakeFormation服务管理数据源,需要在LakeFormation购买实例,并配置该实例的Catalog、数据库、表信息。

  1. 登录管理控制台。
  2. 在页面左上角单击,选择“大数据 > 湖仓构建 DataArts Lake Formation”,进入LakeFormation页面。
  3. 在“总览”购买实例。
  4. 左上角选择切换到该实例。
    图1 切换目标实例
  5. 创建Catalog。
    1. 在左侧导航栏选择“元数据 > Catalog”。
    2. 单击“创建Catalog”,配置以下参数后,单击“提交”。
      • Catalog名称:catalog1
      • 选择位置:单击“”,选择存储位置,例如选择“obs://fabric-serverless/catalog1”,单击“确定”。
      • Catalog类型:DEFAULT
      • 其他参数保持默认。
    3. 创建完成后,即可在“Catalog”页面查看相关信息。
  6. 创建数据库。
    1. 在左侧导航栏选择“元数据 > 数据库”。
    2. 在右上角“Catalog”后的下拉框中选择“catalog1”。

      如果当前已包含名称为“default”的数据库,则跳过数据库的创建操作。

    3. 单击“创建数据库”,配置相关参数后,单击“提交”。
      • 库名称:database1
      • 所属Catalog:catalog1
      • 选择位置:单击“”,选择位置,例如选择“obs://fabric-serverless/catalog1/database1”,单击“确定”。
      • 其他参数保持默认。
    4. 创建完成后,即可在“数据库”页面查看详细信息。

步骤三:使用DataArtsFabric SQL

  1. 登录华为云DataArtsFabric控制台,选择进入工作空间。
  2. 左侧选择开发与生产 > SQL编辑器,选择LakeFormation实例、LakeFormation Catalog。
  3. 选择SQL端点,运行SQL。
     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    CREATE TABLE
      database1.iceberg_table (
        col_id INT,
        col_tinyint SMALLINT,
        col_smallint SMALLINT,
        col_int INTEGER,
        col_bigint BIGINT
      ) store AS iceberg;
    
    SELECT * FROM database1.iceberg_table;
    
    图2 运行SQL

相关文档