Databricks Runtime 6.0 med Conda (stöds inte)

Kommentar

Den här versionen är inte längre tillgänglig. Om du vill använda Conda för att hantera Python-bibliotek och -miljöer använder du en version av Databricks Runtime för Machine Learning som stöds.

Med Databricks Runtime 6.0 med Conda (Beta) kan du använda Conda för att hantera Python-bibliotek och -miljöer. Den här körningen erbjuder två conda-rotmiljöalternativ när klustret skapas:

  • Databricks Standard-miljön innehåller uppdaterade versioner av många populära Python-paket. Den här miljön är avsedd som en drop-in ersättning för befintliga notebook-filer som körs på Databricks Runtime. Det här är standardmiljön för Databricks Conda-baserad körning.
  • Databricks Minimal miljö innehåller ett minsta antal paket som krävs för PySpark- och Databricks Python Notebook-funktioner. Den här miljön är perfekt om du vill anpassa körningen med olika Python-paket.

Båda har stöd för databricks-biblioteksverktyget (dbutils.library) (äldre).

Kommentar

Scala-, Java- och R-biblioteken i Databricks Runtime 6.0 med Conda är identiska med dem i Databricks Runtime 6.0. Mer information finns i viktig information om Databricks Runtime 6.0 (stöds inte). Information om hur du använder Databricks Runtime med Conda finns i Conda.

Nya funktioner

Se Databricks Runtime 6.0 Nya funktioner.

Förbättringar

Se Förbättringar av Databricks Runtime 6.0.

Felkorrigering

Conda-problem 9104 har åtgärdats (Conda-listan misslyckas om "RECORD"-filen har duplicerade poster).

Kända problem

  • Som standard körs varje Python-notebook-fil i sin egen isolerade Conda-miljö. Den här isolerade miljön klonas från conda-rotmiljön. Eftersom den här klonen är en dyr åtgärd kan du i vissa fall uppleva följande problem:

    • Om klusterinstanstypen inte har lokal lagring kan klusterskapandet misslyckas med ett fel som:

      Could not start Spark. This can happen when installing incompatible libraries or when initialization scripts failed.
      databricks_error_message: Spark failed to start: Timed out after ... seconds
      
    • Att samtidigt koppla många Python-notebook-filer till ett enda kluster (till exempel utlöst av schemalagda jobb eller notebook-arbetsflöden) kan orsaka att vissa av dessa notebook-filer inte kan kopplas.

    Om du upplever något av ovanstående problem och du inte behöver köra Python-notebook-filer i isolerade miljöer (dvs. klustret inte delas) kan du inaktivera skapandet av en isolerad Python-miljö för varje Python-notebook-fil genom att false ange spark.databricks.libraryIsolation.enabled i Spark-konfiguration. Om du anger den här flaggan inaktiveras dbutils.libraryockså .

  • Om du uppgraderar den installerade Conda kanske den nya versionen av Conda inte innehåller korrigeringen för Conda-problem 9104 (Conda-listan misslyckas om "RECORD"-filen har duplicerade poster). Om du uppgraderar Conda och ser fel när du kopplar Python-notebook-filer eller använder conda list med felet TypeError: '<' not supported between instances of 'NoneType' and 'str' i drivrutinsloggar eller i en notebook-fil använder du antingen en version av Conda som har korrigeringen eller undviker att uppgradera Conda installerad i den här versionen.

Systemmiljö

Systemmiljön i Databricks Runtime 6.0 med Conda skiljer sig från Databricks Runtime 6.0 på följande sätt:

Det finns vissa skillnader i de installerade Python-biblioteken.

Bibliotek

Följande är den exporterade environment.yml filen för standardrotmiljöer på Databricks Runtime 6.0 med Conda.

Databricks Standard

name: databricks-standard
channels:
  - defaults
dependencies:
  - _libgcc_mutex=0.1=main
  - 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_1003
  - 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_1
  - 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.1=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.13.0
    - pyparsing==2.4.2
    - seaborn==0.9.0
prefix: /databricks/conda/envs/databricks-standard

Databricks Minimal

name: databricks-minimal
channels:
  - defaults
dependencies:
  - _libgcc_mutex=0.1=main
  - 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_1
  - 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.13.0
prefix: /databricks/conda/envs/databricks-minimal