Pyspark综合案例(pyspark安装和java运行环境配置)

一、RDD对象

PySpark支持多种数据的输入,在输入完成后,都会得到一个:RDD类的对象

RDD全称为:弹性分布式数据集(Resilient Distributed Datasets)

PySpark针对数据的处理,都是以RDD对象作为载体,即:

  • 数据存储在RDD内
  • 各类数据的计算方法,也都是RDD的成员方法
  • RDD的数据计算方法,返回值依旧是RDD对象

PySpark的编程模型可以归纳为:准备数据到RDD -> RDD迭代计算 -> RDD导出为list、文本文件等,即:源数据 -> RDD -> 结果数据

二、Python 数据容器转 RDD 对象

PySpark支持通过SparkContext对象的parallelize成员方法,将:list、tuple、set、dict、str转换为PySpark的RDD对象

PySpark也支持通过SparkContext入口对象,来读取文件,来构建出RDD对象。

代码案例:

python 复制代码
"""
#通过PySpark代码加载数据,即数据输入
"""
from pyspark import SparkConf,SparkContext
conf = SparkConf().setMaster("local[*]").setAppName("test_spark")
sc = SparkContext(conf = conf)

# 通过parallelize方法将Python对象加载到Spark内,成为RDD对象
rdd1 = sc.parallelize([1, 2, 3, 4, 5])
rdd2 = sc.parallelize((1, 2, 3, 4, 5))
rdd3 = sc.parallelize("abcdefg")
rdd4 = sc.parallelize({1, 2, 3, 4, 5})
rdd5 = sc.parallelize({"key1": "value1", "key2": "value2"})

# 如果要查看RDD里面有什么内容,需要用collect()方法
print(rdd1.collect())
print(rdd2.collect())
print(rdd3.collect())
print(rdd4.collect())
print(rdd5.collect())

打印结果:

pyspark安装方法 :

第一种方法时命令行安装:pip install pyspark;

第二种方式是直接在Pycharm进行安装,如下图所示;

安装完成后,运行代码出现缺少Java环境依赖,需要配置java运行环境才可以运行Pyspark导入报对象,配置环境的过程可以参考博客教程:

java 环境配置(详细教程)_java环境配置_多加点辣也没关系的博客-CSDN博客

JDK 8.0 的安装包已上传资源包,希望可以帮助到大家!

相关推荐
李可以量化4 分钟前
Redis Client 从了解到精通(二)下:String 类型进阶操作全解
redis·git·python·量化交易·qmt
wy3136228214 分钟前
Git——ignore让项目的 target 目录真正被忽略(忽略其他文件也是同样的道理)
开发语言·git
格林威4 分钟前
C#图像分块处理:图像按行或按块(Tile)切分,多个 CPU 核心同时处理不同的区域
开发语言·图像处理·人工智能·机器学习·计算机视觉·c#·工业相机
leisoo809712 分钟前
财报舞弊预警系统实战用Python挖掘应收存货异常因子 IG50免费开源股票数据API接口
开发语言·python
Query*12 分钟前
Agent 开发之项目 AI Native 化:通过大模型与 RAG 赋予产品智能能力
java·人工智能·ai
孫治AllenSun12 分钟前
【LangChain4J-03】Springboot 项目搭建框架
java·spring boot·后端
君顾113 分钟前
AI新零售线上商城系统实战:架构设计与开发全流程指南
java·开发语言·零售
wind1003219 分钟前
Outdated Visual C++ Redistributable 过时 VC++ 运行库报错修复
开发语言·c++
吾皇斯巴达25 分钟前
O_DIRECT与gcsfuse的go程序中实现内存页面对齐
开发语言·后端·golang
qq_4850152134 分钟前
MyBatis-Plus 3.x FieldStrategy 作用
java·数据库·mybatis