apache-spark – Jupyter和PySpark:如何运行多个笔记本

栏目: 编程工具 · 发布时间: 5年前

内容简介:翻译自:https://stackoverflow.com/questions/36311185/jupyter-pyspark-how-to-run-multiple-notebooks

我在三个虚拟机上使用Spark 1.6.0,1x主机(独立),2个工作器,每个8G RAM,2个CPU.

我正在使用下面的内核配置:

{
 "display_name": "PySpark ",
 "language": "python3",
 "argv": [
  "/usr/bin/python3",
  "-m", 
  "IPython.kernel", 
  "-f",
  "{connection_file}"
 ],
 "env": {
  "SPARK_HOME": "<mypath>/spark-1.6.0",
  "PYTHONSTARTUP": "<mypath>/spark-1.6.0/python/pyspark/shell.py",
  "PYSPARK_SUBMIT_ARGS": "--master spark://<mymaster>:7077  --conf   spark.executor.memory=2G pyspark-shell --driver-class-path /opt/vertica/java/lib/vertica-jdbc.jar"
 }  
}

目前,这是有效的.我可以使用spark context sc&没有导入的sqlContext,如在pyspark shell中.

当我使用多个笔记本时出现问题:

在我的火花大师身上,我看到两个’pyspark-shell’应用程序,这有点意义,但一次只能运行一个.但在这里,“跑步”并不意味着执行任何操作,即使我没有在笔记本上运行任何东西,它也会显示为“正在运行”.鉴于此,我不能在笔记本之间共享我的资源,这是非常可悲的(我目前必须杀死第一个shell(=笔记本内核)来运行第二个).

如果您对如何操作有任何想法,请告诉我!

另外,我不确定我使用内核的方式是“最佳实践”,我已经遇到了设置spark& amp; jupyter一起工作.

大家好

问题是Spark用来存储Metastore(Derby)的数据库. Derby是一个轻量级数据库系统,一次只能运行一个Spark实例.

解决方案是设置另一个数据库系统来处理多个实例(postgres,mysql ……).

例如,您可以使用postgres DB.

>在火花/罐子中加入 postgres

>在spark conf中添加配置文件(hive-site.xml)

>在您的机器上安装postgres

>在postgres中为spark / hive添加用户,密码和数据库(取决于你在hive-site.xml中的值)

linux shell上的示例:

# download postgres jar
wget  https://jdbc.postgresql.org/download/postgresql-42.1.4.jar

# install postgres on your machine
pip install postgres

# add user, pass and db to postgres
psql -d postgres -c "create user hive"
psql -d postgres -c "alter user hive with password 'pass'"
psql -d postgres -c "create database hive_metastore"
psql -d postgres -c "grant all privileges on database hive_metastore to hive"

蜂房的site.xml:

<configuration>

<property>
  <name>javax.jdo.option.ConnectionURL</name>
  <value>jdbc:postgresql://localhost:5432/hive_metastore</value>
</property>

<property>
  <name>javax.jdo.option.ConnectionDriverName</name>
  <value>org.postgresql.Driver</value>
</property>

<property>
<name>javax.jdo.option.ConnectionUserName</name>
  <value>hive</value>
</property>

<property>
  <name>javax.jdo.option.ConnectionPassword</name>
  <value>pass</value>
</property>

</configuration>

翻译自:https://stackoverflow.com/questions/36311185/jupyter-pyspark-how-to-run-multiple-notebooks


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

新零售新市场

新零售新市场

吴宇 / 人民邮电 / 2017-8

本书全面而实操地解析汽车后市场,帮助诸多正在或将要转型的企业科学转型,在竞争激烈的市场中赢得一席之地,真正实现“互联网+”的飞跃与升级。本书适合汽车后市场相关领域从业者、汽车后市场创业者,以及对汽车后市场有兴趣的读者阅读。一起来看看 《新零售新市场》 这本书的介绍吧!

SHA 加密
SHA 加密

SHA 加密工具

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试