RDD有哪几种创建方式

1).使用程序中的集合创建rdd
2).使用本地文件系统创建rdd
3).使用hdfs创建rdd,
4).基于数据库db创建rdd
5).基于Nosql创建rdd,如hbase
6).基于s3创建rdd,
7).基于数据流,如socket创建rdd

转载于:https://my.oschina.net/134596/blog/3038253

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spark创建RDD方式有以下几种: 1. 从一个已有的集合或序列中创建RDD:通过SparkContext.parallelize()方法或SparkContext.makeRDD()方法创建RDD。示例代码如下: ```python from pyspark import SparkContext sc = SparkContext("local", "RDD Example") data = [1, 2, 3, 4, 5] rdd = sc.parallelize(data) ``` 2. 通过读取外部数据源来创建RDD:通过SparkContext.textFile()或SparkContext.wholeTextFiles()方法来读取外部数据源创建RDD。示例代码如下: ```python from pyspark import SparkContext sc = SparkContext("local", "RDD Example") text_file = sc.textFile("/path/to/textfile") ``` 3. 通过转换已有的RDD创建新的RDD:通过对已有的RDD进行转换操作,生成新的RDDRDD的转换操作包括map、filter、flatMap、union等等。示例代码如下: ```python from pyspark import SparkContext sc = SparkContext("local", "RDD Example") data = [1, 2, 3, 4, 5] rdd = sc.parallelize(data) # 转换操作 squared_rdd = rdd.map(lambda x: x*x) ``` 4. 通过从存储系统中读取数据创建RDD:通过SparkContext.newAPIHadoopFile()或SparkContext.hadoopFile()方法来从存储系统(如HDFS、S3等)中读取数据创建RDD。示例代码如下: ```python from pyspark import SparkContext, SparkConf from pyspark.rdd import PortableDataStream conf = SparkConf().setAppName('HadoopRDD') sc = SparkContext(conf=conf) rdd = sc.newAPIHadoopFile( path='/path/to/data', inputFormatClass='org.apache.hadoop.mapreduce.lib.input.TextInputFormat', keyClass='org.apache.hadoop.io.LongWritable', valueClass='org.apache.hadoop.io.Text') ``` 5. 通过并行化已有的RDD创建新的RDD:通过对已有的RDD进行并行化操作,生成新的RDDRDD的并行化操作包括repartition、coalesce等等。示例代码如下: ```python from pyspark import SparkContext sc = SparkContext("local", "RDD Example") data = [1, 2, 3, 4, 5] rdd = sc.parallelize(data) # 并行化操作 repartitioned_rdd = rdd.repartition(2) ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值