12 2022 档案

dremio UserServer 简单说明
摘要:UserServer 目的是对于UserRPCServer 进行生命周期管理(基于netty 开发的)主要是处理非web 请求(实际上就是直接链接的服务) 从官方源码上UserServer 的创建只能在协调节点(当然候选节点也是可以执行rpc 服务的) 参考创建 DACDaemonModule if 阅读全文

posted @ 2022-12-29 19:05 荣锋亮 阅读(31) 评论(0) 推荐(0) 编辑

dremio jdbc 客户端简单说明
摘要:dremio jdbc 客户端实际上包含了基本上两大类,一个是传统jdbc 的,一个是基于apache arrow flight sql jdbc 的 当前主要说明传统jdbc 客户端的,内部上dremio 基于了calcite 的avatica 进行jdbc driver 的包装,实际客户端的 链 阅读全文

posted @ 2022-12-29 19:03 荣锋亮 阅读(147) 评论(0) 推荐(0) 编辑

dremio 参考配置参考
摘要:实际上我以前简单说明过,下边包含一个官方文档完整的,方便参数学习 官方提供的参考配置 dremio-reference.conf include classpath("dremio-reference-ext.conf") paths: { # the local path for dremio t 阅读全文

posted @ 2022-12-29 19:02 荣锋亮 阅读(166) 评论(0) 推荐(0) 编辑

gitlab 集成的一些SAST安全扫描工具
摘要:企业内部使用gitlab 作为源代码管理的越来越多了,同时目前gitlab 不少企业特性也开源的社区免费版了,以下是支持的SAST 清单可以参考 参考清单 Language (package managers) / frameworkScan toolIntroduced in GitLab Ver 阅读全文

posted @ 2022-12-28 20:36 荣锋亮 阅读(382) 评论(0) 推荐(0) 编辑

dremio ClassCompilerSelector 简单说明
摘要:ClassCompilerSelector 核心是基于配置的策略选择不同的类编译器,然后编译为字节数组 当前包含了基于jdk 的以及janino ClassCompiler实现类图 使用到的类 直接使用主要包含CodeCompiler以及QueryClassLoader,间接的包含了不少,主要是对于 阅读全文

posted @ 2022-12-28 18:14 荣锋亮 阅读(30) 评论(0) 推荐(0) 编辑

dremio SabotContext 简单说明
摘要:dremio 包含不少context,而且好多context 是直接在dremio 整个执行生命周期的,比如SabotContext,QueryContext,BootStrapContext。。。。SabotContext 是一个比较重要的服务,具体的创建是由ContextService 初始化的 阅读全文

posted @ 2022-12-28 18:09 荣锋亮 阅读(26) 评论(0) 推荐(0) 编辑

databend minio 模式试用
摘要:关注databend 很早了,最近运行试用了下(基于minio),发现databend 真的很强大了,目前也推出了cloud 环境准备 docker-compose 文件 version: '3' services: databend-single: image: datafuselabs/data 阅读全文

posted @ 2022-12-27 20:34 荣锋亮 阅读(117) 评论(0) 推荐(0) 编辑

dremio fragment 执行简单说明
摘要:dremio 的内部执行实际上与drill 是比较类似的,只是dremio 做了不少的优化处理 一个调用流程说明 来自官方文档 参考调用链 实际执行管理的类 AttemptManager @Override public void run() { // rename the thread we're 阅读全文

posted @ 2022-12-27 17:45 荣锋亮 阅读(54) 评论(0) 推荐(0) 编辑

dremio ExecutionPlanCreator 简单说明
摘要:dremio 在进行了一系列的sql 解析,sql 校验,逻辑计划、物理计划之后就需要实际的执行计划生成以及具体的数据处理了 ExecutionPlanCreator 的作用就是进行执行计划的生成,在dremio 中核心是fragment (包含了Major 以及Minor) 调用 参考如下,由 M 阅读全文

posted @ 2022-12-27 17:39 荣锋亮 阅读(56) 评论(0) 推荐(0) 编辑

encore 云友好的后端开发框架
摘要:encore 云友好的后端开发框架,将云基础设施的能力直接应用到代码中 特性 简化微服务开发 内置云服务api,包含了数据库,队列,缓存,任务调度 内置devops 自动环境提供 智能架构图 分布式追踪 安全管理 自动api 文档 生成前端clients 说明 encore 基于golang 开发, 阅读全文

posted @ 2022-12-25 20:08 荣锋亮 阅读(218) 评论(0) 推荐(0) 编辑

pg_graphql 1.0 发布了
摘要:pg_graphql是supabse 团队使用pgx 扩展开发的pg graphql 扩展,实际上官方的graphl 支持是演变了好几个版本的,学习下官方博客的演变还是很值得的看看如何进行设计 参考资料 https://supabase.com/blog/pg-graphql-v1https://g 阅读全文

posted @ 2022-12-25 19:08 荣锋亮 阅读(65) 评论(0) 推荐(0) 编辑

dremio 实现官方create user sql 处理的一些说明
摘要:以前我简单说明实际上当时我只是说明了以下简单的思路,最近随着对于dremio 慢慢比较深入的学习,发现直接实现create user sq 似乎并不是一个比较方便的 原因 传入的参数是QueryContext,此上下文缺少UserService 的暴露 参考方法签名 public interface 阅读全文

posted @ 2022-12-25 19:01 荣锋亮 阅读(22) 评论(0) 推荐(0) 编辑

通过dremio 一个单元测试了解基本查询处理过程
摘要:dremio 属于一个比较复杂的系统,官方有不少模块,官方同时也包含了一个不错的单元测试可以基本了解查询的处理 从session到查询,到sql 解析,关系节点转换,逻辑计划器以及物理计划以及执行计划 参考代码 public class Limit0LogicalToPhysicalTest ext 阅读全文

posted @ 2022-12-24 13:07 荣锋亮 阅读(69) 评论(0) 推荐(0) 编辑

hydra snowflake 可选的olap postgres 数据库
摘要:hydra 是基于pg 开发的olap 数据库,官方的说法是snowflake 可选方案,属于一个HTAP 工作负载类型的数据库 支持向量化以及列式存储(当然部分还在开发中,还没实现) 支持的特性 托管pg 数据库 append-only 列存 外表 pg 调度 并行查询 where 条件向量化执行 阅读全文

posted @ 2022-12-18 22:54 荣锋亮 阅读(123) 评论(0) 推荐(0) 编辑

maven fmpp+javacc 集成使用简单说明
摘要:dremio 以及apache calcite 使用到fmpp + javacc 进行代码生成处理,以下是一个简单的集成测试 fmpp 的作用 fmpp 实际上是包装了freemarker ,提供了cli 以及java api 可以方便的进行模版处理,目前apache calcite 就基于了fmp 阅读全文

posted @ 2022-12-15 17:46 荣锋亮 阅读(708) 评论(0) 推荐(0) 编辑

maven fmpp 插件开发说明
摘要:实际上已经有几个 fmpp maven 插件,但是不是很好用,dremio 自己包装了一个,然后fork 了dremio fmpp 插件的代码独立包装了一些 同时发布到github repo 中,方便使用 参考代码 pom.xml <?xml version="1.0" encoding="UTF- 阅读全文

posted @ 2022-12-15 17:40 荣锋亮 阅读(222) 评论(0) 推荐(0) 编辑

dremio CommandPool简单说明
摘要:CommandPool 实际上是一个线程池的处理,官方实现了好几种线程池 主要作用 限制并行请求以以及job 的运行 定义优先级任务 特点 任务基于优先级以及提交时间进行自然排序 当线程空闲的是否任务会尽快的执行 在其他任务需要运行的是否,比较忙碌的线程必须先完成 CommandPool 的注册是由 阅读全文

posted @ 2022-12-14 19:34 荣锋亮 阅读(42) 评论(0) 推荐(0) 编辑

dremio CommandCreator 简单说明
摘要:CommandCreator 主要是基于不同业务规则进行conmandrunner 的生成,以下是一个简单说明 CommandCreator 的作用 基于request 创建包装的command 包装多种conmandrunner (基于用户请求类型,包装不同的commandrunner) 构建后变 阅读全文

posted @ 2022-12-14 19:34 荣锋亮 阅读(23) 评论(0) 推荐(0) 编辑

idea 自带java 反编译工具问题
摘要:就在最近升级到idea 最新版本,发现以前java-decompiler 命令行工具不能使用了,运行会有错误 解决方法 找到一个地版本的idea 拷贝java-decompiler.jar 直接替换,或者直接使用低版本的java-decompiler.jar 运行 运行命令 java -cp jav 阅读全文

posted @ 2022-12-13 12:03 荣锋亮 阅读(777) 评论(0) 推荐(0) 编辑

dremio 查看外部profile 信息
摘要:dremio web server 基于了jersey实际包含了比较完备的配置支持(类似spring boot 强大的配置支持一样) 同时dremio 也包含了一些测试api 但是默认是关闭的,我们可以通过配置,或者修改代码打开,目前我基于 代码进行了修改 参考修改的代码 TestResources 阅读全文

posted @ 2022-12-12 12:06 荣锋亮 阅读(26) 评论(0) 推荐(0) 编辑

使用 dragonflydb 作为godns 的redis 存储
摘要:玩法没变,可以参考我以前写的,主要是调整了redis 为dragonflydb 测试下 参考docker-compose 文件 version: "3" services: redis: image: docker.dragonflydb.io/dragonflydb/dragonfly:lates 阅读全文

posted @ 2022-12-11 21:31 荣锋亮 阅读(358) 评论(0) 推荐(0) 编辑

dremio 23 反射异常问题原因分析简单说明
摘要:通过几天的分析,大致可以确认dremio 23 的问题,应该是一个exception 引起的,以下是通过使用jpropfiler 发现的一个exception 信息 现象 参考图 说明 从上图可以看出是一个MatchFailed 的exception 引起的,但是目前没有影响业务,因为异常之后使用了 阅读全文

posted @ 2022-12-11 20:27 荣锋亮 阅读(57) 评论(0) 推荐(0) 编辑

graylog 5.0 发布了
摘要:graylog 5.0 最近ga 发布了,包含了不少新特性(ui 变化,新参考文档) 参考运行 docker-compose 文件 version: '3' services: mongo: image: mongo:5.0.13 ports: - 27017:27017 networks: - g 阅读全文

posted @ 2022-12-10 11:49 荣锋亮 阅读(637) 评论(0) 推荐(0) 编辑

nginx + graylog 对于日志进行管理的一个实践
摘要:以下整理一个自己结合ngin+graylog 进行日志处理的实践,可以参考 日志参考玩法 参考配置 log format 参考如下,可以配置一些符合自己业务的log format 不同业务配置使用 log_format main '$remote_addr - $remote_user [$time 阅读全文

posted @ 2022-12-09 13:25 荣锋亮 阅读(534) 评论(0) 推荐(0) 编辑

jib-maven-plugin docker 集成使用简单配置说明
摘要:以下是一个实践,实际自己可以调整 开启的功能 主要配置了jdwp ,当然这个东西是有安全风险的,对于容器环境,如果没有开启直接外部暴露,就不是问题,但是如果控制不好会有比较大的安全风险 参考配置 <plugin> <groupId>com.google.cloud.tools</groupId> < 阅读全文

posted @ 2022-12-08 18:30 荣锋亮 阅读(475) 评论(0) 推荐(0) 编辑

dremio 23 版本反射加速问题
摘要:问题描述 实际上这个问题社区也有不少人反馈了,以前看社区问题的时候没太注意,最近有一个网友也问了类似的问题,在测试了之后发现的确是有问题 参考思路 此问题实际上影响还是比较大的,官方的一些答复是推荐可以配置日志,看看反射执行的流程 目前此问题似乎是查询优化器在处理物化视图的问题,目前还在分析中(大家 阅读全文

posted @ 2022-12-07 12:26 荣锋亮 阅读(50) 评论(0) 推荐(0) 编辑

maven-dependency-plugin unpack 使用
摘要:maven-dependency-plugin 是一个比较有用,但是大家日常使用不是很多的插件, 包含的功能 解析依赖(显示依赖树,解析依赖的插件) copy 依赖 解压copy 依赖(unpack 比如需要部分jar 包中的内容,calcite 扩展开发经常使用到) unpack 简单使用 比如我 阅读全文

posted @ 2022-12-05 23:35 荣锋亮 阅读(664) 评论(0) 推荐(0) 编辑

dremio 源码分析学习的几个方便工具 二
摘要:主要是在以前周边工具上做一个简单的扩展说明 扩展 jdwp 调试 可以直接配置dremio 开启jdwp 方便调试,对于依赖的包可以通过dremio 的安装包提供,同时也有一个简单的缺点就是没有源码包 可以通过自己构建解决,毕竟dremio 大部分源码是开源的 glowroot glowroot 属 阅读全文

posted @ 2022-12-04 20:14 荣锋亮 阅读(118) 评论(4) 推荐(0) 编辑

使用jdwp 调试dremio
摘要:参考图 环境准备 核心是对于dremio 启动的时候开启jdwp 协议,对于本地ide 创建一个java maven 项目,添加依赖包(直接本地,添加dremio 安装包里边的jar 就行) 我基于容器进行运行 配置 /opt/dremio/conf/dremio-env 文件,我同时开启了jpro 阅读全文

posted @ 2022-12-03 22:14 荣锋亮 阅读(81) 评论(0) 推荐(0) 编辑

dremio 联邦数据源arp 扩展简单说明
摘要:dremio 联邦查询dremio 从代码上没太多高深的东西,实际上也是一个arp 扩展 ,同时官方做了不少优化 核心参考 主要是关于arp 扩展的 conf 类 @SourceType( value = "DREMIOTODREMIO", label = "Dremio-to-Dremio (pr 阅读全文

posted @ 2022-12-03 21:38 荣锋亮 阅读(75) 评论(0) 推荐(0) 编辑

dremio 联邦查询试用
摘要:dremio 23.1 支持dremio 联邦查询了,以下是一个试用说明 环境准备 docker-compose 文件 version: "3" services: mongo: image: mongo:4.2 environment: - "MONGO_INITDB_ROOT_USERNAME= 阅读全文

posted @ 2022-12-01 22:32 荣锋亮 阅读(76) 评论(0) 推荐(0) 编辑

dremio 23.1 发布
摘要:就在今天dremio 23.1 发布了,新功能有一个dremio 联邦查询的很不错,其他主要是一些常见bug 的修复 主要新特性 hive 以及glue icege table location 支持 array_contains 函数支持 dremio 联邦数据源 snowflake 新数据源 s 阅读全文

posted @ 2022-12-01 15:23 荣锋亮 阅读(37) 评论(0) 推荐(0) 编辑

lavinmq & rabbitmq压测对比
摘要:环境准备 docker-compose 文件 version: '3' services: lavinmq: image: cloudamqp/lavinmq:1.0.0-beta.8 volumes: - ./mq:/var/lib/lavinmq ports: - 5672:5672 - 156 阅读全文

posted @ 2022-12-01 12:44 荣锋亮 阅读(163) 评论(0) 推荐(0) 编辑

使用lavinmq 做为minio amqp 消息服务
摘要:环境准备 docker-compose version: '3' services: minio: image: minio/minio ports: - "9000:9000" - "19001:19001" environment: MINIO_ACCESS_KEY: minio MINIO_S 阅读全文

posted @ 2022-12-01 12:42 荣锋亮 阅读(100) 评论(0) 推荐(0) 编辑

使用arrow flight-sql-jdbc-driver 链接dremio
摘要:最近arrow flight-sql-jdbc-driver 发布了,对于dremio 我们直接可以使用flight sql jdbc 驱动链接了,可以极大的提升查询性能(具体性能提升待测试) 环境准备 docker-compose 文件 version: "3" services: mongo: 阅读全文

posted @ 2022-12-01 12:32 荣锋亮 阅读(375) 评论(0) 推荐(0) 编辑

导航