Databricks notebookを使っててpipを使ったインストールなどで%pip install ...
など出てくる。
あれ?!pip install
じゃダメなの?と思って!pip install
すると問題なく成功します。
念の為、何が違うのか調べてみました。
結論
-
!pip install
: ドライバーノードにのみインストールされる。 -
%pip install
: クラスター全体にインストールされる。
どういうことかというと、Databricksの場合Spark Cluster上でノートブックが実行されるため複数のサーバーが起動しております。
クラスターは全体を指揮するドライバーノードと実際の処理を実行するワーカーノードに分けられ、複数のワーカーノードが起動しております。なので!pip
だとドライバーノードの1台しかインストールされないのです。
これからはデータブリックスでは**%pip
**をこれからは利用しましょう!