
Delta lake with java
文章平均质量分 58
一个平凡的IT农民工
一个平凡的40+农民工
展开
-
Delta lake with Java--读《Delta Lake Up and Running》总结
第三章 Delta lake最基本操作,包括建库,建表,描述表结构,插入数据,查询数据,可以通过3种方式实现,分别是spark sql+sql语句,spark dataframe api,deltatable api,个人觉得用sql语句比较简单。第七章 表结构变化处理,主要是两类处理,一类是固定结构,遇到不一致的就报错,另外一个类就是结构可以根据数据变化,要实现主要在数据写入的时候,设置option("mergeSchema",true)。原创 2024-05-05 20:59:07 · 628 阅读 · 3 评论 -
Delta lake with Java--使用stream同步数据
今天继续学习Delta lake Up and Running 的第8章,处理流数据,要实现的结果就是在一个delta表(名为:YellowTaxiStreamSource)插入一条数据,然后通过流的方式能同步到另外一个delta表 (名为:YellowTaxiStreamTarget)。接着在YellowTaxiStreamSource更新数据YellowTaxiStreamTarget也能更新。至于删除也尝试过了,发现删除是没有办法同步的。原创 2024-05-05 16:02:14 · 466 阅读 · 1 评论 -
Delta lake with Java--liquid clustering
第一个遇到的情况,不能像之前那样逐列定义表,即使用sql语句也不行,一定要从另外一个表select数据才能建表成功,具体见代码中sqlText定义。比较一下查询效率,好像没有什么区别,也不知道是不是我的代码有问题,还是本身还是实验阶段。先记录下来,后面继续跟进学习。第二个遇到的情况,判断表是否存在不生效,所以建表的sql运行完第一次后要注释掉否则就会报错。原创 2024-05-04 15:32:57 · 347 阅读 · 0 评论 -
Delta lake with Java--分区表
今天尝试一下将昨天的数据操作建立的表换成分区表,参考Delta Lake Up and Running做法用分区表的方式来更新数据。还要比较一下分区表的查询与非分区表的查询,结果显示分区表的查询速度要比非分区表要快。从最后一张图红框可以看到比较结果,分区表查询效率要高一点。原创 2024-05-04 14:24:56 · 599 阅读 · 0 评论 -
Delta lake with Java--数据增删改查
里面涉及spark的TimestampType类型,如何将字符串输入到TimestampType列,找了几个小时才找到答案,具体参考了如下连接,原来直接将string转成java.sql.Timestamp即可,于是在网上找了一个方法,实现了转换,转换代码非原创,也是借鉴其他大牛的。之前写的关于spark sql 操作delta lake表的,总觉得有点混乱,今天用Java以真实的数据来进行一次数据的CRUD操作,所涉及的数据来源于Delta lake up and running配套的 Git。原创 2024-05-03 15:52:51 · 912 阅读 · 3 评论 -
Delta lake with Java--利用spark sql操作数据2
里面涉及的数据集YellowTaxi,在如下地址下载,这个也是Delta Lake Up and Runing的配套仓库。具体运行结果如下,没有什么需要注意的,纯粹就是输入一下代码,验证一下结果。原创 2024-05-01 15:36:52 · 944 阅读 · 1 评论 -
Delta lake with Java--利用spark sql操作数据1
代码主要实现建立一个表名为YellowTaxi,插入5条数据,然后查询YellowTaxi这5条数据,再建立一个表YellowTaxiPartitioned,YellowTaxiPartitioned是分区表。具体文字内容如下,从结果可以看出分区表的查询效率要比不分区表要好,后面建表还是要用分区表。不分区查询开始时间(含毫秒): 2024-05-01 11:29:39.655。不分区查询结束时间(含毫秒): 2024-05-01 11:29:40.130。原创 2024-05-01 11:36:12 · 958 阅读 · 6 评论 -
Delta lake with Java--将数据保存到Minio
3、修改pom.xml增加hadoop-aws依赖,这里要注意版本号,不知道如何确定版本号,去spark下载目录里面的jar目录,找hadoop-client-api-***.jar,其中***就是版本号了。config("spark.hadoop.fs.s3a.fast.upload.buffer", "bytebuffer")这一行一定要添加,否则会报错。1、安装Minio,去官网下载最新版本的Minio,进入下载目录,运行如下命令,曾经尝试过用docker来安装,不过数据无法保存成功。原创 2024-04-30 15:49:12 · 553 阅读 · 1 评论 -
Delta lake with Java--在spark集群上运行程序
今天要实现的内容是如何将昨天的HelloDetlaLake 在spark集群上运行,。里面的解决方法就是把Delta lake相关的jar包复制到spark安装目录下面的jar目录里面,于是决定尝试一下。复制完后,记得重新运行第2和第3步,重启spark。该问题又花了半天的时间到处找,最终找到一个类似的。原创 2024-04-29 08:58:50 · 502 阅读 · 0 评论 -
Delta lake with Java--入门
Detla lake with Java 入门原创 2024-04-28 09:53:47 · 393 阅读 · 2 评论