Spark部署及应用
在飞速发展的云计算大数据时代,Spark是继Hadoop之后,成为替代Hadoop的下一代云计算大数据核心技术,目前Spark已经构建了自己的整个大数据处理生态系统,如流处理、图技术、机器学习、NoSQL查询等方面都有自己的技术,并且是Apache顶级Project,可以预计的是2014年下半年到2015年Spark在社区和商业应用上会有爆发式的增长。
Spark在业界的使用案例
Spark技术在国内外的应用开始越来越广泛,它正在逐渐走向成熟,并在这个领域扮演更加重要的角色。国外一些大型互联网公司已经部署了Spark。例如:一直支持Hadoop的四大商业机构(Cloudera、MapR、Hortonworks、EMC)已纷纷宣布支持Spark;Mahout前一阶段也表示,将不再接受任何形式以MapReduce实现的算法,同时还宣布了基于Spark新的算法;而Cloudera的机器学习框架Oryx的执行引擎也将由Hadoop的MapReduce替换成Spark;另外,Google也已经开始将负载从MapReduce转移到Pregel和Dremel上;FaceBook也宣布将负载转移到Presto上……而目前,我们国内的淘宝、优酷土豆、网易、Baidu、腾讯等企业也已经使用Spark技术在自己的商业生产系统中。
Spark是最新一代的大数据处理框架,在数据统计分析、数据挖掘、流处理、图技术、机器学习、误差查询等方面都有自己的技术,从我们的技术研究和长期业界观察来看,Spark会成为大数据时代集大成的计算框架。随着2014年5月30日Spark 1.0.0的发布,Spark已经相对稳定,可以放心使用。
Spark如何部署到生产环境
对于Spark该如何部署到生产环境中,Spark是最新一代大数据计算框架,使用时需要单独部署集群,Spark集群部署方式主要有三种:Standalone、Yarn、Mesos。一般而言,在部署的时候都会基于HDFS文件存储系统,所以,如果已经有Hadoop平台,部署Spark就非常容易,只需在平台上增加Spark功能即可。目前,国内企业淘宝使用的Spark就是基于Hadoop的yarn。当然也可以采用standalone和zookeeper的方式进行从无到有的构建Spark集群,这也是一种常见和理想的选择,并且这种方式也是官方推荐的。
企业如何做云计算大数据部署的技术选型
现在,谈到云计算大数据话题的时候很多人还是多会提到Hadoop,对Spark了解的人还不是很多,如果企业有计划要部署云计算大数据的话,如何做技术选型是很重要的。对此,Spark亚太研究院院长和首席专家王家林给出了如下建议:
如果企业以前没有云计算大数据集群,选择使用Spark要比Hadoop更为明智,原因是:首先,Hadoop本身的计算模型决定了它的所有工作都要转化成Map、Shuffle和Reduce等核心阶段,由于每次计算都要从磁盘读或者写数据,而且整个计算模型需要网络传输,这就导致越来越难以忍受的延迟性。其次,Hadoop还不能支持交互式应用。
而Spark可以轻松应对数据统计分析、数据挖掘、流处理、图技术、机器学习、误差查询等,且Spark的“One stack rule them all”的特性也导致部署的简易性,省去多套系统部署的麻烦。
如果技术选型为Spark,那么,解决数据统计分析、实时流计算、数据挖掘基本只需要一个团队即可,而如果采用Hadoop则需要不同团队做处理每一项专门的技术,极大的增加人力成本。
另外,对于已经有Hadoop集群的公司而言,建议尝试使用Spark技术,可以从Spark的Shark或者Spark SQL开始,推荐使用Spark的实时流处理和机器学习技术。
Spark趋势,中型企业如何抉择
Spark因其部署的简易性和“One stack to rule them all”的特点,是大数据时代中型企业处理大数据的福音。例如,Yahoo!、淘宝、优酷土豆、网易、腾讯等国内大型知名企业已经在商业生产环境下开始使用Spark技术;Intel、IBM、Linkin、Twwitter等国外大型知名企业也都在大力支持Spark。随着这些国内外大企业的使用,Spark技术的发展必然势不可挡,行业普及很快就会到来,因此对于中型企业的使用和普及,只是时间问题。中型公司如果要基于Spark进行部署,只需配备约5-20人的团队,即可在Spark上做数据分析统计、机器学习、实施流处理计算等工作。
对于电信、金融等行业,使用Spark同样势不可挡。在数据统计分析方面,Spark比Hadoop快几十倍,如果是使用内存表,Spark更是比Hadoop快100倍以上。同时Spark的实时流处理、机器学习、图计算也非常高效,可以充分满足电信、金融行业数据挖掘的需要。
作为唯一可以革命Hadoop并正在成为大数据计算框架霸主的Spark技术,由于其“One stack to rule them all”的特性(使用一个统一的技术堆栈解决了大数据处理生态系统中的流处理、图技术、机器学习、NoSQL查询等方面的技术问题),在2014年10月左右会在中国的需求有爆发之势,这种需求包含企业使用Spark的需求和Spark人才的迫切需求,同时,这种需求将不限已经使用Spark的Yahoo!、淘宝、腾讯、网易等国内大型企业,还会包含很多中小企业。
Spark部署及应用的更多相关文章
- Spark部署三种方式介绍:YARN模式、Standalone模式、HA模式
参考自:Spark部署三种方式介绍:YARN模式.Standalone模式.HA模式http://www.aboutyun.com/forum.php?mod=viewthread&tid=7 ...
- 基于Docker搭建大数据集群(四)Spark部署
主要内容 spark部署 前提 zookeeper正常使用 JAVA_HOME环境变量 HADOOP_HOME环境变量 安装包 微云下载 | tar包目录下 Spark2.4.4 一.环境准备 上传到 ...
- 大数据系列之并行计算引擎Spark部署及应用
相关博文: 大数据系列之并行计算引擎Spark介绍 之前介绍过关于Spark的程序运行模式有三种: 1.Local模式: 2.standalone(独立模式) 3.Yarn/mesos模式 本文将介绍 ...
- Spark部署
Spark的部署让人有点儿困惑,有些需要注意的事项,本来我已经装成功了YARN模式的,但是发现了一些问题,出现错误看日志信息,完全看不懂那个错误信息,所以才打算翻译Standalone的部署的文章.第 ...
- 再谈spark部署搭建和企业级项目接轨的入门经验(博主推荐)
进入我这篇博客的博友们,相信你们具备有一定的spark学习基础和实践了. 先给大家来梳理下.spark的运行模式和常用的standalone.yarn部署.这里不多赘述,自行点击去扩展. 1.Spar ...
- Spark 部署即提交模式意义解析
Spark 的官方从 Cluster Mode Overview 中,官方向我们介绍了 cluster 模式的部署方式. Spark 作为独立进程在集群上运行,他们通过 SparkContext 进行 ...
- 入门大数据---Spark部署模式与作业提交
一.作业提交 1.1 spark-submit Spark 所有模式均使用 spark-submit 命令提交作业,其格式如下: ./bin/spark-submit \ --class <ma ...
- spark 部署问题
spark的web UI 端口设置:spark-env.sh 中设置SPARK_MASTER_WEBUI_PORT 为自己想设置的端口号. 其他worker 的web UI 端口默认:8081 mas ...
- [Spark] - Spark部署安装
环境:centos6.0 虚拟机 搭建单机版本的spark 前提条件:搭建好hadoop环境 1. 下载scala进行安装 只需要设置环境变量SCALA_HOME和PATH即可 export SCAL ...
随机推荐
- VS 附加进程调试
1.在IIS 上新建一个项目,制定目录到 项目根目录. 2.制定IIS上指定 主机名称如: vk.com 3. 修改主机HOST 文件:C:\Windows\System32\drivers\etc ...
- ES索引
Elasticsearch索引别名.Filtered索引别名.Template 在使用elasticsearch的时候,经常会遇到需要淘汰掉历史数据的场景. 为了方便数据淘汰,并使得数据管理更加灵活, ...
- 【bzoj2152】聪聪可可 树的点分治
题目描述 聪聪和可可是兄弟俩,他们俩经常为了一些琐事打起来,例如家中只剩下最后一根冰棍而两人都想吃.两个人都想玩儿电脑(可是他们家只有一台电脑)……遇到这种问题,一般情况下石头剪刀布就好了,可是他们已 ...
- 关于逻辑运算符&&和||及!
&& 表示and ,|| 表示or,!表示not. And(&&):对两个Boolean表达式执行逻辑和. AndAlso(&):与AndAlso类似,关键差异 ...
- python实现关联规则
代码中Ci表示候选频繁i项集,Li表示符合条件的频繁i项集 # coding=utf-8 def createC1(dataSet): # 构建所有1项候选项集的集合 C1 = [] for tran ...
- javascript 随机数区间
生成[0,max]之间的随机数 parseInt(Math.random()*(max+1),10);Math.floor(Math.random()*(max+1)); 生成[1,max]之间的随机 ...
- Divljak
Divljak Alice 有 $n$ 个字符串 $ S_1,S_2,\cdots,S_n $ ,Bob有一个字符串集合 $T$ ,一开始集合是空的. 接下来会发生 $q$ 个操作,操作有两种形式: ...
- COGS1752. [BOI2007]摩基亚Mokia CDQ
CDQ的板子题 #include<cstdio> #include<cstring> #include<iostream> #include<algorith ...
- CSS3不遥远,几个特性你要知道
CSS是众所周知且应用广泛的网站样式语言,在它的版本三(CSS3)计划中,新增了一些能够节省时间的特性.尽管只有当前最新了浏览器版本才能支持这些 效果,但了解它们还是必须且很有趣味性的.CSS3中的5 ...
- MySQL使用笔记(二)数据库基本操作
By francis_hao Dec 11,2016 数据库是什么 数据库是什么呢?对于MySQL来说,数据库是存储数据库对象的容器,参考[1]中的简单解释是:数据库是一个拥有特定排放顺序的文件 ...