spark组件-spark core(批处理)-rdd创建

1. 从集合创建‌

通过 SparkContext.parallelize() 或 makeRDD() 将本地集合(如 List)转换为 RDD,可手动指定分区数:

java 复制代码
List<String> list = Arrays.asList("hello", "hi", "spark", "world", "hi");
JavaRDD<String> javaRDD = sc.parallelize(list, 2);

2. 从外部存储创建‌

支持 HDFS、本地文件系统等数据源,如

java 复制代码
JavaRDD<String> stringRDD = sc.textFile("hdfs://path/file.txt") ‌

3. 从其他 RDD 转换‌

通过转换算子(如 map、groupByKey)生成新 RDD,形成血缘关系链。

例子

java 复制代码
package com.spark.qichsiii.core.a_rdd_create;

import org.apache.spark.SparkConf;
import org.apache.spark.api.java.JavaRDD;
import org.apache.spark.api.java.JavaSparkContext;

import java.util.Arrays;
import java.util.List;

public class RddCreationFromCollection {
    public static void main(String[] args) {
        // 1.创建配置对象
        SparkConf conf = new SparkConf().setMaster("local[*]").setAppName("RddCreation");
        // 2.创建sparkContext
        JavaSparkContext sc = new JavaSparkContext(conf);
        // 3.编写代码
        // a.集合创建
        JavaRDD<String> stringRDD = sc.parallelize(Arrays.asList("hello","spark"));
		// b.从外部存储创建
		//JavaRDD<String> stringRDD = sc.textFile("input") ‌
        List<String> collect = stringRDD.collect();

        for(String s: collect){
            System.out.println(s);
        }
        // 4.关闭sc
        sc.stop();
    }
}
相关推荐
weixin_177297220695 小时前
家政小程序系统开发:打造便捷高效的家政服务平台
大数据·小程序·家政
galaxylove6 小时前
Gartner发布数据安全态势管理市场指南:将功能扩展到AI的特定数据安全保护是DSPM发展方向
大数据·人工智能
keke_俩个科10 小时前
ShardingSphere分库分表基础配置与使用说明
java·数据库·分布式·spring
扁豆的主人10 小时前
分布式一致性
分布式
扁豆的主人12 小时前
Elasticsearch
大数据·elasticsearch·jenkins
想ai抽13 小时前
Flink重启策略有啥用
大数据·flink
TMT星球13 小时前
TCL华星t8项目正式开工,总投资额约295亿元
大数据·人工智能
阿里云大数据AI技术13 小时前
云栖实录 | 驶入智驾深水区:广汽的“数据突围“之路
大数据·人工智能