• 2024-05-26dremio nginx proxy 问题简单说明二
    以前说过基于修改dremio服务的静态index.html实际上还有一种方法就是直接通过nginx的sub_filter指令,以下是简单说明配置核心是nginx,后端服务就不需要修改了nginx.conf核心是sub_filter的匹配处理worker_processes1;events{worker_connections
  • 2024-05-24dremio nginx proxy 问题简单说明
    dremioui处理上部分直接依赖了locationpathname对于使用默认的/的proxy是没有问题的,但是很多时候我们需要自己配置一个proxypath,以下简单说明下问题,以及解决方法环境准备docker-composeversion:"3"services:nginx:image:nginx:alpine
  • 2024-05-18dremio 分布式存储docker配置简单说明
    对于dremio分布式存储的配置我们直接修改配置文件,当然基于环境变量参考配置dremio:platform:linux/x86_64image:dremio/dremio-oss:latestports:-9047:9047-31010:31010-32010:32010container_name:dr
  • 2024-05-10dremio CatalogMaintenanceService 服务简单说明
    说明此服务是从25.0开始包含的,同时在releasenote中也有说明,以下主要说明下内部实现release信息如下,具体就不翻译了,主要是添加了一个每个任务进行每个view最大保留50个历史信息Addeddailycatalogmaintenancetaskstotrimhistoryofviewstoamaximumof50
  • 2024-05-09dremio-stress dremio 压力测试工具
    dremio-stress是基于rest埃及jdbc的dremio压力测试工具,实现上相对简单,并不是比较复杂的东西,可以结合一些业务场景使用同时建议和dremio-diagnostic-collector配合起来说明此工具应该并非官方的,实际如果需要进行大规模测试基于tpc-h会更加标准参考资料https://github.com
  • 2024-05-05dremio UserService 简单说明
    以前是简单说明过dremio的UserService,dremio实际上支持内部以及外部用户的玩法类图可以看到,包含了simple以及executor两个,同时实现了UserServiceEvents支持发布订阅能力的接口(订阅是25.0版本的)executor的实现实际上是为空的,核心是方便执行节点bindUserService,实际内
  • 2024-05-02dremio 读取 jsonl 格式支持
    实际上属于dremio社区一个问题,内部实际上是dremio对于格式化插件支持的问题,不少是基于文件格式硬编码的,尽管我们可以自定义格式化插件,但是对于已经支持的就有点不是很方便了,可以直接复用现有的,以下说明下修改以及处理直接修改JSONFormatPlugin代码支持jsonl参考如下Fo
  • 2024-05-01使用@lakehouse-rs/flight-sql-client nodejs api 快速访问dremio 服务
    @lakehouse-rs/flight-sql-client是基于rust开发的nodearrowflightsqlclient,dremio目前也是推荐基于arrowflightsql的访问模式参考代码package.json{"name":"node-arrow-flight-sql","version":"1.0.0","ma
  • 2024-04-30dremio 日志配置
    dremio对于日志的配置支持基于系统属性以及环境变量的模式,对于环境变量实际上也是使用的系统属性参考配置系统属性可以直接通过dremio-env文件添加-Ddremio.log.path=/opt/dremio/logs环境变量直接添加环境变量就可以了DREMIO_LOG_DIR=/o
  • 2024-04-29dremio The source [xxxx] is currently unavailable. Metadata is not accessible; please check node hea
    最近在dremio25.0版本碰到了一些问题,以下说明下原因以及处理问题现象问题实际上此问题是执行节点报的错误,并不是协调节点的,早期一直以为是协调节点的,结果通过分析调试发现是协调节点报的错误Thesource[xxxx]iscurrentlyunavailable.Metadataisnotaccess
  • 2024-04-27dremio 25.0 KVStore 升级简单说明
    dremio25.0开始对于数据源的存储支持加密了,所以升级上稍有不同,官方给出的操作流程如下参考处理//对于已经运行的,应该先stop,然后进行应用包的替换dremiostop//执行dremio-admin的upgradedremio-adminupgrade//启动dremiostart//停止drem
  • 2024-04-18dremio SchemaMutability 简单说明
    dremioSchemaMutability属于一个枚举,定义了schema的可变性能力()参考定义publicenumSchemaMutability{@Tag(1)ALL(true,true,true,true), @Tag(2)NONE(false,false,false,false), @Tag(3)SYSTEM_TABLE(false,true,false
  • 2024-04-11基于dremio 安装包进行源码依赖包maven 私服重建的一个思路
    dremio25.0版本已经发布了,但是如果希望自己源码构建,但是缺少一些依赖造成编译会有问题,但是我们可以直接基于官方提供的下载包的文件进行maven私服的重建,以下说明下简单流程参考流程下载软件包这个可以从dremio官网下载到最好选择一个可以构建的分支本地构建下此步
  • 2024-04-11dremio 25.0 版本的一些问题
    就是最近dremio25.0发布了,昨天在体验了之后似乎一些功能与实际的说明是不太一样的(也可能是社区版的问题)一些问题nessiecatalogga了官方的说法是支持基于api以及ALTERTABLE,ALTERVIEW进行反射更新的,但是似乎是不行的,同时结合源码看就是暂时还支持,只是sql解析支持了
  • 2024-03-23dremio AsyncStreamConf 简单说明
    AsyncStreamConf主要是关于异步以及cache配置属性的参数配置,dremio存储扩展不少都实现了此接口参考实现使用的地方整体使用 存储插件基本都会使用到,包含了一些reader,同时还有文件系统的包装处理 ceCacheFileSystemWrapper的使用 这个是dremioce包中的一个CacheF
  • 2024-03-22dremio 官方对于软件版ha 以及扩展部署的参考方案
    关于dremio实际大规模部署的记录,内容来自官方文档dremio组件架构参考图此图包含了dremio的ha以及扩展,包含了主备Coordinator(故障转移的)提高查询性能的Coordinator,以及进行实际查询的执行器此部署中依赖lb,共享存储(nfs类的),zk(协调选举的),分布式存储(当然也可以使用共享存储,但
  • 2024-03-22soda-data dremio 集成使用
    以前简单介绍过soda数据质量工具,以下是关于dremio集成的一个说明环境准备dremiodremio基于docker部署,具体可以参考https://github.com/rongfengliang/dremio_cluster_docker-composesodasoda包含了library以及core,我使用了core,不依赖cloud,基于venvpython
  • 2024-03-20dremio 自定义登陆以及简单sso
    一个简单的dremio集成自己外部登陆的,处理方法是通过nginx进行proxy同时开发自己的login服务,此服务调用的dremiologinapi对于自己的登陆页面调用自己开发的loginapi,然后将登陆信息写入到localstorage中,之后进行一个dremionginx访问地址的重定向因为dremio默认web登
  • 2024-03-13dremio TemporaryFolderManager 简单说明
    dremio对于比较大的处理(聚合函数操作可能会触发spill,同时会方法临时文件中),对于比较频繁的job查询可能会有不少临时文件TemporaryFolderManager核心是为了进行这些临时文件的管理,包括清理,创建,已经对于临时异常执行器节点的文件处理,对于清理处理dremio没有使用自己的开发的那
  • 2024-03-04dremio 查询执行阶段简单说明
    内容实际来自官方架构介绍,图以前也在博客中放过,现在进行说明下参考执行图阶段说明参考上图,dremio将执行分为可4个阶段客户端通过jdbc,odbc,rest提交查询到协调节点计划阶段 此阶段可以细分3步 a.协调节点解析查询为dremio的通用关系模型 b.协调节点基于数据源的统计信
  • 2024-03-03dremio ProfileStore 简单说明
    以前简单说明过dremio的jobprofilequery,现在简单说明下dremioProfileStore参考实现如下图,实际上只有一个LocalProfileStore,数据是存储咱爱kvstorage中的,但是对于kv存储的只有完成的profile,其他阶段的数据是直接存储在内存中的使用目前ProfileStore的实现只有LocalPr
  • 2024-03-02dremio jobprofile查询简单说明
    dremio提供了方便的jobprofile能力,可以进行共享以及分析dremio查询的性能问题,以下是关于jobprofile下载功能的简单说明下载处理SupportResource.java@POST@Path("download")@Consumes(MediaType.APPLICATION_JSON)publicResponsedownloadData(
  • 2024-02-25dremio 从S3StoragePlugin看一个存储插件的开发模式
    以前对于S3StoragePlugin有过简单的说明,以下结合S3StoragePlugin说明下如何开发一个存储扩展一些标准模式选择实现的存储插件的接口比如s3的因为实际上就是文件系统,所以S3StoragePlugin实现了FileSystemPlugin接口的,同时可以复用不少已有的实现(比如表创建,修改,删除相关的),
  • 2024-02-23dremio cloner 简单试用
    以前简单介绍过dremiocloner工具,以下是一个简单试用dremio环境准备基于docker-compose,具体可以参考https://github.com/rongfengliang/dremio_cluster_docker-compose完成配置安装dremioclonerdremiocloner没有直接提供为一个pip包,需要自己安装clone代码
  • 2024-02-22dremio SupportsExternalQuery 简单说明
    dremio的外部查询实际上就是让我们可以通过sql直接查询source而不是通过复杂的处理,可以解决一些sql函数不能使用的问题对于实现了SupportsExternalQuery接口的存储扩展就可以实现此功能,比如jdbc的(属于ce扩展)参考语法SELECT*FROMtable(my_oracle.external_que