hadoop-cpu密集型应用程序-小数据

eyh26e7m  于 2021-06-04  发布在  Hadoop
关注(0)|答案(3)|浏览(347)

hadoop对于cpu密集型的、需要处理500mb左右的小文件的作业来说是一个合适的解决方案吗?我已经读到hadoop的目标是处理所谓的大数据,我想知道它如何处理少量数据(但是cpu密集型的工作负载)。
我主要想知道对于这个场景是否有更好的方法,或者我应该坚持使用hadoop。

wfsdck30

wfsdck301#

很多公司都在转向spark,我个人认为这是并行处理的未来。
听起来你想做的是在许多节点上使用许多cpu。为此,您应该使用专门为这个问题设计的可伸缩语言—换句话说,scala。使用scala和spark比hadoop简单得多,速度也快得多。
如果您没有访问集群的权限,那么无论如何使用spark都是一个好主意,这样您以后可以更轻松地使用它。或者只是使用 .par 在scala中,这将并行化您的代码并使用本地计算机上的所有cpu。
最后,hadoop确实是用于大数据的,而spark实际上只是一个非常通用的mpp框架。

5sxhfpxr

5sxhfpxr2#

您的计算问题正是我们为数据规范化所做的。这是一种需要在廉价的硬件和软件上进行并行处理,并且易于使用,而不是通过传统并行处理的所有特殊编程。hadoop诞生于计算相对简单的大规模分布式数据复制。实际上,仍在分发的测试应用程序wordcount过于简单。这是因为hadoop的起源是为了处理大量的数据和搜索的并发处理,后来又加入了“大数据”分析运动,试图找到更通用的业务用例。因此,hadoop在其公共形式中的描述并不是针对您和我们所拥有的用例。但是,hadoop确实提供了廉价、简单、快速的并行处理“小数据”的关键功能,这些“小数据”具有定制和复杂的编程逻辑。
事实上,我们已经调整hadoop来实现这一点。我们有一个专门构建的硬件环境psiklops,它对小型集群(1-10)节点非常强大,具有足够的能量,可以低成本运行4-20个并行作业。我们将在2014年8月初推出的第一个系列中,通过名为tech lab和cloudera的inside analysis,在一系列网络广播中展示这一点。我们将此功能视为像您这样的人的关键支持因素。psiklops不需要像我们将展示的那样使用hadoop,但是它被配置为最大程度地易于使用,以启动多个定制java并发容器。

yx2lnoni

yx2lnoni3#

hadoop是一个分布式计算框架,提出了一个mapreduce引擎。如果您可以用这个范例(或hadoop模块支持的任何其他范例)来表示可并行化的cpu密集型应用程序,那么您可以利用hadoop。hadoop计算的一个经典例子是pi的计算,它不需要任何输入数据。正如您在这里看到的,由于hadoop,yahoo成功地确定了pi的四分之二位数。
然而,hadoop确实是专门用于大数据的,因为它是为这个目的而开发的。例如,您处理了一个设计为包含巨大文件的文件系统。这些巨大的文件通过大量的节点被分块成许多块。为了确保数据的完整性,必须将每个块复制到其他节点。
最后,我要说的是,如果您已经处理了hadoop集群,那么您可能希望利用它。如果不是这样的话,虽然我不能推荐任何东西,因为我不知道你到底需要什么,但我认为你可以找到比hadoop更轻的框架。

相关问题