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

配置DBT连接DLI进行数据调度和分析

DBT(Data Build Tool),是一款开源的数据建模和转换工具,运行在Python环境上。DBT连接DLI,用来定义和执行SQL转换,支持从数据集成、转换到分析的整个数据生命周期管理,适用于大规模数据分析项目和复杂的数据分析场景。

本节操作介绍DBT连接DLI的操作步骤。

操作前准备

  • 环境要求

    确保您的系统环境满足以下要求。

    • 操作系统:Windows 或 Linux
    • DBT是一个基于Python的工具,请确保已安装了Python。

      Python 版本:Python 3.8 或更高版本,推荐使用 Python 3.8

  • 获取dli-dbt驱动包:

    在“DLI SDK DOWNLOAD”页面,单击驱动包链接,下载对应版本的驱动包。

  • 连接信息:

    类别

    说明

    获取方式

    DLI AKSK

    AK/SK认证就是使用AK/SK对请求进行签名,从而通过身份认证。

    获取AK/SK

    DLI Endpoint地址

    地区与终端节点,即云服务在不同Region有不同的访问域名。

    获取EndPoint

    DLI所在的项目ID

    项目编号,用于资源隔离。

    获取项目ID

    DLI区域信息

    DLI所属区域信息

    地区和终端节点

步骤1:部署DBT环境

  1. 安装dbt-core

    使用pip安装建议版本的dbt-core:

    pip install dbt-core==1.7.9

    pip是Python的包管理工具,通常与Python一起安装。

    如果尚未安装pip,可以通过Python内置的ensurepip模块安装:

    python -m ensurepip

  2. 安装dli-sdk-python

    执行安装命令:

    python setup.py install
  3. 安装dli-dbt

    从DLI管理控制台下载dli-dbt驱动。

    执行安装命令:

    python setup.py install

    安装完成后,可以通过运行以下命令来验证dbt是否正确安装:

    dbt --version

步骤2:配置DBT连接DLI

配置profiles.yml文件用于保存DBT与DLI的连接信息。

在安装DBT的服务器的主目录下找到 .dbt 目录,创建或编辑 profiles.yml 文件。

例如,在Windows系统中,路径可能是 C:\Users\用户名\.dbt\profiles.yml。

配置文件内容应包含DBT与DLI的连接配置,例如:

profiles:
  - name: dbt_dli
    target: dev
    outputs:
      dev:
        type: dli
        region: your-region-name
        project_id: your-project_id
        access_id:your-ak
        secret_key:your-sk
        queue:your-queue-name
        database: your-dli-database
        schema: your-dli-schema
表1 DBT连接DLI参数说明

参数

是否必选

说明

配置样例

type

数据源类型,本例配置为dli。

dli

region

DLI的区域名称和服务名称。

ap-southeast-2

project_id

DLI资源所在的项目ID。

获取项目ID

0b33ea2a7e0010802fe4c009bb05076d

access_id和secret_key

AK/SK认证密钥。

-

queue

DLI服务的队列名称。

dli_test

database

数据目录名称。默认使用dli数据目录。

如果使用Lakeformation元数据,填写具体的数据目录名称。

dli

schema

提交作业使用的DLI的数据库名称。

tpch

步骤3:测试使用DBT提交作业至DLI

  1. 初始化DBT项目

    在空目录下执行以下命令以初始化DBT项目:

    dbt init
  2. 配置dbt_project.yml文件

    在项目根目录下创建或编辑 dbt_project.yml文件。

    参考dbt_project.yml配置项目。

    确保步骤2:配置DBT连接DLIprofile文件中已设置该项目的profiles.yml中定义的数据源名称。

    图1 profile文件
    图2 dbt_project.yml文件中配置的profile
  3. 验证配置

    执行以下命令测试DBT配置是否正确:

    dbt debug
  4. 执行项目作业
    测试通过后执行以下命令来执行您的数据模型。
    dbt run

相关文档