当前位置: 首页 > news >正文

linux新建网站石家庄个人谁做网站

linux新建网站,石家庄个人谁做网站,网站建设实验,华强北是什么意思基于spark3.4.2iceberg1.6.1搭建本地调试环境 文章目录 基于spark3.4.2iceberg1.6.1搭建本地调试环境环境准备使用maven构建sparksql编辑SparkSQL简单任务附录A iceberg术语参考 环境准备 IntelliJ IDEA 2024.1.2 (Ultimate Edition)JDK 1.8Spark 3.4.2Iceberg 1.6.1 使用mave…

基于spark3.4.2+iceberg1.6.1搭建本地调试环境

文章目录

  • 基于spark3.4.2+iceberg1.6.1搭建本地调试环境
    • 环境准备
    • 使用maven构建sparksql
    • 编辑SparkSQL简单任务
    • 附录A iceberg术语
    • 参考

环境准备

  • IntelliJ IDEA 2024.1.2 (Ultimate Edition)
  • JDK 1.8
  • Spark 3.4.2
  • Iceberg 1.6.1

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

使用maven构建sparksql

pom文件

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.donny.demo</groupId><artifactId>iceberg-demo</artifactId><version>1.0-SNAPSHOT</version><packaging>jar</packaging><name>iceberg-demo</name><url>http://maven.apache.org</url><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><spark.version>3.4.2</spark.version><iceberg.version>1.6.1</iceberg.version><parquet.version>1.13.1</parquet.version><avro.version>1.11.3</avro.version><parquet.hadoop.bundle.version>1.8.1</parquet.hadoop.bundle.version></properties><dependencies><dependency><groupId>org.apache.spark</groupId><artifactId>spark-core_2.12</artifactId><version>${spark.version}</version><exclusions><exclusion><groupId>org.apache.avro</groupId><artifactId>avro</artifactId></exclusion></exclusions></dependency><dependency><groupId>org.apache.spark</groupId><artifactId>spark-sql_2.12</artifactId><version>${spark.version}</version><exclusions><exclusion><groupId>org.apache.parquet</groupId><artifactId>parquet-column</artifactId></exclusion><exclusion><groupId>org.apache.parquet</groupId><artifactId>parquet-hadoop-bundle</artifactId></exclusion><exclusion><groupId>org.apache.parquet</groupId><artifactId>parquet-hadoop</artifactId></exclusion></exclusions></dependency><dependency><groupId>org.apache.iceberg</groupId><artifactId>iceberg-core</artifactId><version>${iceberg.version}</version></dependency><dependency><groupId>org.apache.iceberg</groupId><artifactId>iceberg-spark-3.4_2.12</artifactId><version>${iceberg.version}</version></dependency><dependency><groupId>org.apache.iceberg</groupId><artifactId>iceberg-spark-extensions-3.4_2.12</artifactId><version>${iceberg.version}</version><exclusions><exclusion><groupId>org.antlr</groupId><artifactId>antlr4</artifactId></exclusion><exclusion><groupId>org.antlr</groupId><artifactId>antlr4-runtime</artifactId></exclusion></exclusions></dependency><dependency><groupId>org.apache.parquet</groupId><artifactId>parquet-column</artifactId><version>${parquet.version}</version></dependency><dependency><groupId>org.apache.parquet</groupId><artifactId>parquet-hadoop</artifactId><version>${parquet.version}</version></dependency><dependency><groupId>org.apache.parquet</groupId><artifactId>parquet-hadoop-bundle</artifactId><version>${parquet.hadoop.bundle.version}</version></dependency><dependency><groupId>org.apache.avro</groupId><artifactId>avro</artifactId><version>${avro.version}</version></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>3.8.1</version><scope>test</scope></dependency></dependencies>
</project>

在 idea 中 直接使用iceberg 生成好的 runtime jar,无法attach 不上 iceberg 的源码,为了解决这个问题把maven 依赖改成上面的pom文件上的iceberg依赖。

<dependency><groupId>org.apache.iceberg</groupId><artifactId>iceberg-spark-runtime-3.4_2.12</artifactId><version>1.6.1</version>
</dependency>

编辑SparkSQL简单任务

  1. 指定了 catalog 类型为 hadoop。可以方便简单的本地调试。
  2. 创建非分区的iceberg原生表
  3. 插入数据
  4. 查询数据(展示数据)
package com.donny.demo;import org.apache.iceberg.expressions.Expressions;
import org.apache.iceberg.spark.Spark3Util;
import org.apache.iceberg.spark.actions.SparkActions;
import org.apache.spark.api.java.function.FilterFunction;
import org.apache.spark.sql.AnalysisException;
import org.apache.spark.sql.Dataset;
import org.apache.spark.sql.Row;
import org.apache.spark.sql.SparkSession;
import org.apache.spark.sql.catalog.Table;import java.util.Objects;/*** @author 1792998761@qq.com* @version 1.0* @since 2024年09月26日*/
public class IcebergSparkDemo {public static void main(String[] args) throws AnalysisException {SparkSession spark = SparkSession.builder().master("local").appName("Iceberg spark example").config("spark.sql.extensions", "org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions").config("spark.sql.catalog.local", "org.apache.iceberg.spark.SparkCatalog").config("spark.sql.catalog.local.type", "hadoop") //指定catalog 类型.config("spark.sql.catalog.local.warehouse", "iceberg_warehouse").getOrCreate();spark.sql("create database iceberg_db");spark.sql("CREATE TABLE local.iceberg_db.table (id bigint, data string) USING iceberg ");spark.sql("INSERT INTO local.iceberg_db.table VALUES (1, 'a'), (2, 'b'), (3, 'c')");Dataset<Row> result = spark.sql("select * from local.iceberg_db.table order by data");result.show();spark.close();}
}

附录A iceberg术语

  • Schema – 表中的字段名称和类型
  • Partition spec – 定义如何从数据字段导出分区值。
  • Partition tuple – 分区元组是存储在每个数据文件中的分区数据的元组或结构体
  • Snapshot – 表在某个时间点的状态,包括所有数据文件的集合。
  • Snapshot log – 快照日志是记录表当前快照随时间变化情况的元数据日志。该日志是一个时间戳和ID对的列表:当前快照发生变化的时间和当前快照发生变化的ID。
  • Manifest list – 列出清单文件的文件;每个快照一个。
  • Manifest – 列出数据或删除文件的文件;快照的子集。
  • Data file – 包含表行的文件。
  • Delete file – 对表格中按位置或数据值删除的行进行编码的文件。

参考

Iceberg 源码阅读(一) 搭建本地调试环境

http://www.yayakq.cn/news/429474/

相关文章:

  • 一个免费的影视网站模板wordpress文章永久链接
  • 企业网站布局代码山东市网站建设
  • 企业做网站带来的好处seo的工作原理
  • 网站建设准备工作总结菏泽做网站建设找哪家好
  • 阿里巴巴做网站的wordpress站点标题字数
  • 数码网站模板百度山西授权代理
  • 广州康体设备网站建设广西高端网站建设
  • 用什么做网站好蓝科企业网站系统
  • 食品网站建设项目的预算果乐宝的网站建设
  • 邯郸手机网站开发价格去掉wordpress.org
  • 深圳住房和建设局网站 宝安ui设计是什么部门
  • 苏州精品网站建设建设医院网站的重点与难点在于
  • 常州市新北区建设局网站网站全局搜索如何做
  • 歌手网站建设简述建设网站的一般过程
  • 360全景网站制作经典php网站开发教程
  • 大连商城网站制作公司张家港网站制作建议
  • 网站设置成黑白注册公司没有地址怎么弄
  • 宣传推广方式有哪些网站网络推广优化
  • 怎么选择无锡网站建设品牌网站建设4小蝌蚪
  • 建站平台一键申请三方支付通道模板置换
  • 网站模板 哪个好怎么改wordpress的html
  • 网站开发大公司需要资格证吗无锡网站建设哪家公司好
  • 网站建设的落地页wordpress 后台汉化
  • 新云手机站官网咨询公司注册经营范围
  • 有做面食的网站吗站酷设计官网
  • 网站开发文档上传服务器上海有名的公司
  • html5炫酷的网站网站添加后台
  • 吸引流量的网站网站 备案 中国 名字吗
  • app设计网站seo营销学校
  • 做地方网站数据哪里来wordpress静态生成