首页 > 其他分享 >dremio nessie 集成玩法

dremio nessie 集成玩法

时间:2024-01-09 10:00:30浏览次数:53  
标签:dremio iceberg 玩法 catalog nessie org spark

昨天我简单写了dremio 集成nessie 的玩法, 实际上dremio 与nessie 的集成可以分为两大类,一类是使用nessie 做为catalog 服务
(当然也是支持写入iceberg 的),一类是基于外部工具(spark,flink) 使用nessie 做为metadata storage 然后dremio 查询

参考玩法图

  • 外部工具类的

dremio nessie 集成玩法_apache

  • catalog 类的

此时nessie 同时可以做为一个catalog 存储,同时还可以结合s3 存储创建表数据(直接利用dremoio 管理iceberg 表)

dremio nessie 集成玩法_apache_02

玩法说明

  • catalog 模式的
    可以直接参考我以前写的
  • 外部工具型的
    简单说明下spark 集成的,spark 基于了3.5,spark 使用了本地软件包
    环境准备

 

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:
     build: .
     volumes:
     - ./dremio:/myappdemo
     ports:
       - "9047:9047"
       - "31010:31010"
  nessie:
     image: projectnessie/nessie:0.75.0-java
     ports:
        - "19120:19120"
        - "19121:19121"
spark 配置

spark.sql.extensions               org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions,org.projectnessie.spark.extensions.NessieSparkSessionExtensions
spark.sql.catalog.nessie.warehouse s3a://myws/   
# spark.sql.catalog.nessie.type      rest
spark.sql.catalog.nessie.uri       http://localhost:19120/api/v1 # 注意使用了v api
spark.sql.catalog.nessie.ref       main
spark.sql.catalog.nessie.authentication.type NONE
spark.sql.catalog.nessie.s3.endpoint    http://localhost:9000
spark.sql.catalog.nessie.catalog-impl   org.apache.iceberg.nessie.NessieCatalog
# spark.sql.catalog.nessie.io-impl       org.apache.iceberg.aws.s3.S3FileIO
spark.sql.catalog.nessie               org.apache.iceberg.spark.SparkCatalog
spark.hadoop.fs.s3a.access.key          minio
spark.hadoop.fs.s3a.secret.key          minio123
spark.hadoop.fs.s3a.endpoint            http://localhost:9000
spark.hadoop.fs.s3a.path.style.access   true
services:
minio:

spark sql shell

./bin/spark-sql \
--packages "org.apache.iceberg:iceberg-spark-runtime-3.5_2.12:1.4.0,org.projectnessie.nessie-integrations:nessie-spark-extensions-3.5_2.12:0.75.0,org.apache.hadoop:hadoop-aws:3.3.3"

效果

dremio nessie 集成玩法_apache_03

dremio 链接(使用v2 api)

dremio nessie 集成玩法_sql_04

配置s3(注意应该与spark 配置的实际的s3 key 是一样的。root path 可以不一样,核心是s3 的权限)

dremio nessie 集成玩法_spark_05

iceberg 表信息

dremio nessie 集成玩法_sql_06

查询刚才创建的表

dremio nessie 集成玩法_sql_07

nessie 系统效果

dremio nessie 集成玩法_apache_08

当然此时还是可以创建表的,源数据也是存储在nessie 中的

说明

dremio 官方也写了一些关于spark 以及flink 集成的文章,都值得参考学习下,当然可以结合实际使用,上边说的两种模式也是可以混合试试使用的,同时利用nessie 方便的分支管理能力,我们可以开发灵活的数据模型

参考资料

https://iceberg.apache.org/docs/latest/nessie/https://iceberg.apache.org/docs/1.4.3/nessie/

https://projectnessie.org/tools/iceberg/spark/

https://github.com/projectnessie/nessie

https://github.com/tabular-io/docker-spark-iceberg

https://projectnessie.org/tools/iceberg/flink/

https://docs.dremio.com/cloud/arctic/engines/flink/

https://projectnessie.org/tools/iceberg/flink/#reading-tables

https://www.dremio.com/blog/using-flink-with-apache-iceberg-and-nessie/

https://www.dremio.com/blog/intro-to-dremio-nessie-and-apache-iceberg-on-your-laptop/

https://github.com/rongfengliang/dremio-nessie-learning

标签:dremio,iceberg,玩法,catalog,nessie,org,spark
From: https://blog.51cto.com/rongfengliang/9156992

相关文章

  • 迈入AI智能时代!ChatGPT国内版免费AI助手工具 peropure·AI正式上线,打造场景化智慧服务
     当OpenAI发布ChatGPT的时候,没有人会意识到,新一代人工智能浪潮将给人类社会带来一场眩晕式变革。其中以ChatGPT为代表的AIGC技术加速成为AI领域的热门发展方向,推动着AI时代的前行发展。面对技术浪潮,清越科技(PeroPure)立足多样化生活场景、精准把握用户实际需求,持续精确Fine-......
  • dremio hive jdbc arp date 类型问题记录
    简单记录下碰到的一些问题分析arthasstack查看调用对于hive是类似的,我测试的是mysql的stackcom.mysql.cj.jdbc.result.ResultSetImplgetDate效果ffect(classcount:2,methodcount:4)costin329ms,listenerId:11ts=2023-12-2606:18:17;thread_name=e3-1a758f......
  • dremio nessie数据源集成简单说明
    nessie是一个强大的支持类似git分之特性的apacheiceberg智能元数据存储,主要测试下基于nessiedremio元数据存储(catalog)集成参考架构环境准备docker-compose文件version:"3"services:minio:image:minio/minioports:-"9000:9000"-"19001:190......
  • 新玩法!如何在 PieCloudDB Database 中“种”一棵圣诞树?
    随着圣诞节的到来,很多城市也都张灯结彩,处处充满了节日气息。圣诞节当然离不开圣诞树啦!和家人一起挂上圣诞装饰,树下放上互相准备的小礼物,小小的仪式感,充满了浪漫与温馨。今天,我们将教你在PieCloudDBDatabase中“种”下今年的圣诞树!就像种树前需要松土、挖种植坑,在拥有一棵圣诞树......
  • dremio nessie 集成玩法
    昨天我简单写了dremio集成nessie的玩法,实际上dremio与nessie的集成可以分为两大类,一类是使用nessie做为catalog服务(当然也是支持写入iceberg的),一类是基于外部工具(spark,flink)使用nessie做为metadatastorage然后dremio查询参考玩法图外部工具类的catalog类的......
  • linux下好玩的shell程序与玩法
    1主要包括如下程序: sudoaptinstalllolcataewancowsayjp2alinuxlogoneoftechfortunepvcmatrixcbonsai2fortune:人们喜欢阅读随机的预测或说法,该工具用来缓解无聊的时光。上边是没有lolcat的效果,下边是加了lolcat的效果就是彩色的。3lolcat:无条件将输入涂上五颜......
  • dremio nessie数据源集成简单说明
    nessie是一个强大的支持类似git分之特性的apacheiceberg智能元数据存储,主要测试下基于nessiedremio元数据存储(catalog)集成参考架构环境准备docker-compose文件version:"3"services:minio:image:minio/minioports:-"90......
  • 【彩虹六号】各个地图有意思的玩法笔记(自用)
    【彩虹六号】各个地图有意思的玩法笔记(自用)每次看到一些有趣的方法总是忘记,干脆做个笔记吧运河运河二楼外墙摔炮听切运河二楼外墙摔炮听切实战方向放大需要注意这个地方可以收人头/被抓站在钢琴房偷天窗天窗偷人法先给天窗标点去钢琴房敲洞仅限开局三十秒木屋A......
  • dremio hive jdbc arp date 类型问题记录
    简单记录下碰到的一些问题分析arthasstack查看调用stackcom.mysql.cj.jdbc.result.ResultSetImplgetDate效果ffect(classcount:2,methodcount:4)costin329ms,listenerId:11ts=2023-12-2606:18:17;thread_name=e3-1a758f......
  • dremio 24.3.0 发布
    24.3版本对于bugfix以及新功能都是不少的一些比较方便的新功能支持parquetv2文件,支持元数据清理命令 VACUUMCATALOGCTAS支持排序Array相关操作函数的提供对于以及基于文件的数据源系统支持,自动的增量以及全量反射处理parquet文件字典编码支持COPYINTO增强,支持parquet以......