spark有什么作用

最近,许多大数据的讨论都使用了新名称。 有人认为流行的新手Apache Spark ™是Hadoop的更易访问,更强大的替代品, Hadoop是大数据的首选原始技术。 其他人则认为Spark是Hadoop和其他技术的有力补充,它具有自己的优点,怪癖和局限性。

与其他大数据工具一样,Spark功能强大,功能强大且设备齐全,可应对各种数据挑战。 对于每个数据处理任务,它也不一定是最佳选择。 您可以在电子书“ Spark入门:从开始到生产”中了解有关Spark的更多信息 在此博客文章中,我将详细介绍Spark是什么,谁使用Spark以及它与其他数据处理引擎的区别。

什么是星火?

Spark是通用数据处理引擎,适用于多种情况。 应用程序开发人员和数据科学家将Spark集成到他们的应用程序中,以快速地大规模查询,分析和转换数据。 与Spark最频繁相关的任务包括跨大型数据集的交互式查询,来自传感器或金融系统的流数据处理以及机器学习任务。

Spark于2009年开始运作,最初是加州大学伯克利分校AMPLab内部的一个项目。 更具体地说,它是出于证明Mesos概念的需要而诞生的,Mesos概念也是在AMPLab中创建的。 在Mesos白皮书《 Mesos:数据中心中的细粒度资源共享平台》中首次讨论了Spark,其中最著名的作者是Benjamin Hindman和Matei Zaharia。

2013年,Spark成为Apache Software Foundation的孵化项目,并于2014年初被提升为该基金会的顶级项目之一。 Spark是基金会管理的最活跃的项目之一,围绕该项目成长的社区包括多产的个人贡献者和资金雄厚的企业支持者,例如Databricks,IBM和中国的华为。

从一开始,Spark就被优化为在内存中运行。 它比Hadoop的MapReduce等替代方法更快地处理数据,后者倾向于在处理的每个阶段之间向计算机硬盘写入数据或从计算机硬盘写入数据。 Spark的支持者声称,Spark在内存中的运行速度可以比Hadoop MapReduce快100倍,并且在以类似于Hadoop MapReduce本身的方式处理基于磁盘的数据时也可以快10倍。 这种比较并不完全公平,这不仅是因为原始速度对Spark的典型用例而言比对批处理更为重要,在这种情况下,类似于MapReduce的解决方案仍然很出色。

Spark会做什么?

Spark能够一次处理数PB的数据,分布在成千上万个协作的物理或虚拟服务器的群集中。 它具有广泛的开发人员库和API,并支持Java,Python,R和Scala等语言。 它的灵活性使其非常适合各种用例 。 Spark通常与Hadoop的数据存储模块HDFS一起使用,但它可以与其他流行的数据存储子系统(例如HBase ,Cassandra, MapR-DB ,MongoDB和Amazon的S3)同等地集成。

典型的用例包括:

  • 流处理 :从日志文件到传感器数据,应用程序开发人员越来越需要应对数据的“流”。 此数据通常从多个源同时稳定地到达。 尽管将这些数据流存储在磁盘上并进行回顾性分析当然是可行的,但有时在数据到达时对其进行处理并采取行动是明智或重要的。 例如,可以实时处理与金融交易有关的数据流,以识别并拒绝潜在的欺诈交易。
  • 机器学习 :随着数据量的增长,机器学习方法变得越来越可行并且越来越准确。 在将相同的解决方案应用于新的和未知的数据之前,可以对软件进行培训,以识别出易于理解的数据集中的触发器并对其采取行动。 Spark能够将数据存储在内存中并能够快速运行重复查询,这使其成为训练机器学习算法的理想选择。 一次又一次地大规模运行广泛相似的查询,可显着减少通过一组可能的解决方案以找到最有效的算法所需的时间。
  • 交互式分析 :业务分析师和数据科学家不是通过运行预定义的查询来创建销售,生产线生产力或股票价格的静态仪表板,而是希望通过提问,查看结果然后更改结果来探索其数据。初步提出问题或深入研究结果。 这种交互式查询过程要求诸如Spark之类的系统能够快速响应和适应。
  • 数据集成 :整个企业中不同系统生成的数据很少是干净的或一致的,以至于无法简单,轻松地合并以进行报告或分析。 提取,转换和加载(ETL)流程通常用于从不同系统中提取数据,对其进行清理和标准化,然后将其加载到单独的系统中进行分析。 越来越多地使用Spark(和Hadoop)来减少此ETL流程所需的成本和时间。

谁使用Spark?

许多技术供应商已Swift支持Spark,并意识到有机会将现有的大数据产品扩展到Spark提供真正价值的领域,例如交互式查询和机器学习。 IBM和华为等著名公司已经在这项技术上投入了大量资金,并且越来越多的初创公司正在建立完全或部分依赖Spark的业务。 例如,在2013年,负责创建Spark的伯克利团队创建了Databricks,该公司提供了一个由Spark支持的托管端到端数据平台。 该公司资金雄厚,在2013年和2014年的两轮投资中获得了4,700万美元,Databricks的员工在改善和扩展Apache Spark项目的开源代码方面继续发挥着重要作用。

大型Hadoop供应商都已经转移到支持Spark及其现有产品,并且每个供应商都在努力为其客户增加价值。 在其他地方,IBM,华为和其他公司都对Apache Spark进行了大量投资,将其集成到自己的产品中,并为Apache项目提供了增强和扩展。 中国搜索引擎百度,电子商务运营商阿里巴巴淘宝和社交网络公司等基于Web的公司都大规模运行基于Spark的业务,据报道,腾讯的8亿活跃用户每天生成700 TB以上的数据,以便在计算机上进行处理。超过8,000个计算节点的集群。

除了这些网络巨头之外, 诺华制药公司还依赖Spark来减少将建模数据交付研究人员的时间,同时确保遵守道德和合同保障。

是什么使Spark脱颖而出?

选择Spark的原因很多,但三个是关键:

  • 简便 :可通过一组丰富的API访问Spark的功能,所有这些API都是专门为快速,轻松地与大规模数据进行交互而设计的。 这些API都有很好的文档说明和结构,使数据科学家和应用程序开发人员可以轻松地将Spark快速投入工作。
  • 速度 :Spark专为提高速度而设计,可在内存和磁盘上运行。 使用Spark,来自Databricks的团队与来自加利福尼亚大学圣地亚哥分校的团队在2014年Daytona Gray Sort 100TB Benchmark挑战赛中并列第一 。 挑战涉及处理静态数据集。 Databricks团队能够在短短23分钟内处理存储在固态驱动器上的100 TB数据,而以前的优胜者通过使用Hadoop和其他集群配置花费了72分钟。 当支持对存储在内存中的数据进行交互式查询时,Spark的性能甚至更好。 在这种情况下,有人声称Spark可以比Hadoop的MapReduce快100倍。
  • 支持 :Spark支持多种编程语言,包括Java,Python,R和Scala。 尽管通常与HDFS紧密相关,但Spark包括对与Hadoop生态系统及更多生态系统中许多领先存储解决方案的紧密集成的本机支持。 此外,Apache Spark社区庞大,活跃且国际化。 越来越多的商业提供商(包括Databricks,IBM和所有主要的Hadoop供应商)为基于Spark的解决方案提供全面的支持。

摘要

在此博客文章中,您了解了Spark,它的作用以及使它与其他数据处理引擎区分开的地方。

如果您有关于Spark的其他问题,请在下面的评论部分中提问。

翻译自: https://www.javacodegeeks.com/2015/09/spark-101-what-is-it-what-it-does-and-why-it-matters.html

spark有什么作用

spark有什么作用_Spark 101:它是什么,它做什么以及为什么起作用相关推荐

  1. python对seo有什么用_pythonseo-python对于做SEO主要有什么作用

    很多朋友在网站seo优化的时候回遇到一些网站优化的疑问,其中就包括<pythonseo:python对于做SEO主要有什么作用>问题,那么下面搜遇网络小编来给您解答一下您现在困惑的问题. ...

  2. 存储心跳线作用_硬盘跳线有什么用 硬盘跳线的作用有哪些

    导语:当很多人都不知道硬盘是什么的时候,其实硬盘的使用已经渐渐的融入了人们的生活,如今,可移动硬盘在存储日常生活中越来越普遍,大至高级集团,小至普通家庭,它的种类也越来越多,而在其中,硬盘跳线的作用也 ...

  3. 什么是CSS,有什么作用?\nCSS(Cascading Style Sheet):层叠样式表语言。\nCSS的作用是:\n修饰HTM

    什么是CSS,有什么作用?\nCSS(Cascading Style Sheet):层叠样式表语言.\nCSS的作用是:\n修饰HTML页面,修饰HTML页面张的某些元素的样式,让HTML页面更好看. ...

  4. python对seo有什么用_python对于做SEO主要有什么作用-乐云SEO

    自己写爬虫做seo: python对于做SEO主要有什么作用-百度知道 展开全部 数据库级别了,python可以开发爬虫抓取想要的数据.给seo做内容还是不错的!... 其他答案:没什么作用,pyth ...

  5. 101种在家就能做的网上生意

    转载自 [http://baike.baidu.com/link?url=67Ertf8LNQ3LlAPeXgsp7e4jZUDSafwET5i0O3DPrBr6im5KLpEwLXvFpUivy-J ...

  6. Spark 101:它是什么,它做什么以及为什么起作用

    最近,许多大数据的讨论都使用了新名称. 有人将流行的新来者Apache Spark ™视为Hadoop的更易用,功能更强大的替代品, Hadoop是大数据的首选原始技术. 其他人认为Spark是Had ...

  7. spark官方文档_Spark机器学习之Pipeline

    部门的大数据平台支持spark编程了,赶紧跟上步伐看能把分析水平提高到哪一个台阶! 底层是基于数平TDW的,对编程接口进行了封装,管道使用的是 from lib.pipeline import MLP ...

  8. spark 获取广播变量_Spark流式程序中广播变量和累加器为何使用单例模式

    Spark中广播变量详解以及如何动态更新广播变量​mp.weixin.qq.com 1.广播变量是只读的,使用单例模式可以减少Spark流式程序中每次job生成执行,频繁创建广播变量带来的开销 2. ...

  9. spark sql 本地调试_Spark精华问答|Spark的三种运行模式有何区别?

    戳蓝字"CSDN云计算"关注我们哦! Spark是一个针对超大数据集合的低延迟的集群分布式计算系统,比MapReducer快40倍左右,是hadoop的升级版本,Hadoop作为第 ...

最新文章

  1. redis设置允许远程访问
  2. 在LINUX中部署NIS服务器
  3. 112.局部变量和全局变量在内存中是怎样存储的?113.WLAN无线传输协议
  4. Python基本数据类型 set()
  5. Swoole使用TP5.1框架
  6. (七)linux函数接口的使用
  7. 问题集锦13:数据库升级后,程序无法连接数据库
  8. 场景,生态之面!——保险科技生态建设
  9. Oozie5.2.1源码编译及安装部署
  10. 【python】文件的save和load:npy,npz,txt,csv,pkl,(持更)
  11. 第二人生的源码分析(11)地面显示的实现
  12. 阿里云打造离线下载服务器
  13. 面试官:为什么 0.1 + 0.2 == 0.300000004 ?
  14. 用ArcGIS Server服务Print打印高清大图的关键参数
  15. Python 基于透明元素裁切图片(类似Photoshop)
  16. java office 集成开发_[转载]Java集成PageOffice在线打开编辑word文件 - Spring Boot
  17. 你知道做一个网站要多少钱网站怎么运营能赚钱
  18. 测试进阶必备,这5款http接口自动化测试工具简直不要太香~
  19. kettle连接sap出现错误报错信息(127) JCO_ERROR_FIELD_NOT_FOUND : Field DATUM not a member of INPUT
  20. 欢迎使用CSDN-markdown编辑器;看着蛮好玩~

热门文章

  1. 2021“MINIEYE杯”中国大学生算法设计超级联赛(8)(1002,1004,1006,1009)
  2. P5004-专心OI - 跳房子【dp,矩阵乘法】
  3. P1268-树的重量【图论】
  4. ssl1203-书的复制【dp】
  5. 【图论】【并查集】矩形(ssl 1222)
  6. 纪中培训总结(2019年1月21~31日)
  7. Spark SQL(四)之DataSet与RDD转换
  8. Hadoop生态Flume(一)介绍
  9. 10亿个数中找出最大的10000个数
  10. JavaFX官方教程(十五)之A Xylophone.java