如何在 10 节点集群上 运行 Spark Sql
How to run Spark Sql on a 10 Node cluster
我是第一次使用spark。我在具有 10 个节点的集群上的 Hadoop 2.7 上设置了 spark。在我的主节点上,以下是进程 运行ning:
hduser@hadoop-master-mp:~$ jps
20102 ResourceManager
19736 DataNode
20264 NodeManager
24762 Master
19551 NameNode
24911 Worker
25423 Jps
现在,我想编写 Spark Sql 来对 1 GB 的文件进行一定的计算,该文件已经存在于 HDFS 中。
如果我在我的主节点上进入 spark shell:
spark-shell
并编写以下查询,它会只 运行 在我的主机上,还是会使用所有 10 个节点作为工作节点?
scala> sqlContext.sql("CREATE TABLE sample_07 (code string,description string,total_emp int,salary int) ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t' STORED AS TextFile")
如果不是,我需要做什么才能使我的 Spark Sql 使用完整集群?
你需要集群管理器来管理master和worker。您可以选择独立的 spark 或 yarn 或 mesos 集群管理器。我建议使用 spark standalone cluster manager 而不是 yarn 来启动这些东西。
要启动它,
在所有节点上下载 spark distribution(为 hadoop 预编译)并在 spark-env.sh.
中设置 Hadoop class 路径和其他重要配置
1) 使用/sbin/start-master.sh
启动master
它将使用端口(默认 8080)创建 Web 界面。打开 spark master 网页并收集页面中提到的 spark master uri。
2) 转到所有节点,包括你启动的机器 master 和 运行 slave。
./sbin/start-slave.sh .
再次查看母版网页。它应该列出页面上的所有工作人员。如果它没有列出,那么你需要从日志中找出错误。
3) 请检查机器的核心和内存,以及每个工作人员在主网页上显示的相同内容。如果它们不匹配,您可以使用命令来分配它们。
选择 spark 1.5.2 或更高版本
请关注详情here
这只是一个起点,如果您遇到任何错误,请告诉我,我可以帮助您。
我是第一次使用spark。我在具有 10 个节点的集群上的 Hadoop 2.7 上设置了 spark。在我的主节点上,以下是进程 运行ning:
hduser@hadoop-master-mp:~$ jps
20102 ResourceManager
19736 DataNode
20264 NodeManager
24762 Master
19551 NameNode
24911 Worker
25423 Jps
现在,我想编写 Spark Sql 来对 1 GB 的文件进行一定的计算,该文件已经存在于 HDFS 中。
如果我在我的主节点上进入 spark shell:
spark-shell
并编写以下查询,它会只 运行 在我的主机上,还是会使用所有 10 个节点作为工作节点?
scala> sqlContext.sql("CREATE TABLE sample_07 (code string,description string,total_emp int,salary int) ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t' STORED AS TextFile")
如果不是,我需要做什么才能使我的 Spark Sql 使用完整集群?
你需要集群管理器来管理master和worker。您可以选择独立的 spark 或 yarn 或 mesos 集群管理器。我建议使用 spark standalone cluster manager 而不是 yarn 来启动这些东西。
要启动它, 在所有节点上下载 spark distribution(为 hadoop 预编译)并在 spark-env.sh.
中设置 Hadoop class 路径和其他重要配置1) 使用/sbin/start-master.sh
启动master它将使用端口(默认 8080)创建 Web 界面。打开 spark master 网页并收集页面中提到的 spark master uri。
2) 转到所有节点,包括你启动的机器 master 和 运行 slave。
./sbin/start-slave.sh .
再次查看母版网页。它应该列出页面上的所有工作人员。如果它没有列出,那么你需要从日志中找出错误。
3) 请检查机器的核心和内存,以及每个工作人员在主网页上显示的相同内容。如果它们不匹配,您可以使用命令来分配它们。
选择 spark 1.5.2 或更高版本 请关注详情here
这只是一个起点,如果您遇到任何错误,请告诉我,我可以帮助您。