dremio ce kernel 提供的一些配置类

dremio ce kernel 包提供了不少对于dremio的扩展类,比如规则,parquet 读取,以及反射处理的,以下是一个简单说明

参考配置

标准的sabot-module.conf 文件

dremio: {
  classpath.scanning {
    packages += "com.dremio.extra.exec.store.dfs"
    packages += "com.dremio.exec.planner.acceleration.substitution"
  }
 
  plugins : {
    dfs.rulesfactory: com.dremio.extra.exec.store.dfs.FileVectorizedRulesFactory
    parquet.factory: com.dremio.extra.exec.store.dfs.parquet.VectorizedReaderFactory
    parquet.input_stream_factory: com.dremio.extra.exec.store.dfs.parquet.SmartStreamFactory
    iceberg.manifests.input_stream_factory: com.dremio.extra.exec.store.dfs.iceberg.AsyncSeekableInputStreamFactory
  }
 
  exec: {
    substitution.factory: "com.dremio.exec.planner.acceleration.substitution.DremioSubstitutionProviderFactory"
  }
 
  reflection {
    planning.node-stripper.class: "com.dremio.exec.planner.acceleration.normalization.AdvancedNodeStripper"
    materialization.descriptor.factory: "com.dremio.reflection.AdvancedMaterializationDescriptorFactory"
  }
}

配置类的加载

使用了typesafe 的配置加载,以及动态类创建

// 比如InputStreamProviderFactory 的加载
this.factory = context.getConfig().getInstance(InputStreamProviderFactory.KEY, InputStreamProviderFactory.class, InputStreamProviderFactory.DEFAULT);

说明

ce-kernel 中的一些包还是比较重要的,尤其是在分析dremio 执行的时候,了解一些类的分布还是比较重要的,可以方便了解内部机制

posted on   荣锋亮  阅读(5)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
历史上的今天:
2023-03-25 languageservices github action  语言服务
2022-03-25 nocodb 参考架构
2022-03-25 nocodb Airtable 可选开源工具
2020-03-25 bashible 模版使用
2020-03-25 bashible 模块使用
2020-03-25 bashible 基于bash 的dsl 框架
2020-03-25 graphql-mesh mongoose 集成

导航

< 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
点击右上角即可分享
微信分享提示