浅谈Apache Spark的6个发光点(CSDN)

  Spark是一个基于内存计算的开源集群计算系统,目的是更快速的进行数据分析。Spark由加州伯克利大学AMP实验室Matei为主的小团队使用Scala开发开发,其核心部分的代码只有63个Scala文件,很是轻量级。 Spark 提供了与 Hadoop 类似的开源集群计算环境,但基于内存和迭代优化的设计,Spark 在某些工做负载表现更优秀。算法

  在2014上半年,Spark开源生态系统获得了大幅增加,已成为大数据领域最活跃的开源项目之一,当下已活跃在Hortonworks、IBM、Cloudera、MapR和Pivotal等众多知名大数据公司。那么Spark究竟以什么吸引了如此多的关注,这里咱们看向Dzone上的6个总结。shell

1. 轻量级快速处理。机器学习

  着眼大数据处理,速度每每被置于第一位,咱们常常寻找能尽快处理咱们数据的工具。Spark容许Hadoop集群中的应用程序在内存中以100倍的速度运行,即便在磁盘上运行也能快10倍。Spark经过减小磁盘IO来达到性能提高,它们将中间处理数据所有放到了内存中工具

 

  Spark使用了RDD(Resilient Distributed Dataset)的理念,这容许它能够透明的内存中存储数据,只在须要时才持久化到磁盘。这种作法大大的减小了数据处理过程当中磁盘的读写,大幅度的下降了所需时间。oop

2. 易于使用,Spark支持多语言。性能

  Spark容许Java、Scala及Python,这容许开发者在本身熟悉的语言环境下进行工做。它自带了80多个高等级操做符,容许在shell中进行交互式查询。学习

3. 支持复杂查询。大数据

  在简单的“map”及“reduce”操做以外,Spark还支持SQL查询、流式查询及复杂查询,好比开箱即用的机器学习机图算法。同时,用户能够在同一个工做流中无缝的搭配这些能力。优化

4. 实时的流处理。spa

  对比MapReduce只能处理离线数据,Spark支持实时的流计算。Spark依赖Spark Streaming对数据进行实时的处理,固然在YARN以后Hadoop也能够借助其余的工具进行流式计算。对于Spark Streaming,Cloudera的评价是:

 

 

  • 简单:轻量级且具有功能强大的API,Sparks Streaming容许你快速开发流应用程序。
  • 容错:不像其余的流解决方案,好比Storm,无需额外的代码和配置,Spark Streaming就能够作大量的恢复和交付工做
  • 集成为流处理和批处理重用了一样的代码,甚至能够将流数据保存到历史数据中

 

5. 能够与Hadoop和已存Hadoop数据整合。

  Spark能够独立的运行,除了能够运行在当下的YARN集群管理以外,它还能够读取已有的任何Hadoop数据。这是个很是大的优点,它能够运行在任何Hadoop数据源上,好比HBase、HDFS等。这个特性让用户能够轻易迁移已有Hadoop应用,若是合适的话。

6. 活跃和无限壮大的社区。

  Spark起源于2009年,当下已有超过50个机构250个工程师贡献过代码,和去年六月相比,代码行数几乎扩大三倍,这是个使人艳羡的增加。

相关文章
相关标签/搜索