导航:首页 > 编程语言 > sparkrddjava

sparkrddjava

发布时间:2023-02-01 03:15:54

⑴ Spark最基本的单位 RDD

最近在负责Spark Streaming 结合 Spark Sql的相关项目,语言是java,留下一些笔记,也供大家参考,如有错误,请指教!

1.RDD(Resilient Distributed Dataset):弹性分布式数据集。

2.RDD是只读的,由多个partition组成

3.Partition分区,和Block数据块是一一对应的

1.Driver:保存block数据,并且管理RDD和Block的关系

2.Executor 会启动一个BlockManagerSlave,管理Block数据并向BlockManagerMaster注册该Block

3.当RDD不再需要存储的时候,BlockManagerMaster将向BlockManagerSlave发送指令删除相应的Block。

Transformation:转换算子,这类转换并不触发提交作业,完成作业中间过程处理。

Action:行动算子,这类算子会触发SparkContext提交Job作业。

RDD的依赖关系有两种:窄依赖(narrow dependency)和宽依赖(wide dependency)。

窄依赖: 每一个parent RDD的Partition最多被子RDD的一个Partition使用

宽依赖: 多个子RDD的Partition会依赖同一个parent RDD的Partition

⑵ 怎样使用java开发spark程序

1、Spark 是基于内存的分布式计算框架,因为无需利用 HDFS 作为中间结果保存的介质,性能杠杠的。Spark 是由 Scala 实现的,所以最好学习一下 Scala(当然用 Python 和 Java 也是可以的)。(http://wdxtub.com/2016/04/11/spark-guide/)

为啥要用 Spark?
快!基于内存
易用!Scala, Java, Python 都支持,还有交互式的 Python 和 Scala 的 shell,可以快速进行原型开发
通用!批处理、交互查询、流处理、机器学习、图计算,样样精通
兼容!可以使用各种现有的技术作为底层,也可以自己独立运行
Spark 生态系统有哪些组件?
Spark SQL: 类似 Hive,支持在不同 RDD 上进行类似 SQL 的操作
Spark Streaming: 对于流数据进行处理
MLlib: 机器学习库
GraphX: 图并行框架

RDD 是什么?
在 Spark 框架中,最重要的是一类新的数据抽象,叫做 Resilient Distributed Dataset - RDD。RDD 是分布式存储在集群中的内存对象,按照值的范围或者哈希结果进行划分。与此同时 RDD 会记录关于数据进行的各种操作(每次操作都会生成新的 RDD),这样即使节点挂掉,也能够根据之前的操作日志重新得到损失的 RDD
RDD 支持2种操作:
转换(transformation):从现有的数据集创建一个新的数据集
动作(actions):在数据集上运行计算后,返回一个值给驱动程序
2、实战java开发spark程序
https://my.oschina.net/csmw00/blog/672869

3、spark集群环境搭建
http://nekomiao.me/2016/12/05/spark-install-distributed/

阅读全文

与sparkrddjava相关的资料

热点内容
有服务器地址怎么安装软件 浏览:659
安卓如何完全清除数据 浏览:690
安卓安卓证书怎么信任 浏览:53
服务器被攻击如何解决 浏览:221
学霸变成程序员 浏览:881
c语言编译错误fatalerror 浏览:441
ipv4内部服务器地址怎么分配 浏览:463
java线程安全的方法 浏览:950
重复命令画梯形 浏览:164
在疫情就是命令 浏览:328
自己搭建一个什么服务器好玩 浏览:253
java基础马士兵 浏览:823
完美世界手游如何查看服务器 浏览:859
光遇安卓与ios什么时候互通 浏览:598
js如何运行时编译 浏览:917
引力app在哪里下载 浏览:609
编写app如何得到钱 浏览:801
吉利汽车软件放哪个文件夹安装 浏览:223
多文件编译c 浏览:543
头顶加密后为什么反而更稀疏 浏览:794