標準コンピュートの要件と制限事項
このページには、標準コンピュートの要件と制限事項のリストが含まれています。 クラシックコンピュートを使用している場合は、ワークロードが以下に示す制限のいずれかに依存している場合を除き Databricks 、標準アクセスモードを使用することをお勧めします。
initスクリプトとライブラリは、アクセスモードと Databricks Runtime バージョンによってサポートが異なります。 「initスクリプトはどこでインストールできますか?」 および コンピュートスコープのライブラリを参照してください。
現在の標準コンピュートの制限
次のセクションでは、最新の Databricks Runtime バージョンに基づく標準コンピュートの制限事項を示します。 古い Databricks Runtime バージョンに適用される制限については、「 Runtime依存の制限」を参照してください。
ワークロードにこれらの機能が必要な場合は、代わりに 専用コンピュート を使用してください。
一般標準コンピュートの制限事項
- Databricks Runtime for ML はサポートされていません。代わりに、Databricks RuntimeにバンドルされていないMLライブラリをコンピュートスコープのライブラリとしてインストールします。
- GPU 対応コンピュートはサポートしていません。
- Spark 送信ジョブ タスクはサポートされていません。代わりに JAR タスク を使用してください。
- DBUtils およびその他のクライアントは、 外部ロケーションを使用してクラウド ストレージからのみ読み取ることができます。
- DBFSルートとマウントは FUSE をサポートしていません。
言語の制限
- R はサポートされていません。
Spark API の制限事項
-
Spark Context (
sc)、spark.sparkContext、およびsqlContextは Scala ではサポートされていません。- Databricks では、
spark変数を使用してSparkSessionインスタンスを操作することをお勧めします。 - 次の
sc関数もサポートされていません:emptyRDD、range、init_batched_serializer、parallelize、pickleFile、textFile、wholeTextFiles、binaryFiles、binaryRecords、sequenceFile、newAPIHadoopFile、newAPIHadoopRDD、hadoopFile、hadoopRDD、union、runJob、setSystemProperty、uiWebUrl、stop、setJobGroup、setLocalProperty、getConf。
- Databricks では、
-
特定のSpark 構成プロパティの設定はサポートされていません。制限付きプロパティを設定するクラスターの作成または編集はエラーで失敗します。完全な一覧については、Spark 構成の制限事項を参照してください。
-
spark.createDataFrameを使用してローカルデータからDataFrameを作成する場合、行サイズは128MBを超えることはできません。 -
RDD API はサポートされていません。
-
Databricks Runtime の最新バージョンで使用される Spark Connect は、分析と名前解決を実行時に延期するため、コードの動作が変わる可能性があります。「Spark Connect と Spark Classic の比較」を参照してください。
UDF の制限事項
- Hive UDF はサポートされていません。代わりに、 Unity Catalog で UDF を使用します。
- Scala UDF は高階関数内では使用できません。
ストリーミングの制限
リストされている Kafka オプションの一部は、Databricks でサポートされている構成で使用する場合、サポートが制限されます。リストされているすべての Kafka の制限は、バッチ処理とストリーム処理の両方に有効です。「Apache Kafka への接続」を参照してください。
-
ソケットソースの操作はサポートされていません。
-
Unity Catalogによって管理されるデータ ソースで
option("cleanSource", "archive")を使用する場合、sourceArchiveDirはソースと同じ外部ロケーションに存在する必要があります。 -
Kafka ソースおよびシンクの場合、以下のオプションはサポートされていません。
kafka.sasl.client.callback.handler.classkafka.sasl.login.callback.handler.classkafka.sasl.login.classkafka.partition.assignment.strategy
-
Python
foreachBatchはThreadPoolExecutorまたはマルチスレッド実行をサポートしていません。マルチスレッド実行ではエラーが発生しない場合もありますが、データの破損や結果の不整合を引き起こす可能性があります。
ネットワークとファイルシステムの制限
-
標準コンピュート 実行コマンド ファイルシステムの機密部分へのアクセスを禁止された低特権ユーザーとして実行します。
-
DBFS の POSIX スタイル パス (
/) はサポートされていません。 -
ワークスペース管理者と ANY FILE アクセス許可を持つユーザーのみが、DBFS を使用してファイルを直接操作できます。
-
インスタンスのメタデータサービスや、 Databricks VPCで実行されているサービスに接続することはできません。
環境変数の制限事項
標準のコンピュートでは、Sparkエンジンとinitスクリプトで使用できる環境変数は、事前に定義されたセットのみです。クラスターに設定した環境変数で、このセットに含まれていないものは、UDFを含むユーザーコードで引き続き利用できますが、Sparkエンジンまたはinitスクリプトでは利用できません。
このセットには、一般的な構成、認証情報、およびランタイム変数が含まれます。以下の例は網羅的ではありません。
- ネットワークとプロキシ:
HTTP_PROXY、HTTPS_PROXY、NO_PROXY - TLS証明書:
REQUESTS_CA_BUNDLE、SSL_CERT_FILE - AWS 認証情報とリージョン:
AWS_ACCESS_KEY_ID、AWS_SECRET_ACCESS_KEY、AWS_REGION、AWS_DEFAULT_REGION - Azure資格情報:
AZURE_CLIENT_ID、AZURE_CLIENT_SECRET、AZURE_TENANT_ID - Google クラウド認証情報:
GOOGLE_APPLICATION_CREDENTIALS - Databricks 接続:
DATABRICKS_HOST、DATABRICKS_TOKEN - ロケールとタイムゾーン:
TZ、LANG、LC_ALL - 並列処理とスレッド化:
OMP_NUM_THREADS、OPENBLAS_NUM_THREADS、MKL_NUM_THREADS、NUMEXPR_NUM_THREADS - 可観測性:
DD_API_KEY、DD_SITE、DD_ENV - Unity Catalogのデフォルト:
CATALOG、CATALOG_NAME
Scala カーネルの制限事項
標準コンピュートで Scala カーネルを使用する場合、次の制限が適用されます。
- 特定のクラスは、内部のアーモンドカーネルライブラリ(特に
Input)と競合する場合、コードで使用できません。アーモンドで定義されているインポートのリストについては、 アーモンドのインポートを参照してください。 - log4j への直接ログ記録はサポートされていません。
- UI では、データフレームスキーマドロップダウンはサポートされていません。
- ドライバが OOM に達した場合、Scala REPL は終了しません。
//connector/sql-aws-connectors:sql-aws-connectorsが Scala REPL の bazel ターゲットにない場合は、結果をClassNotFoundExceptionで使用します。- Scala カーネルは SQLImplicits と互換性がありません。
ランタイムに依存する制限事項
以下の制限はランタイム更新によって解決されましたが、古いランタイムを使用している場合はワークロードに引き続き適用される可能性があります。
言語サポート
機能 | 必要な Databricks Runtime バージョン |
|---|---|
Scala | 13.3以上 |
すべてのランタイムバンドル Java と Scala ライブラリは、デフォルトで利用可能 | 15.4 LTS以上(15.3以下の場合は |
Spark API のサポート
機能 | 必要な Databricks Runtime バージョン |
|---|---|
SparkML | 17.0以上 |
Python: | 14.0以上 |
Scala | 15.4 LTS以上 |
UDF のサポート
機能 | 必要な Databricks Runtime バージョン |
|---|---|
| 14.3 LTS以上 |
Scala スカラー UDF と Scala UDAFs | 14.3 LTS以上 |
PySpark UDF の Git フォルダー、ワークスペース ファイル、またはボリュームからモジュールをインポートする | 14.3 LTS以上 |
ノートブックまたはコンピュートスコープのライブラリを介して、PySpark UDF で | 14.3 LTS以上 |
非スカラーPythonおよびPandas UDF(UDAFs、UDTF、およびSpark上のPandasを含む) | 14.3 LTS以上 |
Python スカラー UDF と Pandas UDF | 14.1以上 |
ストリーミングのサポート
機能 | 必要な Databricks Runtime バージョン |
|---|---|
| 16.3以上 |
| 14.3 LTS以上 |
Scala | 16.1以上 |
Scala | 16.2以上 |
Scala | 14.2以上 |
Kafka オプション | 13.3 LTS以上 |
Scala | 16.1以上 |
Python | 14.3 LTS以上 |
さらに、Python の場合、Databricks Runtime 14.0 以降で次の動作変更が foreachBatch されています。
print()コマンドは、ドライバー ログに出力を書き込みます。- 関数内の
dbutils.widgetsサブモジュールにはアクセスできません。 - 関数で参照されるファイル、モジュール、またはオブジェクトは、シリアル化可能であり、Spark で使用できる必要があります。
ネットワークとファイルシステムのサポート
機能 | 必要な Databricks Runtime バージョン |
|---|---|
80 および 443 以外のポートへの接続 | 12.2 LTS以上 |
Spark構成の制限事項
Databricks Runtime 19 以降では、標準アクセスモードで次のSpark構成プロパティを設定することはできません。これらのプロパティのいずれか、またはリストされているプレフィックスのいずれか(末尾に .* が付いているものとして表示)で始まるプロパティを設定するクラスターを作成または編集すると、エラーが発生します。アップグレードする前に、クラスター構成、コンピュートポリシー、およびジョブ定義からこれらのプロパティを削除してください。
カテゴリー | 制限された Spark 構成プロパティ |
|---|---|
JVM、クラスパス、およびネイティブライブラリのオプション |
|
環境変数の挿入 |
|
ライブラリ、JAR、およびファイル |
|
Hive metastore JARs |
|
PythonとRの実行可能ファイル |
|
Kubernetes ポッド構成 |
|
ローカルファイルシステムアクセス |
|
Databricks の分離とアクセス制御 |
|