Środowisko Databricks Runtime 6.0 z aplikacją Conda (nieobsługiwane)

Uwaga

Ta wersja nie jest już dostępna. Jeśli chcesz używać platformy Conda do zarządzania bibliotekami i środowiskami języka Python, użyj obsługiwanej wersji środowiska Databricks Runtime dla usługi Machine Edukacja.

Środowisko Databricks Runtime 6.0 z aplikacją Conda (beta) umożliwia korzystanie z platformy Conda do zarządzania bibliotekami i środowiskami języka Python. To środowisko uruchomieniowe oferuje dwie główne opcje środowiska Conda podczas tworzenia klastra:

  • Środowisko Databricks Standard zawiera zaktualizowane wersje wielu popularnych pakietów języka Python. To środowisko jest przeznaczone jako zamiennik porzucania istniejących notesów uruchamianych w środowisku Databricks Runtime. Jest to domyślne środowisko uruchomieniowe oparte na usłudze Databricks Conda.
  • Środowisko minimalne usługi Databricks zawiera minimalną liczbę pakietów wymaganych do obsługi notesów PySpark i Databricks w języku Python. To środowisko jest idealne, jeśli chcesz dostosować środowisko uruchomieniowe przy użyciu różnych pakietów języka Python.

Oba obejmują obsługę narzędzia biblioteki usługi Databricks (dbutils.library) (starsza wersja).

Uwaga

Biblioteki Scala, Java i R w środowisku Databricks Runtime 6.0 z aplikacją Conda są identyczne z bibliotekami w środowisku Databricks Runtime 6.0. Aby uzyskać szczegółowe informacje, zobacz informacje o wersji środowiska Databricks Runtime 6.0 (nieobsługiwane). Aby uzyskać informacje na temat używania środowiska Databricks Runtime z aplikacją Conda, zobacz Conda.

Nowe funkcje

Zobacz Databricks Runtime 6.0 New features (Nowe funkcje usługi Databricks Runtime 6.0).

Ulepszenia

Zobacz Ulepszenia środowiska Databricks Runtime 6.0.

Poprawka

Rozwiązano problem Conda 9104 (Lista Conda kończy się niepowodzeniem, jeśli plik "RECORD" ma zduplikowane wpisy).

Znane problemy

  • Domyślnie każdy notes języka Python działa we własnym izolowanym środowisku Conda. To izolowane środowisko jest klonowane z głównego środowiska Conda. Ponieważ klon jest kosztowną operacją, w niektórych przypadkach mogą wystąpić następujące problemy:

    • Jeśli typ wystąpienia klastra nie ma magazynu lokalnego, tworzenie klastra może zakończyć się niepowodzeniem z powodu błędu, takiego jak:

      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
      
    • Równoczesne dołączanie wielu notesów języka Python do jednego klastra (na przykład wyzwalanego przez zaplanowane zadania lub przepływy pracy notesu) może spowodować niepowodzenie dołączenia niektórych z tych notesów.

    Jeśli wystąpią jakiekolwiek powyższe problemy i nie musisz uruchamiać notesów języka Python w środowiskach izolowanych (czyli klastrze nie jest udostępniany), możesz wyłączyć tworzenie izolowanego środowiska języka Python dla każdego notesu języka Python, ustawiając wartość spark.databricks.libraryIsolation.enabled na false w konfiguracji platformy Spark. Ustawienie tej flagi powoduje również wyłączenie dbutils.library.

  • Jeśli uaktualnisz zainstalowaną aplikację Conda, nowa wersja conda może nie zawierać poprawki problemu Conda 9104 (lista Conda kończy się niepowodzeniem, jeśli plik "RECORD" zawiera zduplikowane wpisy). Jeśli uaktualnisz aplikację Conda i wystąpią błędy dołączania notesów języka Python lub używasz go conda list z błędem TypeError: '<' not supported between instances of 'NoneType' and 'str' w dziennikach sterowników lub w notesie, użyj wersji conda, która ma poprawkę lub nie uaktualnia programu Conda zainstalowanej w tej wersji.

Środowisko systemu

Środowisko systemowe w środowisku Databricks Runtime 6.0 z aplikacją Conda różni się od środowiska Databricks Runtime 6.0 w następujący sposób:

Istnieją pewne różnice w zainstalowanych bibliotekach języka Python.

Biblioteki

Poniżej znajduje się wyeksportowany environment.yml plik dla domyślnych środowisk głównych w środowisku Databricks Runtime 6.0 z aplikacją 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

Minimalny rozmiar usługi Databricks

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