摘要:
如下图:首先StreamingContext中设置的间隔秒数(此处为3秒),只是决定了job调度器每隔多久汇总接受器接收到的数据,作为一个批次处理(一个批次即一个rdd)。rdd会放入一个未处理的队列,rdd数据可以是空,即没有真正数据,这时候rdd.cou... 阅读全文
摘要:
看这个程序:import org.apache.kafka.common.serialization.StringDeserializerimport org.apache.spark.streaming.kafka010._import org.apach... 阅读全文
摘要:
数据标准化先定义一个dfimport org.apache.spark.ml.linalg.Vectorsval df = spark.createDataFrame(Seq( (0, Vectors.dense(1.0, 0.5, -1.0)), (1... 阅读全文
摘要:
使用spark-submit往yarn集群提交任务,deploy-mode可以采用client和cluster两种模式。若想使用hive功能,需要满足以下条件:初始化sparkSession对象的时候,指定enableHiveSupport选项;指定hive... 阅读全文
摘要:
我们知道,scala中Int类型不能为null,而Dataset中表示的Int值的IntegerType类型列却能为null。如果我们想产生一个IntegerType类型列为null的DataFrame该怎么做?下面的代码可以做到:import org.ap... 阅读全文
摘要:
Spark SQL支持用户自定义函数(UDF),我们可以方便的利用udf函数来完成各种数据处理操作。下面例子展示了用UDF功能对一个数据集进行转换操作(将输入df的某列进行处理,将处理结果作为新列附加在新生成的df上):var in = spark.crea... 阅读全文
摘要:
DataFrame和parquet文件以下spark表示SparkSession对象df表示DataFrame对象从parquet文件加载DataFrame:val df = spark.read.parquet("input_file_path.parqu... 阅读全文
摘要:
使用数据透视函数pivot:val list = List( (2017, 1, 100), (2017, 1, 50), (2017, 2, 100), (2017, 3, 50), (2018, 2, 200), (2018, 2,... 阅读全文
摘要:
groupBy分组和使用agg聚合函数demo:df.show+----+-----+---+|YEAR|MONTH|NUM|+----+-----+---+|2017| 1| 10||2017| 1| 5||2017| 2| 20||2... 阅读全文
摘要:
spark2+引入了SparkSession,封装了1.0的SparkContext和SqlContext。在spark-shell中有个spark变量是默认的SparkSession对象。读取和保存举例:spark表示SparkSession对象ds表示D... 阅读全文