本文介绍: 写死分区数: sparkSession.conf.set(‘spark.sql.shuffle.partitions’,数量)init_df.fillna(value={“{“name”:”未知姓名”,”age”:100}).show()init_df.fillna(value=999,subset=[“字段1″,”字段2”]).show()init_df.dropna(thresh=2,subset=[“字段1,字段2”]).show()fillna(value,subset):替换缺失值数据。

目录

一. Spark SQL中数据清洗的API有哪些,各自作用是什么?

二. 设置Spark SQL的shuffle分区数的方式有哪几种

三. 数据写出到数据库需要注意什么?

四. Spark程序运行集群分类


一. Spark SQL中数据清洗的API有哪些,各自作用是什么?

        1. 去重 

                Dorpduplicate:  桌度仆力K

        init_df.dropDuplicates().show()
            init_df.dropDuplicates(subset=[字段1,字段2]).show()

如果没有指定subset,那么就会对一整行的数据 进行比对, 如果全部都相同,那么就删除

        2. 去除空值

                        dropna : 桌那

            init_df.dropna(thresh=2,subset=[“字段1,字段2”]).show()
            init_df.dropna(thresh=2).show()

                init_df.dropna().show()

如果不传参数,只要有一个字段为null就删除全部

如果制定了subset,那么检查的范围就限定在subset里

thresh就是进一步指定范围的数值,至少有thresh个值不为空,才不会被删除

         3. 填充替换

                        fillna: feel那

            init_df.fillna(value=999).show()
            init_df.fillna(value=999,subset=[“字段1″,”字段2”]).show()
            init_df.fillna(value={“{“name”:”未知姓名”,”age”:100}).show()

                fillna(value,subset):替换缺失值数据

        value(是要替换的内容) , subset是要替换的范围 ,常用的是value = 字典类型的形式

二. 设置Spark SQL的shuffle分区数的方式有哪几种

        方式一:

                全局设置:  Spark.sql.shuffle.Partitions 数量

        方式二:

                动态设置shuffle分区数量 :  ./spark-submit –conf “spark.sql.shuffle.partitions=数量”

        方式三:

               写死分区数: sparkSession.conf.set(‘spark.sql.shuffle.partitions’,数量)

三. 数据写出到数据库需要注意什么?

        中文乱码问题。需要设置数据库编码,以及在连接URL中指定编码参数

        ?useUnicode=true&characterEncoding=utf-8

四. Spark程序运行集群分类

        Spark 集群 : Spark自带的集群 , 也称为Standalone

        Yarn集群:Spark程序运行在Yarn上

原文地址:https://blog.csdn.net/m0_49956154/article/details/135490593

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

如若转载,请注明出处:http://www.7code.cn/show_56042.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注