PySpark:如何将 GitHub 库导入 Databricks?
Posted
技术标签:
【中文标题】PySpark:如何将 GitHub 库导入 Databricks?【英文标题】:PySpark: How can I import a GitHub library into Databricks? 【发布时间】:2020-02-23 12:01:07 【问题描述】:我想使用这个库在 Databricks 中进行异常检测:iForest。这个库不能通过 PyPi 安装。
如何在 Databricks 中安装来自 GitHub 的库?我读到过使用一种叫做“鸡蛋”的东西,但我不太明白应该如何使用它。
【问题讨论】:
【参考方案1】:您可以克隆 repo 并创建一个 Python 包,如下所述:https://github.com/titicaca/spark-iforest:
步骤 2. 打包 pyspark-iforest 并通过 pip 安装,跳过此步骤 如果您不需要 python pkg,请步骤
cd spark-iforest/python
python setup.py sdist
pip install dist/pyspark-iforest-<version>.tar.gz
这里你只需要第一个命令来生成包,但是你必须改变第二个来生成一个egg包而不是源分发包:
python3 setup.py bdist_egg
现在,您将在 /dist
文件夹中找到该文件:
pyspark_iforest-2.4.0-py3.7.egg
最后,在 Databricks 上,选择 Create > Library 并选择 Python Egg 以上传生成的文件。更多详情请见here。
【讨论】:
【参考方案2】:您还可以使用 %pip 从 GitHub 安装笔记本范围的库(请参阅 documentation)。
【讨论】:
您好,欢迎来到 SO!请阅读tour 和How do I write a good answer? 尝试详细说明如何解决问题。【参考方案3】:如果您在 Databricks 上安装了一个位置,您还可以将pyspark-iforest-<version>.tar.gz
文件复制到那里,然后从那里复制pip install
。或使用上传功能(如果已启用),请参阅here。
【讨论】:
除了提供链接之外,您能用您的话解释一下应该做什么吗?将来这些链接可能会损坏或移动到另一个位置【参考方案4】:%sh git clone https://github.com/titicaca/spark-iforest
然后确保它被克隆到databricks
驱动根路径
%sh ls -al
如果需要,然后使用 pip install
:
%pip install ./yourpackage_name
如果返回已经满足要求的消息,你必须这样做:
%pip uninstall -y yourpackage_name
这将删除可能从PyPi
安装的任何版本的库,而不是 git clone 版本。接下来,重做databricks中的pip安装包。
【讨论】:
以上是关于PySpark:如何将 GitHub 库导入 Databricks?的主要内容,如果未能解决你的问题,请参考以下文章