Apache Spark:SparkPi示例

时间:2014-12-31 00:15:15

标签: apache-spark

我试图运行Spark示例,我只是不明白发生了什么。 我用了

MASTER=spark://Illidan:7077 ./bin/run-example SparkPi 10

确实启动了这个过程,但我得到的只是 INFO 消息。

那么" 10"为?

可以启用INFO消息吗?

输出在哪里? Pi的计算在哪里?

我可以从shell启动示例吗?我是否必须从火花壳启动它以查看打印件,还是保存在一些我不知道的文件中?

我向上帝发誓我已经完成了一百次文件。我需要一些帮助。

Hier是我的终端输出的一小部分。提前致谢。 :d

14/12/31 00:02:25 INFO storage.BlockManagerInfo: Added broadcast_0_piece0 in memory on 192.168.2.5:44913 (size: 1295.0 B, free: 267.3 MB)
14/12/31 00:02:26 INFO scheduler.TaskSetManager: Finished task 1.0 in stage 0.0 (TID 1) in 25231 ms on 192.168.2.7 (8/10)
14/12/31 00:02:26 INFO scheduler.TaskSetManager: Finished task 0.0 in stage 0.0 (TID 0) in 25358 ms on 192.168.2.5 (9/10)
14/12/31 00:02:26 INFO storage.BlockManagerInfo: Added broadcast_0_piece0 in memory on 192.168.2.4:36505 (size: 1295.0 B, free: 267.3 MB)
14/12/31 00:02:27 INFO scheduler.TaskSetManager: Finished task 2.0 in stage 0.0 (TID 2) in 25877 ms on 192.168.2.4 (10/10)
14/12/31 00:02:27 INFO scheduler.TaskSchedulerImpl: Removed TaskSet 0.0, whose tasks have all completed, from pool 

2 个答案:

答案 0 :(得分:3)

如您所见,10是spark程序创建的分区(或切片)的数量。计算PI的工作分为10个任务(PI通过迭代算法计算)。

输出显示作业已成功完成。您还应该看到一行包含结果。

您可以找到PI示例here的源代码。

答案 1 :(得分:1)

OrangePi One SBC

  • CPU:1.6GHz H3四核Cortex-A7 H.265 / HEVC 4K

  • GPU:Mali400MP2 GPU @ 600MHz,支持OpenGL ES 2.0

  • RAM:512MB DDR3(与GPU共享)

  • Armbian OS Debian GNU / Linux 8(jessie)3.4.112-sun8i

我的观察是,在OrangePi上,执行是单线程。我期待4个并行任务,每个核心一个。请参阅下面的数据。我将看到可以针对现有内核或Mali GPU(~7 GigaFLOPS)优化的内容。

root @ orangepione:〜/ spark / spark-2.0.0-bin-hadoop2.7#。/ bin/run-example SparkPi 10

  • 其中10是分布式任务/分区/切片/线程的数量

在单个4核心板上执行为1任务

  • 花了19.0秒Pi大约是3.145951459514595
  • 花了19.0秒Pi大约是3.1346713467134673

在单个4核心板上执行2个任务

  • 花了19.3秒Pi大约是3.1420757103785517
  • 花了19.4秒Pi大约是3.13639568197841

在单个4核心板上执行4个任务

  • 花了21.2秒Pi大约是3.141427853569634
  • 花了21.5秒Pi大约是3.1445478613696536

在单个4核心板上执行10个任务

  • 耗时40.8秒Pi约为3.143983143983144
  • 耗时40.4秒Pi约为3.141019141019141

在单个4核心板上执行50个任务

  • 花了156.5秒Pi大约是3.1399118279823655