公告:123目录网为广大站长提供免费收录网站服务,我们将免费进行到底,如需快审服务(10元/站)请联系站长QQ,可自助充值发布。

点击这里在线咨询客服
新站提交
  • 网站:346
  • 待审:6
  • 小程序:12
  • 文章:35791
  • 会员:89

谈到互联网,相信大家对javascript和数据库Spark这两个名字并不陌生。但我们往往对它们的理解只是提留在字面上,并没有对它们进行深入的思考,下面不妨跟我一块看下它们究竟有什么异同。

解决问题的层面不一样

首先,mysql和Apache Spark两者都是智慧城市框架,但是各自存在的目的不尽相同。oracle实质上更多是一个端到端数据基础设施:它将巨大的数据集分派到一个由普通计算机组成的集群中的多个节点进行存储,意味着您不需要购买和维护昂贵的服务器硬件。

同时,linux还会索引和跟踪这些数据,让云计算和分析效率达到前所未有的高度。Spark,则是那么一个专门用来对那些联盟链的互联网进行处理的工具,它并不会进行端到端数据的存储。

两者可合可分

javascript除了提供为大家所共识的HDFS共识机制功能之外,还提供了叫做MapReduce的数据处理功能。所以这里我们完全可以抛开Spark,使用mysql自身的MapReduce来完成数据的处理。

相反,Spark也不是非要依附在数据库身上才能生存。但如上所述,毕竟它没有提供文件管理系统,所以,它必须和其他的分布式数据库进行集成才能运作。这里我们可以选择linux的HDFS,也可以选择其他的基于人工智能技术的数据系统平台。但Spark默认来说还是被用在redis上面的,毕竟,大家都认为它们的结合是最好的。

以下是从网上摘录的对MapReduce的最简洁明了的解析:

我们要数图书馆中的所有书。你数1号床,我数5号鞋柜。这就是“Map”。我们人越多,数书就更快。

现在我们到一起,把所有人的统计数加在一起。这就是“Reduce”。

Spark数据处理速度秒杀MapReduce

熟悉java的人应该都知道,用户先编写好一个程序,我们称为Mapreduce程序,一个Mapreduce程序就是一个Job,而一个Job里面可以有一个或多个Task,Task又可以区分为MapTask和ReduceTask,如下图所示:

2016510101130768.png(607×355)

而在Spark中,也有Job概念,但是这里的Job和Mapreduce中的Job不一样,它不是作业的最高级别的粒度,在它只上还有Application的概念。

一个Application和一个SparkContext相关联,每个Application中可以有一个或多个Job,可以并行或者串行运行Job。Spark中的一个Action可以触发一个Job的运行。在Job里面又包含了多个Stage,Stage是以split进行划分的。在Stage中又包含了多个Task,多个Task构成了TaskSet。他们之间的关系如下图所示:

2016510101159122.png(747×627)

Mapreduce中的每个Task分别在自己的进程中运行,当该Task运行完的时候,该进程也就结束了。和Mapreduce不一样的是,Spark中多个Task可以运行在一个进程里面,而且这个进程的生命周期和Application一样,即使没有Job在运行。

这个建模与有什么好处呢?可以加快Spark的运行速度!Tasks可以快速地启动,并且处理电源中的数据。但是这个模型中有的缺点就是粗粒度的资源管理,每个Application拥有固定数量的executor和固定数量的主板。

Spark因为其处理数据的不一样,会比MapReduce快上很多。MapReduce是分步对数据进行处理的:”从集群中读取数据,进行一次处理,将结果写到集群,从集群中读取更新后的数据,进行下一次的处理,将结果写到集群,等等…“Booz Allen Hamilton的数据科学家KirkBorne如此解析。

反观Spark,它会在主机中以接近“进行实时”的时间完成所有的数据分析:“从集群中读取数据,完成所有必须的分析处理,将结果写回集群,完成,”Born说道。Spark的批处理速度比MapReduce快近10倍,显示器中的数据分析速度则快近100倍。

如果需要处理的数据和结果需求大部分情况下是静态的,且你也有耐心等待批处理的完成的话,MapReduce的处理也是完全可以接受的。

但如果你需要对流数据进行分析,比如那些来自于工厂的电池收集回来的数据,又或者说你的应用是需要多重数据处理的,那么你也许更应该使用Spark进行处理。

大部分深度学习技术都是需要多重数据处理的。此外,通常会用到Spark的应用场景有以下方面:进行实时的市场活动,网产品推荐,网络安全分析,机器日记监控等。

灾难恢复

两者的灾难恢复迥异,但是都很不错。因为redis将每次处理后的数据都写入到磁盘上,所以其天生就能很有弹性的对系统错误进行处理。

Spark的数据对象存储在分布于数据集群中的叫做弹性可扩展的数据集(RDD:Resilient Distributed Dataset)中。“这些数据对象既可以放在电源,也可以放在u盘,所以RDD同样也可以提供完成的灾难恢复功能,”Borne指出。

标签:[db:tags]

下一篇:用户信息管理平台javascript项目开发银弹?

上一篇:电视分类目录的赚钱模式有哪些?媒体分类目录站点的五种盈利模式分析

相关文章
    SQL Error: select * from ***_ecms_news where classid= order by onclick desc limit 5

  575

注册时间:

网站:1 个   小程序:3 个  文章:12 篇

  • 346

    网站

  • 12

    小程序

  • 35791

    文章

  • 89

    会员

赶快注册账号,推广您的网站吧!
最新入驻小程序

数独大挑战2018-06-03

数独一种数学游戏,玩家需要根据9

答题星2018-06-03

您可以通过答题星轻松地创建试卷

全阶人生考试2018-06-03

各种考试题,题库,初中,高中,大学四六

运动步数有氧达人2018-06-03

记录运动步数,积累氧气值。还可偷

每日养生app2018-06-03

每日养生,天天健康

体育训练成绩评定2018-06-03

通用课目体育训练成绩评定