メインコンテンツまでスキップ

サーバレスコンピュートの制限

この記事では、ノートブックとジョブに対するサーバレス コンピュートの現在の制限について説明します。 まず、最も重要な考慮事項の概要を説明し、次に制限事項の包括的な参照リストを提供します。

制限事項の概要

新しいワークロードを作成する前、またはワークロードをサーバレス コンピュートに移行する前に、まず次の制限事項を考慮してください。

  • Python と SQL のみがサポートされている言語です。
  • Spark Connect APIのみがサポートされます。 Spark RDD APIはサポートされていません。
  • JAR ライブラリはサポートされていません。 回避策については、 サーバレス コンピュートのベストプラクティスを参照してください。
  • サーバレス コンピュートは、すべてのワークスペース ユーザーが利用できます。
  • ノートブック タグはサポートされていません。 予算ポリシーを使用して、サーバレスの使用状況をタグ付けします。
  • ストリーミングの場合、インクリメンタル バッチ ロジックのみを使用できます。 デフォルトまたは時間ベースのトリガー間隔はサポートされていません。 ストリーミングの制限を参照してください。

制限事項の参照リスト

次のセクションでは、サーバレス コンピュートの現在の制限事項を示します。

サーバレス コンピュートは Databricks 標準アクセス モード コンピュート アーキテクチャ (旧称 Shared Access Mode) に基づいています。 次に、標準アクセスモードから継承された最も関連性の高い制限と、その他のサーバレス固有の制限を示します。 標準アクセスモードの制限の完全なリストについては、「 Unity Catalogのコンピュートアクセスモードの制限」を参照してください。

一般的な制限事項

  • Scala と R はサポートされていません。

  • ANSI SQL は、SQL を記述するときのデフォルトです。 ANSI モードをオプトアウトするには、 spark.sql.ansi.enabledfalseに設定します。

  • Spark RDD APIはサポートされていません。

  • Spark Context (sc)、 spark.sparkContextsqlContext はサポートされていません。

  • Webターミナルには対応しておりません。

  • クエリは 48 時間を超えて実行することはできません。

  • 外部データソースに接続するには、 Unity Catalog を使用する必要があります。 外部ロケーションを使用してクラウドストレージにアクセスします。

  • データソースのサポートは、 AVRO、 BINARYFILE、 CSV、DELTA、 JSON、 Kafka、 ORC、 PARQUET、 ORC、 TEXT、およびXMLに限定されています。

  • ユーザー定義関数 (UDF) はインターネットにアクセスできません。 このため、 CREATE FUNCTION (外部) コマンドはサポートされていません。 Databricks では、 CREATE FUNCTION (SQL と Python) を使用して UDF を作成することをお勧めします。

  • 個々の行は、最大サイズの 128MB を超えてはなりません。

  • Spark UI は使用できません。 代わりに、クエリ プロファイルを使用して、Spark クエリに関する情報を表示します。 「クエリ プロファイル」を参照してください。

  • Spark ログは、サーバレス ノートブックおよびジョブを使用している場合は使用できません。 ユーザーは、クライアント側のアプリケーションログにのみアクセスできます。

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

  • グローバル一時ビューはサポートされていません。 Databricks では、 セッションの一時ビュー を使用するか、セッション間のデータの受け渡しが必要なテーブルを作成することをお勧めします。

ストリーミングの制限

機械学習の制限事項

ノートブックの制限

  • ノートブックは 8GB のメモリにアクセスできますが、これは設定できません。
  • ノートブック スコープのライブラリは、開発セッション間でキャッシュされません。
  • ユーザー間でノートブックを共有する場合の TEMP テーブルとビューの共有はサポートされていません。
  • ノートブック内のデータフレームのオートコンプリートと変数エクスプローラーはサポートされていません。

ワークフローの制限事項

  • サーバレス ジョブ用コンピュートのドライバサイズは現在固定されており、変更できません。
  • タスク ログは、タスクの実行ごとに分離されません。 ログには、複数のタスクからの出力が含まれます。
  • タスク ライブラリは、ノートブック タスクではサポートされていません。 代わりに、ノートブック スコープのライブラリを使用してください。 ノートブック スコープの Python ライブラリを参照してください。

コンピュート固有の制限

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

キャッシングの制限

データフレームと SQL キャッシュ API は、サーバレス コンピュートではサポートされていません。 これらの API または SQL コマンドのいずれかを使用すると、例外が発生します。

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} 構文を使用した設定変数の参照はサポートされていません。 Hive 変数を使用すると、例外が発生します。

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