Databricks Runtime 5.5 with Conda (サポート対象外)

Note

このリリースは使用できなくなりました。 Conda を使用して Python ライブラリおよび環境を管理する場合は、Databricks Runtime for Machine Learning のサポートされているバージョンを使用してください。

Databricks Runtime 5.5 with Conda (ベータ版) が導入されます。これにより、Conda を利用して Python ライブラリおよび環境を管理できます。 このランタイムでは、クラスター作成時に次の 2 つのルート Conda 環境オプションを提供します。

  • Databricks Standard 環境には、多くの一般的な Python パッケージの更新されたバージョンが含まれています。 この環境は、Databricks Runtime で実行される既存のノートブックの一時的な置き換えを目的としています。 これは、既定の Databricks Conda ベースのランタイム環境です。
  • Databricks Minimal 環境には、PySpark と Databricks Python ノートブックの機能に必要な最小数のパッケージが含まれています。 この環境は、さまざまな Python パッケージを使用してランタイムをカスタマイズする場合に最適です。

どちらにも Databricks ライブラリ ユーティリティ (dbutils.library) (レガシ) のサポートが含まれています。

Note

Databricks Runtime 5.5 with Conda 内の Scala、Java、R の各ライブラリは、Databricks Runtime 5.5 にあるものと同じです。 詳細については、Databricks Runtime 5.5 LTS (サポート対象外) のリリース ノートを参照してください。 Databricks Runtime with Conda の使用方法については、Conda のページをご覧ください。

新機能

YAML 仕様を使用したノートブックの Conda 環境の更新をサポートするために、新しいノートブック スコープ ライブラリ API が提供されます (Conda のドキュメントを参照)。

dbutils.library.updateCondaEnv('''envYmlContent''')

たとえば、numpy ライブラリを 1.16.4 に更新するには、次を呼び出します。

dbutils.library.updateCondaEnv(
"""channels:
  - default
dependencies:
  - numpy=1.16.4""")

注意

dbutils.library.help("updateCondaEnv") の使用に関する updateCondaEnv の詳細情報を取得できます。

機能強化

  • 標準環境と最小環境のパッケージは、新しいバージョンに更新されます。 パッケージ バージョンの完全な一覧については、「ライブラリ」を参照してください。 主要なパッケージの更新プログラムを次に示します。
    • Python が 3.7.0 から 3.7.3 に更新されました
    • IPython が 6.5.0 から 7.4.0 に更新されました
    • pip が 10.0.1 から 19.0.3 に更新されました
  • ノートブック間の環境の分離を向上させるために、プロセスの分離と ADLS パススルーが有効になります。
  • 忘れやすい -y フラグを渡すのでなく、conda install を使用してパッケージをインストールするために、.condarcalways_yes Conda 構成オプションが True に設定されました。

システム環境

Databricks Runtime 5.5 with Conda のシステム環境は、次のとおり Databricks Runtime 5.5 と異なります。

  • Python: 3.7.x. 現在、Python 3 のみがサポートされています。

ライブラリ

以下は、Databricks Runtime 5.5 with Conda における既定のルート環境のエクスポートされた environment.yml ファイルです。

Databricks Standard

name: databricks-standard
channels:
  - defaults
dependencies:
  - asn1crypto=0.24.0=py37_0
  - backcall=0.1.0=py37_0
  - blas=1.0=openblas
  - boto=2.49.0=py37_0
  - boto3=1.9.162=py_0
  - botocore=1.12.163=py_0
  - ca-certificates=2019.1.23=0
  - certifi=2019.3.9=py37_0
  - cffi=1.12.2=py37h2e261b9_1
  - chardet=3.0.4=py37_1
  - cryptography=2.6.1=py37h1ba5d50_0
  - cython=0.29.6=py37he6710b0_0
  - decorator=4.4.0=py37_1
  - docutils=0.14=py37_0
  - idna=2.8=py37_0
  - ipython=7.4.0=py37h39e3cac_0
  - ipython_genutils=0.2.0=py37_0
  - jedi=0.13.3=py37_0
  - jmespath=0.9.4=py_0
  - krb5=1.16.1=h173b8e3_7
  - libedit=3.1.20181209=hc058e9b_0
  - libffi=3.2.1=hd88cf55_4
  - libgcc-ng=8.2.0=hdf63c60_1
  - libgfortran-ng=7.3.0=hdf63c60_0
  - libopenblas=0.3.6=h5a2b251_0
  - libpq=11.2=h20c2e04_0
  - libstdcxx-ng=8.2.0=hdf63c60_1
  - ncurses=6.1=he6710b0_1
  - nomkl=3.0=0
  - numpy=1.16.2=py37h99e49ec_0
  - numpy-base=1.16.2=py37h2f8d375_0
  - openssl=1.1.1b=h7b6447c_1
  - pandas=0.24.2=py37he6710b0_0
  - parso=0.3.4=py37_0
  - patsy=0.5.1=py37_0
  - pexpect=4.6.0=py37_0
  - pickleshare=0.7.5=py37_0
  - pip=19.0.3=py37_0
  - prompt_toolkit=2.0.9=py37_0
  - psycopg2=2.7.6.1=py37h1ba5d50_0
  - ptyprocess=0.6.0=py37_0
  - pycparser=2.19=py37_0
  - pygments=2.3.1=py37_0
  - pyopenssl=19.0.0=py37_0
  - pysocks=1.6.8=py37_0
  - python=3.7.3=h0371630_0
  - python-dateutil=2.8.0=py37_0
  - pytz=2018.9=py37_0
  - readline=7.0=h7b6447c_5
  - requests=2.21.0=py37_0
  - s3transfer=0.2.0=py37_0
  - scikit-learn=0.20.3=py37h22eb022_0
  - scipy=1.2.1=py37he2b7bc3_0
  - setuptools=40.8.0=py37_0
  - six=1.12.0=py37_0
  - sqlite=3.27.2=h7b6447c_0
  - statsmodels=0.9.0=py37h035aef0_0
  - tk=8.6.8=hbc83047_0
  - traitlets=4.3.2=py37_0
  - urllib3=1.24.1=py37_0
  - wcwidth=0.1.7=py37_0
  - wheel=0.33.1=py37_0
  - xz=5.2.4=h14c3975_4
  - zlib=1.2.11=h7b6447c_3
  - pip:
    - cycler==0.10.0
    - kiwisolver==1.1.0
    - matplotlib==3.0.3
    - pyarrow==0.12.0
    - pyparsing==2.4.0
    - seaborn==0.9.0
prefix: /databricks/conda/envs/databricks-standard

Databricks Minimal

name: databricks-minimal
channels:
  - defaults
dependencies:
  - backcall=0.1.0=py37_0
  - blas=1.0=openblas
  - ca-certificates=2019.1.23=0
  - certifi=2019.3.9=py37_0
  - decorator=4.4.0=py37_1
  - ipython=7.4.0=py37h39e3cac_0
  - ipython_genutils=0.2.0=py37_0
  - jedi=0.13.3=py37_0
  - libedit=3.1.20181209=hc058e9b_0
  - libffi=3.2.1=hd88cf55_4
  - libgcc-ng=8.2.0=hdf63c60_1
  - libgfortran-ng=7.3.0=hdf63c60_0
  - libopenblas=0.3.6=h5a2b251_0
  - libstdcxx-ng=8.2.0=hdf63c60_1
  - ncurses=6.1=he6710b0_1
  - nomkl=3.0=0
  - numpy=1.16.2=py37h99e49ec_0
  - numpy-base=1.16.2=py37h2f8d375_0
  - openssl=1.1.1b=h7b6447c_1
  - pandas=0.24.2=py37he6710b0_0
  - parso=0.3.4=py37_0
  - pexpect=4.6.0=py37_0
  - pickleshare=0.7.5=py37_0
  - pip=19.0.3=py37_0
  - prompt_toolkit=2.0.9=py37_0
  - ptyprocess=0.6.0=py37_0
  - pygments=2.3.1=py37_0
  - python=3.7.3=h0371630_0
  - python-dateutil=2.8.0=py37_0
  - pytz=2018.9=py37_0
  - readline=7.0=h7b6447c_5
  - setuptools=40.8.0=py37_0
  - six=1.12.0=py37_0
  - sqlite=3.27.2=h7b6447c_0
  - tk=8.6.8=hbc83047_0
  - traitlets=4.3.2=py37_0
  - wcwidth=0.1.7=py37_0
  - wheel=0.33.1=py37_0
  - xz=5.2.4=h14c3975_4
  - zlib=1.2.11=h7b6447c_3
  - pip:
    - pyarrow==0.12.0
prefix: /databricks/conda/envs/databricks-minimal