Spark、Python spark、Hadoop简介

本文介绍了Spark、Python Spark和Hadoop的基础知识。Spark是一个弹性分布式计算框架,以其高效的内存计算和多种功能模块(如Spark SQL、DataFrame、Streaming和MLlib)脱颖而出。Python Spark在机器学习和大数据开发中受到青睐,因其易用性和丰富的库。Hadoop则是一个可靠的分布式存储和处理平台,其HDFS和MapReduce提供了大规模数据处理能力。Spark 2.0的改进包括提升执行性能、引入Spark ML Pipeline和Structured Streaming APIs。
摘要由CSDN通过智能技术生成

Spark、Python spark、Hadoop简介


Spark简介

1、Spark简介及功能模块

Spark是一个弹性的分布式运算框架,作为一个用途广泛的大数据运算平台,Spark允许用户将数据加载到cluster集群的内存中储存,并多次重复运算,非常适合用于机器学习算法。

Spark的核心是RDD(Resilient Distributed Dataset)弹性分布式数据集,RDD能与其他系统兼容,也可以导入外部储存系统的数据集,例如HDFS、HBase或其他Hadoop数据源。

Spark在运算时,将中间产生的数据暂存在内存中,因此可以加快运行速度,Spark在内存中运行命令比Hapdoop MapReduce命令运行速度快100倍(硬盘上快10倍)。

Spark的主要功能模块有:Spark SQL DataFrame、Spark Streaming、Mllib(machine learning)、GraphX

  • Spark SQL DataFrame:Spark SQL 兼容SQL查询语言,DataFrame具有Schema(定义字段名与数据类型),可使用类SQL方法,例如select(),使用上比RDD更方便
  • Spark Streaming:可实现实时的数据串流的处理,具有大数据量、容错性、可扩充性等特点。
  • GraphX:分布式图形处理,可用于图表计算
  • Spark MLlib:可扩充性机器学习库。

2、Spark数据处理

Spark数据处理的方式主要有3种:RDD、DataFrame、Spark SQL

三者主要的差异在于是否定义Scheme

  • RDD 的数据未定义Scheme(也就是未定义字段名及数据类型),使用上必须有Map/Reduce的概念,需要高级程序设计,同时功能最强,能完成所有Spark功能。
  • Spark DataFrame 建立时必须定义Schema(也就是定义字段名及数据类型)。
  • Spark SQL 是由DataFrame衍生出来的,必须先建立DataFrame,然后通过登录Spark SQL temp table,就可以使用Spark SQL语法了。

易使用度:Spark SQL > DataFrame > RDD

DataFrame 与 Spark SQL 比RDD更快速

  • DataFrame与Spark SQL通过Cataly进行最优化,可以大幅度提高执行效率。基于Python使用RDD速度慢于基于Sca
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值