首页 > 其他分享 >Iceberg从入门到精通系列之十五:Spark集成Iceberg

Iceberg从入门到精通系列之十五:Spark集成Iceberg

时间:2023-09-11 10:05:44浏览次数:37  
标签:Iceberg 入门 hive 3.4 iceberg spark Spark



Iceberg从入门到精通系列之十五:Spark集成Iceberg

  • 一、下载Spark安装包
  • 二、解压Spark安装包
  • 三、配置环境变量
  • 四、激活环境变量
  • 五、下载Spark iceberg的jar包
  • 六、Spark集成Iceberg
  • 七、Spark配置Catalog
  • 八、配置Hive Catalog
  • 九、配置Hadoop Catalog
  • 十、spark集成hive
  • 十、启动Spark shell


一、下载Spark安装包

下载spark-3.4.1:

二、解压Spark安装包

tar -zxvf spark-3.4.1-bin-hadoop3.tgz

mv spark-3.4.1-bin-hadoop3 spark-3.4.1

三、配置环境变量

export SPARK_HOME=/opt/module/spark-3.4.1
export PATH=$PATH:$SPARK_HOME/bin

四、激活环境变量

source /etc/profile.d/spark_env.sh

五、下载Spark iceberg的jar包

下载Spark iceberg的jar包:

或者从Iceberg官网下载:

六、Spark集成Iceberg

cp iceberg-spark-runtime-3.4_2.13 /module/spark-3.4.1/jars/

七、Spark配置Catalog

Spark支持两种Catalog的设置:

  • hive和hadoop

Hive Catalog就是Iceberg表存储使用Hive默认的数据路径,Hadoop Catalog需要指定Iceberg格式表存储路径。

八、配置Hive Catalog

vim conf/spark-defaults.conf

spark.sql.catalog.hive_prod

org.apache.iceberg.spark.SparkCatalog
spark.sql.catalog.hive_prod.type = hive
spark.sql.catalog.hive_prod.url = thrift://hadoop1:9083

九、配置Hadoop Catalog

vim conf/spark-defaults.conf

spark.sql.catalog.hadoop_prod = org.apache.iceberg.spark.SparkCatalog
spark.sql.catalog.hadoop_prod.type = hadoop
spark.sql.catalog.hadoop_prod.warehouse = hdfs://hadoop1:8020/warehouse/spark-iceberg

十、spark集成hive

Hive引入Iceberg的jar包:

mkdir auxlib
cp iceberg-hive-runtime-1.1.0.jar /opt/module/hive/auxlib
cp libfb303-0.9.3.jar /opt/module/hive/auxlib

spark-env.sh中添加hive配置

export HIVE_CONF_DIR=/moudle/hive-3.4.1/conf

复制hive配置文件到Iceberg的目录下

cp /opt/module/hive/conf/hive-site.xml ./conf/

十、启动Spark shell

bin/spark-sql


标签:Iceberg,入门,hive,3.4,iceberg,spark,Spark
From: https://blog.51cto.com/u_12080573/7432187

相关文章

  • Iceberg从入门到精通系列之八:flink sql 创建Iceberg表
    Iceberg从入门到精通系列之八:flinksql创建Iceberg表一、创建数据库二、创建表三、创建分区表四、使用LIKE语法建表五、创建主键表一、创建数据库createdatabaseiceberg_db;useiceberg_db;二、创建表createtable`hive_catalog`.`default`.`sample`(idbigintcomment'un......
  • Iceberg从入门到精通系列之七:Flink SQL创建Catalog
    Iceberg从入门到精通系列之七:FlinkSQL创建Catalog一、语法说明二、flink集成hivejar包三、放到指定目录四、启动hivemetastore服务五、创建hivecatalog六、查看catalog七、HadoopCatalog八、创建sql-client初始化文件九、启动flinksql指定初始化文件一、语法说明createcat......
  • PostgreSQL数据库从入门到精通系列之五:深入理解lsn_proc、lsn_commit、lsn、txId、ts_
    PostgreSQL数据库从入门到精通系列之五:深入理解lsn_proc、lsn_commit、lsn、txId、ts_usec一、深入理解lsn_proc二、深入理解lsn_commit三、深入理解lsn四、深入理解txId五、深入理解ts_usec一、深入理解lsn_proc在PostgreSQL中,lsn_proc是一个内置函数,用于将逻辑日志位置(LSN)转换......
  • PostgreSQL数据库从入门到精通系列之六:深入理解逻辑复制槽,创建逻辑复制槽,删除逻辑复制
    PostgreSQL数据库从入门到精通系列之六:深入理解逻辑复制槽,创建逻辑复制槽,删除逻辑复制槽一、逻辑复制槽二、创建逻辑复制槽三、删除逻辑复制槽一、逻辑复制槽在PostgreSQL中,逻辑复制槽是一种用于实现逻辑复制的功能。逻辑复制槽允许将源数据库的更改流式传输到目标数据库,并使目标......
  • Iceberg从入门到精通系列之五:Zeppelin集成iceberg,创建iceberg普通表和分区表,并插入数
    Iceberg从入门到精通系列之五:Zeppelin集成iceberg,创建iceberg普通表和分区表,并插入数据一、Zeppelin集成iceberg二、查看catalog三、使用数据库四、查看表五、创建表六、插入数据七、查询数据八、创建分区表九、分区表插入数据十、查询分区表数据一、Zeppelin集成icebergZeppelin......
  • Strimzi从入门到精通系列之三:部署Kafka Connect
    Strimzi从入门到精通系列之三:部署KafkaConnect一、概述二、将KafkaConnect部署到Kubernetes集群三、KafkaConnect配置四、为多个实例配置KafkaConnect五、添加连接器六、自动使用连接器插件构建新的容器映像七、使用KafkaConnect基础镜像中的连接器插件构建新的容器镜......
  • Strimzi从入门到精通系列之二:部署Kafka
    Strimzi从入门到精通系列之二:部署Kafka一、认识Strimzi二、Strimzi的核心知识点三、Kafka集群、TopicOperator、UserOperator四、部署Kafka集群五、使用ClusterOperator部署TopicOperator六、使用ClusterOperator部署UserOperator一、认识StrimziStrimzi是一款用于在......
  • Strimzi从入门到精通系列之一:部署Cluster Operator
    Strimzi从入门到精通系列之一:部署ClusterOperator一、认识Strimzi二、Strimzi的核心知识点三、认识ClusterOperator四、部署ClusterOperator以监视单个命名空间五、部署ClusterOperator以监视多个命名空间六、部署ClusterOperator以监视所有命名空间一、认识StrimziSt......
  • Iceberg从入门到精通系列之六:Flink集成Iceberg
    Iceberg从入门到精通系列之六:Flink集成Iceberg一、下载Flink二、解压Flink安装包三、配置环境变量四、激活环境变量五、下载Icebergflinkjar包六、部署Icebergflinkjar包七、修改flink配置八、启动flink九、启动flinksqlclient一、下载Flink下载Flink:https://www.apache.o......
  • Iceberg从入门到精通系列之四:详细整理出Iceberg支持的字段类型,创建包含所有类型的表,并
    Iceberg从入门到精通系列之四:详细整理出Iceberg支持的字段类型,创建包含所有类型的表,并插入数据一、Iceberg表支持的字段类型二、创建包含所有类型的表三、插入数据一、Iceberg表支持的字段类型BOOLEANTINYINTSMALLINTINTEGERBIGINTFLOATDOUBLEDECIMALDATETIMESTAMPSTRINGUUIDFIXE......