<p>如果您的笔记本电脑是由apachespark作为DSX中的服务实例来支持的,那么安装BigDL非常简单。但是你必须先收集一些版本信息。在</p>
<ol>
<li>哪个Spark版本?目前,2.1是DSX支持的最新版本。<br/>
使用Python,每个服务只能安装一个Spark版本的BigDL。在</li>
<li>哪个BigDL版本?目前,0.3.0是最新版本,它支持Spark 2.1。<br/>
如果有疑问,请检查<a href="https://bigdl-project.github.io/master/#release-download/" rel="nofollow noreferrer">download page</a>。火花固定级别无关紧要。在</li>
</ol>
<p>有了这些信息,您可以确定Maven存储库中所需bigdljar文件的URL。
对于示例版本bigdl0.3.0和spark2.1,下载URL是<br/>
<a href="https://repo1.maven.org/maven2/com/intel/analytics/bigdl/bigdl-SPARK_2.1/0.3.0/bigdl-SPARK_2.1-0.3.0-jar-with-dependencies.jar" rel="nofollow noreferrer">https://repo1.maven.org/maven2/com/intel/analytics/bigdl/bigdl-SPARK_2.1/0.3.0/bigdl-SPARK_2.1-0.3.0-jar-with-dependencies.jar</a></p>
<p>对于其他版本,根据需要替换该URL中的0.3.0和2.1。请注意,两个版本都会出现两次,一次出现在路径中,一次出现在文件名中。在</p>
<h2>为Python安装</h2>
<p>您需要JAR和匹配的Python包。Python包只依赖于BigDL的版本,而不依赖于Spark版本。
安装步骤可以从Python笔记本执行:</p>
<ol>
<li><p>安装震击器。在</p>
<pre><code>!(export sv=2.1 bv=0.3.0 ; cd ~/data/libs/ && wget https://repo1.maven.org/maven2/com/intel/analytics/bigdl/bigdl-SPARK_${sv}/${bv}/bigdl-SPARK_${sv}-${bv}-jar-with-dependencies.jar)
</code></pre>
<p>在这里,Spark(<code>sv</code>)和BigDL(<code>bv</code>)的版本被定义为环境变量,因此您可以轻松地调整它们而不必更改URL。</p></li>
<li><p>安装Python模块。在</p>
^{pr2}$
<p>如果要在Python版本之间切换笔记本,请对每个Python版本执行此步骤一次。
(如果没有<code> no-deps</code>,将安装一个冲突版本的pyspark。)</p></li>
</ol>
<p>重启笔记本内核后,BigDL就可以使用了。在</p>
<h2>(不是)为Scala安装</h2>
<p>如果按照上面描述的Python安装JAR,Scala内核中也可以使用它。在</p>
<p>如果你想在Scala中独占使用BigDL,最好不要安装JAR。相反,在笔记本的开头使用<code>%AddJar</code>魔法。最好在第一个代码单元中这样做,以避免类加载问题。在</p>
^{3}$
<p>通过不安装JAR,您可以灵活地在共享同一服务的不同Scala笔记本中使用不同版本的Spark和BigDL。一旦你安装了一个JAR,你很可能会在这个和你用<code>%AddJar</code>拉进来的JAR之间发生冲突。在</p>
<h2>清理</h2>
<p>如果你想安装一个不同版本的BigDL,你必须首先清理。下面是一些命令来检查安装的内容,并删除它。从Python笔记本执行这些命令。在</p>
<ul>
<li><p>检查安装了什么罐子。如果输出为空,则不安装任何输出。在</p>
<pre><code>!find ~/data/libs -name bigdl-\*
</code></pre></li>
<li><p>检查安装了哪个Python模块。如果输出为空,则不安装BigDL。在</p>
<pre><code>!pip freeze | grep -i BigDL
</code></pre></li>
<li><p>删除已安装的BigDL jar。在</p>
<pre><code>!find ~/data/libs -name bigdl-\* -exec rm -vf {} +
</code></pre></li>
<li><p>删除为当前Python版本安装的BigDL Python模块。在</p>
<pre><code>!rm -rf ~/.local/lib/python${_py_version_}/site-packages/{bigdl,BigDL}*
</code></pre>
<p>如果重新安装失败并出现<a href="https://stackoverflow.com/q/47179822">"multiple dist-info directories"</a>消息,请同时执行:</p>
<pre><code>!rm -rf $PIP_BUILD
</code></pre></li>
</ul>