随笔分类 -  dbt

dbt manifest Compiler 简单说明
摘要:包含了与处理以及实际的编译处理compile 以及compile_node 在compilation 模块中的Compiler 类中 主要使用的模块 主要是CompileRunner.compile, GenericRPCRunner.compile, RunTask.get_hook_sql 这几 阅读全文

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

lightdash deploy --create 数据库配置问题
摘要:默认lightdash deploy --create 的时候会进行dbt profile target 数据库的链接测试,如果不通就会有提示问题同时lightdash deploy 同时创建项目的时候会提示是否包含数据库的信息(在创建的时候会写入到backend 服务中) dbt pg adapt 阅读全文

posted @ 2024-04-09 13:44 荣锋亮 阅读(29) 评论(0) 推荐(0) 编辑

lightdash 与dbt集成的玩法简单说明
摘要:lightdash 是依赖dbt 进行建模的bi 工具,以下说明下lightdash 是如何集成dbt 的 简单操作流程 如下,主要是安装cli,预处理表,然后创建项目 内部处理简单说明 packages/cli/src/index.ts 代码位置,主要是通过自定义一些dbt 的meta 信息,然后 阅读全文

posted @ 2024-04-09 13:43 荣锋亮 阅读(168) 评论(0) 推荐(0) 编辑

dbt meta 配置简单说明
摘要:dbt 的meta 从dbt 系统的角度来说,属于一些元数据的扩展,可以添加一个二外的描述信息,方便进行文档或者其他的扩展(比如开发自己的解析处理) lightdash 是基于dbt 的一个bi 平台,就比较依赖dbt 的meta 能力 配置说明 dbt meta 可以通过dbt_project.y 阅读全文

posted @ 2024-04-07 10:23 荣锋亮 阅读(26) 评论(0) 推荐(0) 编辑

dbt query_header 简单说明
摘要:dbt 对于每个实际执行的任务(实际sql)都会包含一个任务注释,可以方便的查看dbt 版本,执行nodeid,target 参考格式 /* {"app": "dbt", "dbt_version": "1.5.11", "profile_name": "dremio_nessie", "targe 阅读全文

posted @ 2024-04-06 08:00 荣锋亮 阅读(9) 评论(0) 推荐(0) 编辑

dbt debug macro 简单说明
摘要:dbt 支持debug macro 可以用来进行调试 使用 {% macro my_macro() %} {% set something_complex = my_complicated_macro() %} {{ debug() }} {% endmacro %} 参考实现 实际上就是通过环境变 阅读全文

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

dbt statement macro 简单说明
摘要:statement blocks 实际上就是一个标准的jinja2 macro 调用包装, 提供了方便的sql 执行能力,因为需要进行 查询结果的存储,dbt 提供了一个store_result 的macro,内部数据的处理基于了agate 这个方便的python 数据处理包 为了查询使用提供了lo 阅读全文

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

dbt dremio 项目代码结构简单说明
摘要:以前简单介绍过dremio dbt 扩展的特点,以下说明下代码结构 参考代码结构 dbt ├── adapters │ └── dremio │ ├── __init__.py │ ├── __version__.py │ ├── api │ │ ├── __init__.py │ │ ├── au 阅读全文

posted @ 2024-04-03 00:49 荣锋亮 阅读(24) 评论(0) 推荐(0) 编辑

dbt adapter 注册处理简单说明
摘要:以下简单说明下dbt 是如何加载其他adapter 的 参考注册处理 实际上是在cli 的manifest 装饰器的parse_manifest 中处理的 参考代码 def parse_manifest(runtime_config, write_perf_info, write, write_js 阅读全文

posted @ 2024-04-03 00:48 荣锋亮 阅读(16) 评论(0) 推荐(0) 编辑

dbt click包执行上下文manifest 处理简单说明
摘要:dbt 的cli 执行是基于了click 者pip 包,同时为了方便执行(比如依赖的参数),dbt 核心比较重要的是manifest 这个参数是通过context 传递的 run 参考task 处理 参考代码 core dbt/cli/main.py @cli.command("run") @cli 阅读全文

posted @ 2024-04-03 00:47 荣锋亮 阅读(10) 评论(0) 推荐(0) 编辑

dremio dbt 实现简单说明
摘要:dremio dbt adapter 是一个方便的可以通过dbt 进行dremio 模型的工程化建模工具,adapter 实现上也是按照标准的套路以下是一个关于实现的简单说明 内部实现特点 dremio 的操作基于了http 的rest api,没有使用odbc 或者flight sql 处理,这样 阅读全文

posted @ 2024-04-03 00:46 荣锋亮 阅读(20) 评论(0) 推荐(0) 编辑

dbt Runner 简单说明
摘要:Runner 提供了一个任务执行的抽象定义,同时 BaseRunner参考类图 可以看出BaseRunner task 使用 主要是基于提供的一个方法标记使用的runner 实现 def get_runner_type(self, node): raise NotImplementedError(" 阅读全文

posted @ 2024-04-02 08:00 荣锋亮 阅读(29) 评论(0) 推荐(0) 编辑

dbt macro 的执行简单说明
摘要:BaseAdapter 中包含了一个adapter 实际运行依赖的转换,链接处理,当然也包含了macro 的执行,具体方法有直接的execute_macro ModelRunner 中的materialization_macro(run 命令)还有run-operation 中RunOperatio 阅读全文

posted @ 2024-04-01 08:00 荣锋亮 阅读(30) 评论(0) 推荐(0) 编辑

dbt this macro 处理简单说明
摘要:dbt this macro提供了一种方便的对于当前模型展现的方法,可以使用在增量模型以及pre&post hooks 中 this 实际是就类似ref('<the_current_model>') 是一个relation 包含了database,schema 以及模型标识 使用示例 一个增量处理的 阅读全文

posted @ 2024-03-31 10:27 荣锋亮 阅读(14) 评论(0) 推荐(0) 编辑

jinja2 通过Template. make_module 进行动态macro 创建以及macro 方法调用
摘要:实际属于一个小技巧,可以实现比较灵活的jinja2 扩展,是从dbt 对于macro 的处理部分学习到的 参考代码 app.py from jinja2 import Environment env = Environment() # 定义macro 的内容 macro_template = """ 阅读全文

posted @ 2024-03-26 15:26 荣锋亮 阅读(34) 评论(0) 推荐(0) 编辑

dbt return macro 内部实现简单说明
摘要:jinja2 默认是没有return macro 的,dbt 在实现的时候比较有意思,通过一个exception 触发的,以下是简单说明 参考使用 一个包含return 的macro {% macro demoapp(name,version) %} {% if version =='v1' %} 阅读全文

posted @ 2024-03-26 15:24 荣锋亮 阅读(10) 评论(0) 推荐(0) 编辑

dlt 与dbt的直接集成简单试用
摘要:dlt 直接基于cli包装了dbt 的运行,对于希望通过dlt 进行etl 之后,还想运行dbt 的模型处理的场景就比较方便了,而且dlt 与dbt 的集成也是官方 一个很不错的特性,以下是一个简单试用 环境准备 docker-compose version: "3" services: pg: i 阅读全文

posted @ 2024-02-20 08:00 荣锋亮 阅读(104) 评论(0) 推荐(0) 编辑

dbt-jsonschema 来自dbt 官方的schema check 工具
摘要:dbt-jsonschema是dbt 官方开发的一个方便schema check 的工具,目前主要支持json 以及yaml 格式的check 同时官方也有一个60s 的介绍 说明 目前来说开发dbt 的ide dataspell 是一个不错的工具,dbt-language-server 也可以作为 阅读全文

posted @ 2024-02-10 22:39 荣锋亮 阅读(31) 评论(0) 推荐(0) 编辑

dbt_artifacts 一个很不错的dbt模型元数据扩展
摘要:dbt_artifacts 实际上属于基于基于macro 以及自定义模型开发的一个dbt 包,实现了模型的元数据能力,同时也可以作为一个dbt 模型测试的工具 支持的数据库 Databricks Spark Snowflake Google BigQuery Postgres 参考资料 https: 阅读全文

posted @ 2024-02-03 19:39 荣锋亮 阅读(28) 评论(0) 推荐(0) 编辑

elementary 面向对象分析师的开源数据可观测工具
摘要:elementary 面向对象分析师的开源数据可观测工具,基于了dbt 包含的特性 数据可观测性报告 通过dbt tests 可以发现异常数据 测试结果 模型性能报告 数据血缘 dbt 制品上传 slack 同志 说明 elementary 实际上就是一个dbt 的扩展,实现了不少强大的功能,值得试 阅读全文

posted @ 2024-02-03 08:01 荣锋亮 阅读(25) 评论(0) 推荐(0) 编辑

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示