首页 > 其他分享 >dremio FileDatasetHandle 简单说明

dremio FileDatasetHandle 简单说明

时间:2024-02-21 09:04:57浏览次数:28  
标签:src dremio java FileDatasetHandle 简单 main com

FileDatasetHandle 是DatasetHandle的扩展,核心是对于文件系统类的处理(dremio 对于文件系统的支持主要是基于hdfs)
同时支持对于不同表格式的处理(delta lake,iceber,parquet),单独说明FileDatasetHandle主要是因为此实现比较重要
dremio 不少文件的处理都和此有关联

FileDatasetHandle的一些功能

  • 配置选项 
    关于支持的最大文件数,excel 文件数。。。
  • 获取数据集的元数据getDatasetMetadata
  • 获取分片的chunks listPartitionChunks
  • 签名信息 provideSignature
  • 工具类checkMaxFiles(只有在外部存储的时候需要),getMaxFilesLimit (每个格式插件有自己的限制,默认应该使用格式插件的,只有在不能确定格式的时候使用),checkMultifileStatus(检查文件是否自上次去读之后有变动,基于了缓存以及FileSystem 的getFileAttributes 进行对比)
  • 元数据校验 metadataValid

子类

可以看出不少关于湖仓表格式的都实现了此接口

使用的类

  • HomeFileSystemStoragePlugin
  • FormatPlugin
  • CatalogImpl
  • MFunctionVersionedSourceMetadata
  • FileSystemPlugin
  • EasyFormatPlugin
  • AccelerationStoragePlugin

说明

dremio 对于文件系统的表格式读取,不少都会使用到FileDatasetHandle的一些特定子类,了解FileDatasetHandle的一些功能还是比较有意义的

参考资料

connector/src/main/java/com/dremio/connector/metadata/DatasetHandle.java
sabot/kernel/src/main/java/com/dremio/exec/store/dfs/FileDatasetHandle.java
sabot/kernel/src/main/java/com/dremio/exec/store/dfs/FormatPlugin.java
dac/backend/src/main/java/com/dremio/dac/homefiles/HomeFileSystemStoragePlugin.java
services/accelerator/src/main/java/com/dremio/service/reflection/materialization/AccelerationStoragePlugin.java

标签:src,dremio,java,FileDatasetHandle,简单,main,com
From: https://www.cnblogs.com/rongfengliang/p/18013714

相关文章

  • P5057 [CQOI2006] 简单题
    原题链接题解区间修改+单点查询对于一个点,查询的时候翻转的次数如果是奇数,是1,如果是偶数,是0所以题目转变成对区间上的点加一,然后求单点的奇偶性树状数组对一串序列加1,相当于对其差分序列的\([l]++,[r+1]--\)code#include<bits/stdc++.h>usingnamespacestd;inta[10000......
  • [设计模式]创建型模式-简单工厂模式
    简介简单工厂模式又称为静态工厂模式,属于创建型模式,但不属于GOF23设计模式。由一个工厂对象决定创建出哪一种产品类的实例。简单工厂模式的实质是由一个工厂类根据传入的参数,动态决定应该创建哪一个产品类。简单工厂适用场景:工厂类负责创建的对象比较少;客户端只需要知道传入工厂......
  • LInux下wc命令简单使用
    前言利用wc指令我们可以计算文件的Byte数、字数、或列数,如果不指定文件名称,或者所给予的文件名为"-",则wc指令会从标准输入设备读取数据。使用语法如下wc[-clw][--help][--version][文件...]参数如下-c或--bytes或--chars只显示Bytes数。-l或--lines显示行数。-w或--w......
  • Android 《ViewPagerStrip》简单应用
    布局文件activity_pager_tab_strip.xml<?xmlversion="1.0"encoding="utf-8"?><LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"......
  • 前端部署真的不简单
    原文地址:https://mp.weixin.qq.com/s/MUP0cAT8FbtE0sRX3ohptw现在大部分的中小型公司部署前端代码都是比较简单的,主要步骤如下:首先,通过脚手架提供的命令npmrunbuild打包前端代码,生成dist文件夹;最后,将dist文件夹丢给后台开发人员放在他们的工程里面,随后台一起部署;现在普遍是......
  • Android 《ViewPager》简单应用
    布局文件<?xmlversion="1.0"encoding="utf-8"?><LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://sche......
  • Docker-Compose简单入门使用
    Dockercompose使用DockerCompose官方文档:https://docs.docker.com/compose/一、DockerCompose安装如果安装使用DockerDesktop默认就安装了DockerCompose,dockerCompose安装参考:https://www.cnblogs.com/morang/p/devops-docker24-composev2-install.htmlhttps://blog......
  • dlt 与dbt的直接集成简单试用
    dlt直接基于cli包装了dbt的运行,对于希望通过dlt进行etl之后,还想运行dbt的模型处理的场景就比较方便了,而且dlt与dbt的集成也是官方一个很不错的特性,以下是一个简单试用环境准备docker-compose version:"3"services:pg:image:postgres:16......
  • 幻兽帕鲁服务器搭建部署手把手简单教程
    幻兽帕鲁服务器搭建部署手把手简单教程,本文将更新详细的腾讯轻量云服务器搭建幻兽帕鲁的部署教程。在云服务器领域,腾讯云以其卓越的技术实力与丰富的应用模板为各类用户提供了一站式的解决方案。针对广大游戏玩家的需求,腾讯云现推出了极具吸引力的第三方游戏应用模板——幻兽帕鲁W......
  • dremio node节点统计信息显示问题简单说明
    可能有人注意到dremio管理界面的统计信息为N/A,而且因为web端进行了一些额外显示处理,造成一些疑惑界面效果接口返回数据信息 目前从官方代码来说,此显示是正常的,因为计算的是百分比,而且当系统负载比较低的时候,结果基本就为0web处理NodeActivityView.js参考代码......