dbt doc 生成文档命令示例应用

DBT提供了强大的命令行工具,它使数据分析师和工程师能够更有效地转换仓库中的数据。dbt的一个关键特性是能够为数据模型生成文档,这就是dbt docs命令发挥作用的地方。本教程将指导您完成使用dbt生成和提供项目文档的过程。

dbt doc 命令

dbt docs命令有两个子命令:generate和serve。generate命令用于创建项目文档,而serve命令用于在web浏览器中查看此文档。

  • 生成工程文档

要为dbt项目生成文档,在终端中导航到dbt项目的根目录,并运行以下命令:

dbt docs generate

该命令将为您的项目创建一个带有文档的静态站点。该站点包括关于您的模型、测试、源代码等的信息。

  • 项目文档服务

生成文档之后,您可以使用serve命令在本地查看它。在终端上运行以下命令:

dbt docs serve

这将启动web服务器实例,并在默认的web浏览器中打开文档。我们可以浏览文档以查看有关dbt项目的信息。

  1. 浏览文档

生成的文档提供了关于dbt项目的大量信息。您可以使用project /Database切换在项目文件夹层次结构视图和以数据库为中心的表和视图集合之间切换。您还可以使用搜索栏来查找项目中的特定模型。

  1. 数据血缘关系

dbt文档的强大特性是它能够可视化模型之间的关系。我们可以通过点击模型页面中的“Lineage”选项卡来访问这个特性。这将显示所选模型的上游或下游的所有模型的图表,提供数据沿沿性的清晰视图。
在这里插入图片描述

dbt docs 示例

假设我们dbt项目有一个简单的模型,可以将原始销售数据转换为更有用的格式。模型定义了名为sales.sql的文件中:

-- models/sales.sql
{{ config(materialized='table') }}select    order_id,    product_id,    customer_id,    quantity,    price,    quantity * price as total_price,    order_datefrom raw.sales

同时定义模型的描述文件,sales.yaml:

# models/schema.yml
version: 2models:  - name: sales    description: This table contains transformed sales data.    columns:      - name: order_id        description: The unique identifier for each order.      - name: product_id        description: The unique identifier for each product.      - name: customer_id        description: The unique identifier for each customer.      - name: quantity        description: The quantity of the product sold in the order.      - name: price        description: The price of the product.      - name: total_price        description: The total price of the order, calculated as quantity * price.      - name: order_date        description: The date the order was placed.

这里只是示例,当然可以使用中文,更符合用户习惯。

现在可以使用dbt docs generate为这个模型生成文档。在命令行界面中导航到dbt项目根目录并运行生成文档命令:

dbt docs generate

该命令将在dbt项目中生成**target目录。在这个目录中,可以找到manifest.jsoncatalog.json**文件。这些文件包含有关dbt项目的元数据,基于这些元数据能生成文档web网页。

接下来,我们可以使用dbt docs serve在本地启动文档服务:

dbt docs serve

该命令将启动一个web服务器,并打开文档默认web浏览器。在这里可以看到sales模型的文档页面,其中包含在sales.yaml描述文件中定义的所有列描述和其他信息。

总结

dbt docs命令是为dbt项目生成和提供文档的强大工具。通过使用这个命令,我们可以确保团队和其他相关人员能够访问数据模型的最新的、准确的文档信息。期待您的真诚反馈,更多内容请阅读数据分析工程专栏。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/445742.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【C++】map和set的介绍以及用法

个人主页 文章目录 ⭐一、系列式容器和关联式容器🚀二、set的使用1. set类的介绍2. set的构造3. set的迭代器4. set的常用函数 🎡三、multiset🎄四、map类的使用1. map类的介绍2. map的构造3. map的迭代器4. map的operator[]5. map的常用函数…

git删除错误的commit

文章目录 1、git删除错误的commit2、.gitignore配置文件不生效的问题 1、git删除错误的commit git的流程如图: 当某次失误造成commit的版本有问题,需要回退到正常的版本修改后重新add。 首先通过git log查看commit提交记录,可以看到HEAD-…

【在Linux世界中追寻伟大的One Piece】信号捕捉|阻塞信号

目录 1 -> 信号捕捉初识 2 -> 阻塞信号 2.1 -> 信号其他相关常见概念 2.2 -> 在内核中的表示 2.3 -> sigset_t 2.4 -> 信号集操作函数 2.5 -> sigprocmask 2.6 -> sigpending 3 -> 捕捉信号 3.1 -> 内核如何实现信号的捕捉 3.2 ->…

在Spring Boot中具有多个实现的接口正确注入的六种方式

​ 博客主页: 南来_北往 系列专栏:Spring Boot实战 在Spring Boot中,当一个接口具有多个实现时,正确地将这些实现注入到需要使用它们的地方是一个常见的需求。以下是在Spring Boot中实现这一目标的六种方式: 1. 使用Autowir…

Apple A18 和 A18 Pro 的裸晶照揭示出兩款處理器有著不同的設計

向來蘋果在發布使用新晶片的設備後,就會有人為新晶片進行詳細剖析,看看蘋果在新處理器上面又使用了什麼新技術。如今 iPhone 16 系列已經推出, Apple A18 和A18 Pro 兩款處理器自然也成為了研究對象。最近就有機構將 Apple A18 和 A18 Pro 兩…

雷池社区版本SYSlog使用教程

雷池会对恶意攻击进行拦截,但是日志都在雷池机器上显示 如何把日志都同步到相关设备进行统一的管理和分析呢? 如需将雷池攻击日志实时同步到第三方服务器, 可使用雷池的 Syslog 外发 功能 启用 Syslog 外发 进入雷池 系统设置 页面, 配置 Syslog 设置…

Miniconda更改虚拟环境创建路径

Miniconda更改虚拟环境创建路径 文章目录 Miniconda更改虚拟环境创建路径前言步骤一 修改配置文件步骤二 提升路径访问权限步骤三 测试配置修改是否生效 前言 在我使用 conda 命令创建新的虚拟环境时,发现创建好的虚拟环境存放路径是在 ../miniconda3/pkgs/ 路径下…

Python 在Excel中添加数据条

在Excel中添加数据条是一种数据可视化技巧,它通过条形图的形式在单元格内直观展示数值的大小,尤其适合比较同一列或行中各个单元格的数值。这种表示方式可以让大量的数字信息一目了然。本文将介绍如何使用Python在Excel中的指定单元格区域添加数据条。 …

Android:记录一个打包发布版的release包以后闪退的问题

个人感觉其实release闪退的问题挺难排查的,因为release包运行起来as捕获不到相应的应用程序进程,从而不易查看到日志,也是我玩得不溜,大家有不同的方法可以评论区探讨,我也定期回复一些评论一起讨论。以下是我遇到的情…

计算机毕业设计 基于Hadoop的智慧校园数据共享平台的设计与实现 Python毕业设计 Python毕业设计选题 Spark 大数据【附源码+安装调试】

博主介绍:✌从事软件开发10年之余,专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ 🍅文末获取源码联系🍅 👇🏻 精…

出海电商新怎样用海外云手机引流?

随着互联网行业的迅猛发展,出海电商、海外社交媒体营销以及游戏产业等领域对技术工具的需求不断增加。在这种趋势下,海外云手机作为一种新型解决方案,正在受到广泛关注。 特别是在出海电商中,平台如亚马逊、速卖通、eBay等通过结合…

MLCC贴片电容不同材质区别:【及电容工作原理】

贴片电容的材质常规有:NPO(COG),X7R,X5R,Y5V 等,主要区别是它们的填充介质不同。在相同的体积下由于填充介质不同所组成的电容器的容量就不同,随之带来的电容器的介质损耗、容量稳定…

GS-LRM: Large Reconstruction Modelfor 3D Gaussian Splatting 论文解读

目录 一、概述 二、相关工作 1、多视图的三维重建 2、前馈重建 三、LRM 1、编码器 2、解码器 3、NeRF渲染 四、GS-LRM 1、输入处理 2、Transformer 3、损失函数 五、实验 六、局限 一、概述 该论文提出了一种利用稀疏输入图像高效预测3D高斯原语的方法&#xff…

鸿蒙--WaterFlow 实现商城首页

目录结构 ├──entry/src/main/ets // 代码区 │ ├──common │ │ ├──constants │ │ │ └──CommonConstants.ets // 公共常量类 │ │ └──utils │ │ └──Logger.ets // 日志打印类 │ ├──entryability │ │ └──EntryAbility.ets // 程序入口…

基于Python Django的在线考试管理系统

🍊作者:计算机毕设匠心工作室 🍊简介:毕业后就一直专业从事计算机软件程序开发,至今也有8年工作经验。擅长Java、Python、微信小程序、安卓、大数据、PHP、.NET|C#、Golang等。 擅长:按照需求定制化开发项目…

2013年国赛高教杯数学建模C题古塔的变形解题全过程文档及程序

2013年国赛高教杯数学建模 C题 古塔的变形 由于长时间承受自重、气温、风力等各种作用,偶然还要受地震、飓风的影响,古塔会产生各种变形,诸如倾斜、弯曲、扭曲等。为保护古塔,文物部门需适时对古塔进行观测,了解各种变…

AI测试之 TestGPT

如今最火热的技术莫非OpenAI的ChatGPT莫属,AI技术也在很多方面得到广泛应用。今天我们要介绍的TestGPT就是一个软件测试领域中当红的应用。 TestGPT是什么? TestGPT是一家总部位于以色列特拉维夫的初创公司 CodiumAI Ltd.,发布的一款用于测…

Flutter Transform 学习

Transform可以在其子组件绘制时对其应用一些矩阵变换来实现一些特效,允许在渲染子部件之前对它们进行变换。 一、Transform构造函数与属性 class Transform extends SingleChildRenderObjectWidget {/// Creates a widget that transforms its child.const Transform({super.k…

231水果滑块喜+1

有需求可以联系博主 let v Died_in2021

飞机大战ai通过dqn实现

借鉴 飞机大战源码 github 王者荣耀ai训练(试了一下,发现电脑带不动,就改了一点,训练其他游戏) 源码 通过网盘分享的文件:PlaneWar (2).zip [链接](https://pan.baidu.com/s/1N4OorR7b36Zml8MadGmI6g?pwd1234&#xf…