欢迎回家
我们一直在改变

Spark 简介

什么是spark

Apache Spark是一个用于实时处理的开源集群计算框架。 它拥有蓬勃发展的开源社区,是目前最活跃的Apache项目。 Spark提供了完整编程的接口,具有数据并行性和容错性。

图:Spark教程 – Apache Spark中的实时处理

它建立在Hadoop MapReduce之上,它扩展了MapReduce模型以使用更多类型的计算。

Apache Spark的功能

支持多种语言

Spark提供Java,Scala,Python和R中的高级API .Spark代码可以用任何这些语言编写。 它在Scala和Python中提供了一个shell。 可以通过./bin/spark-shell和Python shell通过./bin/pyspark从已安装的目录访问Scala shell。

速度

Spark的运行速度比Hadoop MapReduce快100倍,适用于大规模数据处理。 Spark能够通过分区实现此速度。 它使用分区管理数据,这些分区有助于以最小的网络流量并行化处理分布式数据。

多种格式

Spark支持多种数据源,如Parquet,JSON,Hive和Cassandra,CSV和RDBMS表,还包括通常的格式,如文本文件、CSV和RDBMS表。 Data Source API提供了一种可插拔的机制,用于通过Spark SQL获取结构化数据。

延后计算

Apache Spark延迟是绝对必要的。 这是影响其速度的关键因素之一。对于转换(transformations),Spark将它们添加到DAG(有向无环图)的计算中,并且只有当驱动程序请求一些数据时,这个DAG才会实际执行。

实时计算

Spark的计算是实时的,并且由于其内存计算具有低延迟。 Spark专为大规模可扩展性设计,Spark团队已经记录了运行具有数千个节点的生产集群的用户,并支持多种计算模型。

整合Hadoop

Apache Spark提供与Hadoop的平滑兼容性。 这对所有从事Hadoop大数据工程师来说都是一个福音。 Spark是Hadoop的MapReduce的潜在替代品,而Spark能够使用YARN在现有的Hadoop集群上运行资源调度。

机器学习

Spark的MLlib是机器学习组件,在大数据处理方面很方便。 它消除了使用多种工具的需求,一种用于处理,一种用于机器学习。 Spark为数据工程师和数据科学家提供了一个功能强大,统一的引擎,既快速又易于使用。

原文链接:https://www.aboutyun.com/forum.php?mod=viewthread&tid=24883

赞(0)
未经允许不得转载:91coding » Spark 简介
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

立即登录   注册

91CODING 小白轻松上手,大牛稳健进步

关于我们免责声明