Spark基本概念解析

数据库 Spark
Spark作为一个资源管理器的存在,类似YARN、Mesos的角色,为Spark Application提供资源。

1:实验配置

虚拟机cdh1(4G内存,1CPU*2CORE)

虚拟机cdh2(4G内存,1CPU*2CORE)

虚拟机cdh3(4G内存,1CPU*2CORE)

spark配置:

conf/spark-env.sh

  1. export SPARK_MASTER_IP=cdh1 
  2. export SPARK_WORKER_CORES=2 
  3. export SPARK_WORKER_INSTANCES=2 
  4. export SPARK_MASTER_PORT=7077 
  5. export SPARK_WORKER_MEMORY=1200m 
  6. export MASTER=spark://${SPARK_MASTER_IP}:${SPARK_MASTER_PORT} 

conf/slaves

  1. cdh2 
  2. cdh3 

2:启动spark

在这里spark作为一个资源管理器的存在,类似YARN、Mesos的角色,为Spark Application提供资源。

在本配置里,这个standalone spark所拥有的资源是:2个Worker Node,每个Worker Node提供2Core、2个INSTANCE(也就是启动2个worker 实例)、1.2G内存。所以总的资源是:4个Worker,8个Core,4.8G内存。可以通过http://cdh1:8080获取相应的信息:

spark概念解析 - mmicky - mmicky 的博客

 

3:启动spark-shell

spark-shell 是一个spark application,运行时需要向资源管理器申请资源,如standalone spark、YARN、Mesos。本例向standalone spark申请资源,所以在运行spark-shell时需要指向申请资源的standalone spark集群信息,其参数为MASTER。如果未在spark-env.sh中申明MASTER,则使用命令MASTER=spark://cdh1:7077 bin/spark-shell启动;如果已经在spark-env.sh中申明MASTER,则可以直接用bin/spark-shell启动。

由于spark-shell缺省的情况下,会申请所有的CPU资源,也就是8个Core,本实验先看看使用3个Core的情况。至于spark-shell申请内存资源是通过Application中SparkContext中配置-->环境变量SPARK_MEM-->缺省值512M这样的优先次序来决定,本例中未做任何设置 ,故每个Executor使用的是512M。

[hadoop@cdh1 spark09]$ bin/spark-shell -c 3

责任编辑:彭凡 来源: 网易博客
相关推荐

2010-02-05 12:57:20

C++ kdevelo

2010-04-19 11:22:24

无线天线

2010-02-02 13:41:01

C++类继承

2011-03-28 11:05:17

ODBC

2021-07-09 10:27:12

SparkStreaming系统

2010-01-13 16:26:57

VB.NET通知控件

2011-04-18 10:49:49

SQL Server扩展函数

2012-09-11 14:39:03

Moosefs

2009-03-20 11:46:10

MGCP协议网关

2009-12-29 18:29:09

Silverlight

2010-02-23 16:32:29

WCF服务

2010-06-24 13:26:53

FTP协议

2017-04-07 10:19:22

交易支付概念

2009-12-21 10:27:52

WCF基本概念

2010-07-12 09:43:38

Symbian开发

2009-08-18 10:34:31

Java入门基本概念

2010-07-07 15:17:40

LDAP协议

2011-07-19 13:44:39

JavaScript

2010-08-23 16:58:17

DHCP协议

2012-12-03 17:12:10

HDFS
点赞
收藏

51CTO技术栈公众号