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