2024年5月2日

dremio 读取 jsonl 格式支持

摘要: 实际上属于dremio 社区一个问题,内部实际上是dremio 对于格式化插件支持的问题, 不少是基于文件格式硬编码的,尽管 我们可以自定义格式化插件,但是对于已经支持的就有点不是很方便了,可以直接复用现有的,以下说明下修改以及处理 直接修改JSONFormatPlugin 代码支持jsonl 参考 阅读全文

posted @ 2024-05-02 11:31 荣锋亮 阅读(1) 评论(0) 推荐(0) 编辑

dbt docs 解析的替换方案

摘要: supercharged-dbt-docs 是dagster 基于dbt-docs 以及next.js 进行重写的dbt docs 解析以及渲染服务,加速速度很不错,官方有比较对于大型dbt项目加速速度比较慢的可以试用下 参考资料 https://github.com/dbt-labs/dbt-do 阅读全文

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

2024年5月1日

dbt 自定义AdapterPlugin 中dependencies 简单说明

摘要: 结合dbt-redshift 的对于dependencies 部分的定义以及使用简单说明下 参考代码 Plugin: AdapterPlugin = AdapterPlugin( adapter=RedshiftAdapter, # type: ignore credentials=Redshift 阅读全文

posted @ 2024-05-01 08:39 荣锋亮 阅读(2) 评论(0) 推荐(0) 编辑

dbt 自定义schema 简单说明

摘要: dbt 的schema 我们是可以灵活进行自定义的,可以实现一个比较有意思的事情 使用场景 模型级别的schema自定义 seed 数据schema自定义 不同env 或者vars 的schema 自定义 不同target schema 的自定义 schema 自定义 核心是generate_sch 阅读全文

posted @ 2024-05-01 08:38 荣锋亮 阅读(2) 评论(0) 推荐(0) 编辑

dbt Relation 扩展简单说明

摘要: dbt 的Relation 实际上就是包含关系数据库表,数据库,schema 一些信息的描述,dbt 官方提供了api.Relation.create 等操作 进行Relation 的维护,当然系统的builtins 也提供了一些基本的操作能力, 内部使用上会使用dbt BaseRelation 中 阅读全文

posted @ 2024-05-01 08:38 荣锋亮 阅读(2) 评论(0) 推荐(0) 编辑

使用@lakehouse-rs/flight-sql-client nodejs api 快速访问dremio 服务

摘要: @lakehouse-rs/flight-sql-client 是基于rust 开发的node arrow flight sql client ,dremio 目前也是推荐基于arrow flight sql 的访问模式 参考代码 package.json { "name": "node-arrow 阅读全文

posted @ 2024-05-01 08:37 荣锋亮 阅读(1) 评论(0) 推荐(0) 编辑

dbt docs generate 简单说明

摘要: dbt docs generate 核心是获取dbt 项目的元数据信息(包含了project 的)以及相关table的(dbt 模型相关的),然后通过提供的解析页面进行显示 目前是基于静态处理的(先生成,然后基于纯web 的解析渲染)对于展示方法很多,可以基于dbt 的docs serve 命令也可 阅读全文

posted @ 2024-05-01 07:36 荣锋亮 阅读(1) 评论(0) 推荐(0) 编辑

2024年4月30日

dbt dbt-audit-helper 包提供的一些方便macro

摘要: dbt-audit-helper 从字面意思是dbt 的审计帮助工具,但是实际上我们也可以使用此工具做一些数据质量相关的东西 dbt-audit-helper 提供的macro 比较数据输出 包含了compare_relations,compare_queries,compare_row_count 阅读全文

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

dremio 日志配置

摘要: dremio 对于日志的配置支持基于系统属性以及环境变量的模式,对于环境变量实际上也是使用的系统属性 参考配置 系统属性 可以直接通过dremio-env 文件添加 -Ddremio.log.path=/opt/dremio/logs 环境变量 直接添加环境变量就可以了 DREMIO_LOG_DIR 阅读全文

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

dbt Exposure 简单说明

摘要: dbt Exposure 实际上就是给model,source,metrics 添加一个元数据标签,可以方便的在系统中展示,有利于模型依赖的可视化当然也有助于数据模型资产的分析 一个参考效果 如果不自己进行解析处理的话,主要体现在docs 界面上 参考资料 https://docs.getdbt.c 阅读全文

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

2024年4月29日

dremio The source [xxxx] is currently unavailable. Metadata is not accessible; please check node health简单说明

摘要: 最近在dremio 25.0 版本碰到了一些问题,以下说明下原因以及处理 问题现象 问题 实际上此问题是执行节点报的错误,并不是协调节点的,早期一直以为是协调节点的,结果通过分析调试发现是协调节点报的错误 The source [xxxx] is currently unavailable. Met 阅读全文

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

dbt test block 简单说明二

摘要: 以前简单说明过dbt test block,属于一个自定义的扩展,同时也简单说明了一些使用,实际上dbt 的test 也是一个物化处理,支持物化的类型为test 参考manifest test 类型的定义 因为存在此定义,按照dbt 的处理会基于物化的规则来进行sql 生成处理 test 物化参考定 阅读全文

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

2024年4月28日

dbt context 变量简单说明

摘要: dbt 的模型以及macro 中实际上是可以引用一个context 变量的,此变量没有在文档中有说明,但是官方一些macro 中使用了此变量 参考使用 dbt 的snapshots strategies 处理中基于配置的strategy 查找对应的macro {% macro strategy_di 阅读全文

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

2024年4月27日

dbt seed 处理简单说明

摘要: dbt 支持基于seed 的快速建模处理(比较适合测试环境使用),我们只需要提供csv 格式的文件,之后执行dbt seed 就会创建对应的模型,之后我们就可以在 dbt 模型中引用了,以下简单说明下内部实现以及处理 参考使用 seed 文件位置 一般我们会在dbt 项目的seed 目录中放对应的s 阅读全文

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

dremio 25.0 KVStore 升级简单说明

摘要: dremio 25.0 开始对于数据源的存储支持加密了,所以升级上稍有不同,官方给出的操作流程如下 参考处理 // 对于已经运行的,应该先stop,然后进行应用包的替换 dremio stop // 执行dremio-admin 的upgrade dremio-admin upgrade // 启动 阅读全文

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

2024年4月26日

dremio datastore简单说明二

摘要: 以前也介绍过dremio 的datastore,目前软件版主要是基于rocksdb 的kv,对于创建会基于一个的集群角色使用不同的 dremio 实际包含了好几类的KVStoreProvider 参考KVStoreProvider实现子类 可以看到包含了local,remote,trace,noop 阅读全文

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

dbt server 简单说明

摘要: 目前dbt 官方提供的几个web api 服务基本都废弃了,包含了dbt-server 以及dbt-rpc 如果需要自己包装web api 服务推荐的还是基于dbt core 提供的dbtRunner,具体在core/dbt/cli/main.py 中,可以参考学习 参考资料 https://git 阅读全文

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

2024年4月25日

dbt 增量物化策略简单说明

摘要: dbt 物化模型是支持增量处理的,实际场景中基于增量的数据处理还是比较重要的,dbt 对于增量的处理会和一些因素有关系,比如数据大小, 可靠的unique_key 以及特定数据平台的支持incremental_strategy 策略可以对于特定adapter 支持配置 目前支持的增量策略 当然与实际 阅读全文

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

2024年4月24日

dbt is_incremental macro 简单说明

摘要: is_incremental macro 实际上就是一个判断,以下是实现的简单说明,官方文档也有说明 参考处理 逻辑 模型必须存在(数据库中),目的表也存在(数据库中),full-refresh 没有传递,模型配置了materialized='incremental' macro 实现 结合上边的逻 阅读全文

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

2024年4月23日

dbt test block 简单说明

摘要: dbt 的test block实际上是一个jinja2 的扩展,目前主要是test 场景中使用, 此block的实现处理与标准物化的处理是类似的都是jinja2 的扩展 test macro 的创建 按照当前dbt 的版本是分为两中模式,对于tests 路径是可以配置的,包含了tests/gener 阅读全文

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

2024年4月22日

nginx 1.25.5 发布

摘要: 就在最近nginx 发布了1.25.5 有一些特性比较有意思 新特性 stream 支持虚拟主机了 比较有意思的功能,结合sni 可以做一些很有意思的事情 一个新的模块ngx_stream_pass_module 与proxy_pass 类似,目前主要是proxy 到ip port (域名以及类似u 阅读全文

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

dbt exceptions macro 简单说明

摘要: dbt exceptions 实际属于一个namespace 变量可以进行一些代码可控的异常处理以及raise 以及warn 参考使用 raise_compiler_error 使用 {% if number < 0 or number > 100 %} {{ exceptions.raise_co 阅读全文

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

2024年4月21日

dbt 使用adapter.dispatch 进行macro 的覆盖处理

摘要: adapter.dispatch 是一个很方便的功能,可以实现方法的重载,对于不同环境可以使用不同的macro ,以下是一个简单示例 macro 定义 appdemo.sql 注意在macros 目录下,当然可以修改 {% macro demo(name,age) %} # 注意此处我没有指定,na 阅读全文

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

dbt doc 函数内部处理简单说明

摘要: dbt 提供了一个方便的doc 函数,可以方便的使用类似ref 模式进行docs block 定义的引用 引用参考处理 示例 version: 2 models: - name: events description: '{{ doc("table_events") }}' columns: - n 阅读全文

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

dbt docs block 简单说明

摘要: dbt docs block 是一个jinja2 bblock 的扩展,以下是一个简单的说明 参考使用 定义 {% docs table_events %} This table contains clickstream events from the marketing website. The 阅读全文

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

2024年4月20日

dbt asset-paths 简单说明

摘要: dbt的asset-paths 是一个比较有意思的配置,可以用来增强我们的文档信息,比如存放一些图片在资源描述中引用资源 生成的文档中可以进行显示,提示文档的信息 参考配置 dbt_project.yml asset-paths: ["assets"] 使用 假如assets包含一些描述图片信息 m 阅读全文

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

dbt docs block 的一些技巧

摘要: dbt 的docs 实际上自定义上还是很强大的,可以灵活的docs block 解析,同时docs 定义也可以类似model 那样进行引用,当然也包含了一些内部固定模式可以灵活的进行文档的自定义 一些内置自定义玩法 自定义文档路径 类似dbt 其他资源一样docs 也是支持自定义的,否则默认会搜索m 阅读全文

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

dremio 25.0 maven ce 依赖官方已经发布

摘要: 以前写过如何基于软件包的jar 实现maven 依赖的重构,目前官方ce 依赖的包已经发布了,可以直接使用了 参考资料 https://www.cnblogs.com/rongfengliang/p/18129848 阅读全文

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

dremio dbt ref 内部处理简单说明

摘要: dremio dbt 内部对于ref 进行了重写,可以实现一些灵活的扩展 参考处理 ref 参考实现 dbt/include/dremio/macros/builtins/builtins.sql 对于ref 进行了一些调整,可以进行一些自定义操作,核心是对于模型格式化的定义 {%- macro r 阅读全文

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

2024年4月19日

npm 下载npm tar 包

摘要: 主要记录下如何使用npm 的pack 命令,快速下载npm repo 中的tar 包,方便项目使用 参考处理 参考命令 npm pack @lakehouse-rs/flight-sql-client-linux-x64-gnu@0.0.7 效果 说明 当然也可以通过npm 的json api 格式 阅读全文

posted @ 2024-04-19 22:53 荣锋亮 阅读(5) 评论(0) 推荐(0) 编辑

dremio dbt 模型处理简单说明

摘要: dremio dbt adapter 在设计的时候与传统adapter 稍有不同,比如里边调整了database 名称的处理,同时因为dremio 的特殊性 对于物化的处理是先物化然后创建一个视图(table 模式的) 对于我们实际使用到的数据是在dremio 的space (或者nessie 数据 阅读全文

posted @ 2024-04-19 06:59 荣锋亮 阅读(5) 评论(0) 推荐(0) 编辑

2024年4月18日

graalvmjs 24.0.1 nodejs 镜像

摘要: graalvmjs 已经支持jdk 22了,基于官方提供的更新了新版本的docker 镜像,方便使用 Dockerfile FROM debian:bullseye-backports LABEL author="rongfengliang" LABEL email="1141591465@qq.c 阅读全文

posted @ 2024-04-18 12:03 荣锋亮 阅读(6) 评论(0) 推荐(0) 编辑

dremio SchemaMutability 简单说明

摘要: dremio SchemaMutability 属于一个枚举,定义了schema 的可变性能力() 参考定义 public enum SchemaMutability { @Tag(1) ALL(true, true, true, true), @Tag(2) NONE(false, false, 阅读全文

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

casl 同构授权js 框架

摘要: casl 同构授权js 框架,提供了web前端以及后端的集成支持(使用相同的api ) 包含的特性 多功能 灵活的基于subject 以及属性的授权处理 同构 同时支持前端以及后端 类型安全 基于ts 开发 小巧 压缩之后只有6kb 声明式的 基于声明式的可以灵活的进行规则的共享,包含了ui,api 阅读全文

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

lightdash 对于headless browser的使用

摘要: 对于slack 的unfurl lightdash 使用了headless browser,以下说明下内部处理 参考图 此图来自官方文档,可以看出主要包含了调度以及slack 的 内部实现 实际上就是对于 unfurl 的图片处理部分,里边包含了cookie处理(安全)以及对于请求进行拦截(核心也是 阅读全文

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

browserless 对于延迟加载图片的处理

摘要: 日常中大家为了提高web的性能基于可见区的图片加载基本常见,但是对于基于puppeteer的快照以及pdf生成就不太方便了,以下是一个解决方法,核心是过去内容的高度,基于代码进行滚动,模拟人的操作实现资源的加载 参考实现 const express = require("express"); con 阅读全文

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

browserless 屏幕捕捉以及pdf 导出简单试用

摘要: 基于browserless 以及puppeteer 我们可以快速的进行屏幕捕捉生成图片以及导出pdf 文件,以下是一个简单的试用 环境准备 docker-compose version: "3" services: app: image: browserless/chrome:latest port 阅读全文

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

browserless 部署无头浏览器到docker中的工具

摘要: browserless 部署无头浏览器到docker 中的工具 包含的特性 支持可配置的并行以及请求队列 开箱即用的字体支持 debug 视图支持 交互式的puppeteer 调试器 支持puppeteer 以及playwright 支持基于websocket 以及rest api 的请求控制(可以 阅读全文

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

dbt flags 变量简单说明

摘要: 通过flags 可以使用dbt cli 的一些参数,比较常用的是对于增量物化处理的场景 参考使用 {% if flags.FULL_REFRESH %} drop table ... {% else %} -- no-op {% endif %} 说明 支持的参数都在flags 中可以看看,一些db 阅读全文

posted @ 2024-04-18 09:14 荣锋亮 阅读(3) 评论(0) 推荐(0) 编辑

dbt adapter macro 简单说明

摘要: dbt 的adapter macro 提供了方便的在macro 中对于db 操作的能力,让macro 具有了动态能力,默认包含了不少实现 而且在不少dbt 项目中经常看到 参考使用 结合了api 这个macro 提供了能力,进行ddl 的维护 {%- set target_relation = ap 阅读全文

posted @ 2024-04-18 06:41 荣锋亮 阅读(2) 评论(0) 推荐(0) 编辑

导航