サーバーレス コンピューティングの制限事項

この記事では、ノートブックとジョブのサーバーレス コンピューティングの現在の制限事項について説明します。 最も重要な考慮事項の概要から始まり、制限事項の包括的なリファレンス リストを提供します。

言語と API のサポート

  • R はサポートされていません。
  • Spark Connect API のみがサポートされています。 Spark RDD API はサポートされていません。
  • Spark Connect は、サーバーレス コンピューティングで使用され、分析と名前解決を実行時間に延期します。これは、コードの動作を変更する可能性があります。 Spark Connect と Spark クラシックの比較を参照してください。
  • SQL を記述するときの既定値は ANSI SQL です。 spark.sql.ansi.enabledfalse に設定して、ANSI モードをオプトアウトします。
  • spark.createDataFrameを使用してローカル データから DataFrame を作成する場合、行サイズは 128 MB を超えることはできません。

データ アクセスとストレージ

  • Unity カタログを使用して外部データ ソースに接続する必要があります。 外部の場所を使用して、クラウド ストレージにアクセスします。
  • DBFS へのアクセスは制限されています。 代わりに、Unity カタログ ボリューム または ワークスペース ファイル を使用してください。
  • Maven 座標はサポートされていません。
  • グローバル一時ビューはサポートされていません。 セッション間データの受け渡しが必要な場合、Databricks では セッション一時ビュー を使用するか、テーブルを作成することをお勧めします。

ユーザー定義関数 (UDF)

  • ユーザー定義関数 (UDF) はインターネットにアクセスできません。 このため、CREATE FUNCTION (External) コマンドはサポートされていません。 Databricks では、UDF の作成に CREATE FUNCTION (SQL および Python) を使用することをお勧めします。
  • UDF、 mapmapPartitionsなどのユーザー定義のカスタム コードは、メモリ使用量が 1 GB を超えることはできません。
  • Scala UDF は 、上位の関数内では使用できません。

UI とログ記録

  • Spark UI は使用できません。 代わりに、クエリ プロファイルを使用して、Spark クエリに関する情報を表示します。 「クエリ プロファイル」を参照してください。
  • Spark ログは使用できません。 ユーザーは、クライアント側のアプリケーション ログにのみアクセスできます。

ネットワークとワークスペースへのアクセス

  • ワークスペース間アクセスは、ワークスペースが同じリージョンにあり、宛先ワークスペースに IP ACL またはフロントエンド PrivateLink が構成されていない場合にのみ許可されます。
  • Databricks Container Services はサポートされていません。

ストリーミングの制限事項

サーバーレス コンピューティングでは、次の 構造化ストリーミング トリガーがサポートされています

  • Trigger.AvailableNow()。 Databricks では、サーバーレス コンピューティングに対してこのトリガー モードをお勧めします。
  • Trigger.Once()。 この非推奨モードはサポートされていますが、推奨されません。

サーバーレス コンピューティングでは、次のトリガーはサポートされていません。

  • Trigger.Continuous(interval)
  • Trigger.ProcessingTime(interval)
    • 既定では、トリガー モードを指定しない場合、Apache Spark によってトリガーが Trigger.ProcessingTime("0 seconds")に設定されます。 サーバーレス コンピューティングでサポートされるトリガーを設定する必要があります。

サポートされていないトリガーを使用しようとすると、クエリによってエラー INFINITE_STREAMING_TRIGGER_NOT_SUPPORTEDが発生します。

継続的ストリーミング ワークロードの場合は、サーバーレスで継続的モードでトリガーされたパイプライン モードと連続パイプライン モードを使用するか、実行ジョブでTrigger.AvailableNow()を継続的に使用します。

標準アクセス モードでのストリーミングに関するすべての制限も適用されます。 「ストリーミングの制限事項」を参照してください。

ノートブックの制約事項

  • Scala と R はノートブックではサポートされていません。
  • JAR ライブラリはノートブックではサポートされていません。 対処方法については、「サーバーレス コンピューティングのベスト プラクティス」を参照してください。 ジョブ内の JAR タスクがサポートされています。 「ジョブの JAR タスク」を参照してください。
  • ノートブック範囲のライブラリは、開発セッション間ではキャッシュされません。
  • ユーザー間でノートブックを共有するときの TEMP テーブルとビューの共有はサポートされていません。
  • Notebooks 内の DataFrame のオートコンプリートと変数エクスプローラーはサポートされていません。
  • 既定では、新しいノートブックは .ipynb 形式で保存されます。 ノートブックがソース形式で保存されている場合、サーバーレス メタデータが正しくキャプチャされず、一部の機能が期待どおりに機能しない可能性があります。
  • ノートブック タグはサポートされていません。 サーバーレス使用ポリシーを使用して、サーバーレスの使用状況にタグを付けます。

ジョブの制限事項

  • タスク ログは、タスクの実行ごとに分離されません。 ログには、複数のタスクからの出力が含まれます。
  • タスク ライブラリは、ノートブック タスクではサポートされていません。 代わりにノートブック スコープのライブラリを使用してください。 「Notebook スコープのPython ライブラリ」を参照。
  • 既定では、サーバーレス ジョブにはクエリ実行タイムアウトはありません。 spark.databricks.execution.timeout プロパティを使用して、ジョブ クエリの実行タイムアウトを設定できます。 詳細については、「 サーバーレス ノートブックとジョブの Spark プロパティを構成する」を参照してください。

コンピューティング固有の制限事項

次のコンピューティング固有の機能はサポートされていません。

キャッシュの制限事項

Hive の制限事項

  • Hive SerDe テーブル はサポートされていません。 また、Hive SerDe テーブルにデータを読み込む対応する LOAD DATA コマンドはサポートされていません。 このコマンドを使用すると、例外が発生します。

    データ ソースのサポートは、AVRO、BINARYFILE、CSV、DELTA、JSON、KAFKA、ORC、PARQUET、ORC、TEXT、XML に限定されます。

  • Hive 変数 (たとえば、${env:var}${configName}${system:var}spark.sql.variable)、または ${var} 構文を使用した config 変数の参照はサポートされていません。 Hive 変数を使用すると、例外が発生します。

    代わりに、 DECLARE VARIABLESET VARIABLESQL セッション変数の参照 とパラメーター マーカー ('?'、または ':var') を使用して、セッションの状態を宣言、変更、および参照します。 IDENTIFIER 句 を使用して、多くの場合、オブジェクト名をパラメーター化することもできます。

サポートされるデータ ソース

サーバーレス コンピューティングでは、DML 操作 (書き込み、更新、削除) に対して次のデータ ソースがサポートされます。

  • CSV
  • JSON
  • AVRO
  • DELTA
  • KAFKA
  • PARQUET
  • ORC
  • TEXT
  • UNITY_CATALOG
  • BINARYFILE
  • XML
  • SIMPLESCAN
  • ICEBERG

サーバーレス コンピューティングでは、読み取り操作用に次のデータ ソースがサポートされています。

  • CSV
  • JSON
  • AVRO
  • DELTA
  • KAFKA
  • PARQUET
  • ORC
  • TEXT
  • UNITY_CATALOG
  • BINARYFILE
  • XML
  • SIMPLESCAN
  • ICEBERG
  • MYSQL
  • POSTGRESQL
  • SQLSERVER
  • REDSHIFT
  • SNOWFLAKE
  • SQLDW (Azure Synapse)
  • DATABRICKS
  • BIGQUERY
  • ORACLE
  • SALESFORCE
  • SALESFORCE_DATA_CLOUD
  • TERADATA
  • WORKDAY_RAAS
  • MONGODB