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();
    }
}
相关推荐
Elastic 中国社区官方博客几秒前
使用 Elastic 中的 OpenTelemetry 为 Nginx 实现端到端分布式追踪的实用指南
大数据·运维·分布式·elasticsearch·搜索引擎·信息可视化·全文检索
aliprice22 分钟前
逆向拆解:用速卖通图片搜索破解竞品设计,找到你的差异化定价空间
大数据·跨境电商·电商
hg011839 分钟前
埃及:在变局中重塑发展韧性
大数据·人工智能·物联网
win x40 分钟前
Redis 分布式锁
数据库·redis·分布式
向量引擎小橙1 小时前
“2026数据枯竭”警报拉响:合成数据如何成为驱动AI进化的“新石油”?
大数据·人工智能·深度学习·集成学习
飞Link1 小时前
【大数据】SparkSQL常用操作
大数据·数据挖掘·spark
m0_466525292 小时前
东软添翼AI 2.0获评医疗健康标杆AI Agent TOP10
大数据·人工智能
光算科技2 小时前
AI重写工具导致‘文本湍流’特征|如何人工消除算法识别标记
大数据·人工智能·算法
geoqiye3 小时前
2026官方认证:贵阳宠物行业短视频运营TOP5评测
大数据·python·宠物
Elastic 中国社区官方博客3 小时前
JINA AI 与 Elasticsearch 的集成
大数据·人工智能·elasticsearch·搜索引擎·全文检索·jina