随笔分类 -  dbt

上一页 1 2 3 4 5 6 ··· 8 下一页

dbt dbt_utils 包中的pivot简单说明
摘要:dbt-utils 中的pivot macro 实际上就是实现了我们平时会碰到的一些sql 行转列问题 dbt-utils pivot实现处理 行转列的方法很多有基于case 判断的,也有直接使用数据库提供的pivot 函数的,dbt 使用了case 模式 参考实现 {% macro pivot(c 阅读全文

posted @ 2024-05-31 08:00 荣锋亮 阅读(23) 评论(0) 推荐(0) 编辑

dbt dbt-codegen 包简单说明
摘要:dbt-codegen 是一个比较方便的dbt 工具包,可以用来生成模型 目前包含的macro generate_source source 类的 生成source 信息,实际上就是生成source 的yaml 文件 参考运行命令 cli 模式,就是通过run-operation 执行macro d 阅读全文

posted @ 2024-05-28 08:00 荣锋亮 阅读(32) 评论(0) 推荐(0) 编辑

dbt var 简单说明
摘要:dbt 的var 可以进行变量的定义以及变量的引用,以下简单说明下 参考使用 引用定义的 参考定义 name: my_dbt_project version: 1.0.0 config-version: 2 # Define variables here vars: event_type: acti 阅读全文

posted @ 2024-05-24 08:00 荣锋亮 阅读(26) 评论(0) 推荐(0) 编辑

dbt get_materialized_view_configuration_changes 简单说明
摘要:dbt 的get_materialized_view_configuration_changes 实际上是属于 on_configuration_change 相关的处理,目前一些实现主要是处理 物化视图的,以下说明下内部实现 内部处理 默认实现 dbt-adapter 中,实际为空 {% macr 阅读全文

posted @ 2024-05-23 07:02 荣锋亮 阅读(12) 评论(0) 推荐(0) 编辑

dbt sql_header 简单说明
摘要:dbt 有一个query_heder 也有一个sql_header,与pre_hooks 有类似的能力,但是sql_header 是与sql 的create table as 以及create view as 是一起执行的,而且是在之前的 参考使用 模型定义 {{ config( sql_heade 阅读全文

posted @ 2024-05-22 08:00 荣锋亮 阅读(12) 评论(0) 推荐(0) 编辑

dbt adapter get_incremental_strategy_macro 简单说明
摘要:dbt adapter 的get_incremental_strategy_macro 核心获取增量策略的macro 名称,可以参考我以前写的一些 使用 目前就是应用在dbt 的增量场景中 增量参考使用 {% set incremental_strategy = config.get('increm 阅读全文

posted @ 2024-05-21 08:00 荣锋亮 阅读(5) 评论(0) 推荐(0) 编辑

dbt adapter expand_target_column_types 简单说明
摘要:adapter expand_target_column_types 核心作用是进行关系的展开对比,确定我们的模型是否需要进行提升(实际上就是数据类型变动) 此功能目前在dbt 的快照以及增量物化场景中使用到 参考使用 简单示例 {% set tmp_relation = adapter.get_r 阅读全文

posted @ 2024-05-20 07:31 荣锋亮 阅读(14) 评论(0) 推荐(0) 编辑

dbt adapter 的get_relation 简单说明
摘要:dbt 的adapter.get_relation 可以方便的获取存在的relation 信息,以下是一个简单说明 参考实现 内部处理 @available.parse_none def get_relation(self, database: str, schema: str, identifie 阅读全文

posted @ 2024-05-19 08:00 荣锋亮 阅读(13) 评论(0) 推荐(0) 编辑

dbt Relation check_schema_exists 一个有意思的功能
摘要:dbt 内部总有一些隐藏的小细节,官方文档没有说明,但是在一些adapter 实现中包含,一些是关于check_schema_exists 的一些说明 内部处理 dbt/adapters/sql/impl.py def check_schema_exists(self, database: str, 阅读全文

posted @ 2024-05-18 06:07 荣锋亮 阅读(8) 评论(0) 推荐(0) 编辑

dbt model 对象简单说明
摘要:dbt model 属于graph 对象,实际上就是一个node 节点,包含了当前模型的一些信息 主要场景 访问config 设置 访问模型的路径 参考使用 查看模型内容 可以通过log macro {{ log(model, info=True) }} 内部实现 实际上就是context 属性信息 阅读全文

posted @ 2024-05-17 06:26 荣锋亮 阅读(18) 评论(0) 推荐(0) 编辑

dbt 单元测试简单说明
摘要:dbt 对于测试的支持包含了数据测试以及单元测试, 数据测试可以保证表的质量,但是单元测试可以确保模型的业务一致性 简单说明 当前只支持模型的 只支持当前项目的单元测试 除非声明多版本也会进行测试 单元测试只能在models 目录下 yaml 格式的 如果希望依赖ephemeral 模型需要配置fo 阅读全文

posted @ 2024-05-16 06:42 荣锋亮 阅读(34) 评论(0) 推荐(0) 编辑

dbt render macro 简单说明
摘要:dbt render macro 官方文档并没有说明,但是在一些三方adapter 中发现有使用到简单说明下 参考使用 {% materialization external, adapter="duckdb", supported_languages=['sql', 'python'] %} {% 阅读全文

posted @ 2024-05-14 08:00 荣锋亮 阅读(11) 评论(0) 推荐(0) 编辑

dbt 默认snapshot snapshot_staging_table 处理简单说明
摘要:dbt 默认snapshot 的处理使用了 snapshot_staging_table 中间表,了解内部处理有利于学习快照处理技术 macro 定义 内部的处理实际上就是对于已经存在的快照表数据与目前需要进行快照的查询数据进行比较,会处理添加的,删除的,以及交集数据,dbt 使用了自己的支持key 阅读全文

posted @ 2024-05-13 00:30 荣锋亮 阅读(16) 评论(0) 推荐(0) 编辑

dbt config macro 简单说明
摘要:dbt 不少资源类型都支持config macro 的使用,可以进行灵活的配置管理 参考使用 配置 模型的执行物化策略 {{ config( materialized="<materialization_name>", sql_header="<string>" ) }} 快照的 {{ config 阅读全文

posted @ 2024-05-12 06:51 荣锋亮 阅读(21) 评论(0) 推荐(0) 编辑

dbt snapshot 处理简单说明
摘要:dbt 的snapshot 实际上也是一种物化处理,支持与test,docs,稍有不同就是dbt 没定义独立的block 扩展,以下是一个简单说明 dbt 目前默认的snapshot是基于了scd2 模型 使用 包含了配置以及snapshot 定义,配置支持dbt_project 项目级以及独立sn 阅读全文

posted @ 2024-05-11 08:00 荣锋亮 阅读(33) 评论(0) 推荐(0) 编辑

dbt dbt_external_tables 包简单说明
摘要:dbt dbt_external_tables 提供了在source 中使用外部table 的能力,主要面向的一些支持外表能力的数据仓库 因为dbt 已经支持了对于external配置属性的解析,dbt-external-tables 包核心就是对于包含属性的进行处理 比如创建table,schem 阅读全文

posted @ 2024-05-10 19:37 荣锋亮 阅读(18) 评论(0) 推荐(0) 编辑

dbt fromyaml 上下文方法简单说明
摘要:fromyaml 上下文方法可以用来加载yaml 内容,属于一个工具类,比如automate-dv 就使用了不少方法 参考使用 {%- set info -%} source_model: raw_staging: "raw_customer" derived_columns: SOURCE: "! 阅读全文

posted @ 2024-05-10 16:25 荣锋亮 阅读(6) 评论(0) 推荐(0) 编辑

dbt macro 中获取relation 的几种方法
摘要:很多时候我们是希望在自己开发的macro中引用relation 这样可以获取实际模型在数据库中的信息,方便数据的写入,或者进行查询 实现动态能力,尤其在进行数据质量方便的处理时候,以下简单说明下一些可选的方法 参考方法 直接使用api.Relation.create 创建新的 如果知道一些信息(da 阅读全文

posted @ 2024-05-10 12:57 荣锋亮 阅读(14) 评论(0) 推荐(0) 编辑

dbt plugin 系统简单说明
摘要:dbt 实际上提供了一个plugin 架构(属于扩展与adapter 的plugin 机制是不一样的)只是目前官方缺少文档的说明 以下是一些简单说明 内部处理 插件接口定义 目前相对简单,只提供了核心是3个方法initialize,get_nodes,get_manifest_artifacts c 阅读全文

posted @ 2024-05-09 11:57 荣锋亮 阅读(10) 评论(0) 推荐(0) 编辑

dbt flags 简单说明二
摘要:以前简单说过,实际上dbt 的flags 提供的参数还是不少的 参考内容 一个参考内容 可以看出还是不少信息的 flags Namespace(WRITE_JSON=True, WARN_ERROR=None, PROFILES_DIR='xxxx/.dbt', INDIRECT_SELECTION 阅读全文

posted @ 2024-05-09 00:04 荣锋亮 阅读(11) 评论(0) 推荐(0) 编辑

上一页 1 2 3 4 5 6 ··· 8 下一页

导航