nessie 是一个强大的支持类似git 分之特性的apache iceberg 智能元数据存储, 主要测试下基于nessie dremio 元数据存储(catalog)
集成参考架构

环境准备
- docker-compose 文件
 
version: "3"
services:
  minio:
    image: minio/minio
    ports:
      - "9000:9000"
      - "19001:19001"
    environment:
      MINIO_ACCESS_KEY: minio
      MINIO_SECRET_KEY: minio123
    command: server --console-address :19001 --quiet /data
  dremio:
     image: dremio/dremio-oss:24.3.0
     ports:
       - "9047:9047"
       - "31010:31010"
  nessie:
     image: projectnessie/nessie:0.75.0-java
     ports:
        - "19120:19120"
        - "19121:19121"services:简单说明,minio 主要是存储元数据的,nessie 就是测试的支持类似git的元数据存储服务
配置
- 启动服务
 
docker-compose up -d- 配置
 
因为是使用了类s3的,需要配置一些兼容属性 
nessie 基本配置(没有使用认证) 

存储配置(s3 信息)


效果

使用
可以配置一个s3 的数据源,然后将数据表,保存到nessie catalog 中,同时还可以创建不同的分支包含不同的提交信息,以及撤销 
合并
- 保存效果
 

- 创建新分支
 


- 查询数据
 

说明
以上是一些简单的操作,只是说明下使用,实际功能还是很强大的,可以实现类似git 的元数据版本管理,对于进行数据etl 处理还是很方便的
官方也提供了比较完整的说明,值得学习下
参考资料
https://docs.dremio.com/current/sonar/query-manage/managing-data/nessie/ 
https://hub.docker.com/u/projectnessie 
https://docs.dremio.com/current/sonar/data-sources/nessie-catalogs/ 
https://projectnessie.org/










