すべてのプロダクト
Search
ドキュメントセンター

AnalyticDB:Spark SQL実行モード

最終更新日:Jun 11, 2024

AnalyticDB for MySQL Data Lakehouse Edition (V3.0) には、バッチとインタラクティブの2つのSpark SQL実行モードがあります。 各モードで、AnalyticDB for MySQLのメタデータ機能を使用して、AnalyticDB for MySQLのデータベースとテーブルを読み書きできます。 このトピックでは、2つのSpark SQL実行モードの使用法ノート、シナリオ、機能、および起動方法について説明します。

バッチ実行モード

使用上の注意

  • バッチモードでSQL文を実行する場合は、USE <database_name>; 文を実行して、最初にデータベースを選択する必要があります。

  • SQL文でテーブルを指定する場合は、database_name.table_name形式でテーブルを指定する必要があります。

  • DML、DDL、またはDQLステートメントをバッチモードで実行すると、実行の成功または失敗のメッセージが返されますが、データは返されません。 成功したSQL文のサンプル結果がログに表示されます。 SQL文の返されたデータを表示する方法については、Sparkエディターのトピックの「Sparkアプリケーションに関する情報の表示」を参照してください。

シナリオ

  • 相互に依存するSQL文が実行されます。

  • SQL文にはリソースの分離が非常に必要です。

  • 大量のデータが含まれる。 たとえば、SQL文を実行して、一度にETL (extract-transform-load) 操作を実行します。

  • 複雑なサードパーティの依存関係パッケージをアップロードする必要があり、テストと交換を繰り返し行うことができます。

特徴

  • バッチモードで送信されるSQL文は、安定性を確保するために個々のSparkアプリケーションで実行されます。

  • SET spark. SQL. adaptive. coalecePartitions. minPartitionSize = 2MB; などの独立した構成を記述するsql文を実行できます。

  • バッチモードで実行されるSQL文にSELECT文が含まれている場合、SELECT文の実行結果のサンプルがログに表示されます。

起動方法

[SQLConsole] タブで、Sparkエンジンとジョブリソースグループを選択します。 SQL文を実行するときに、表示されるメッセージで [続行] をクリックします。

インタラクティブ実行モード

使用上の注意

  • 対話モードでDDLまたはDMLステートメントを実行すると、最大1,000行の結果データが返されます。

  • 対話モードでDDLステートメントを実行すると、システムは実行の成功または失敗のメッセージを返しますが、データは返しません。 たとえば、CREATE TABLEステートメントを実行すると、実行の成功または失敗のメッセージが返されますが、テーブルデータは返されません。 これは、オープンソースSQLと一致しています。

  • セミコロン (;) で終わる複数のSQL文を入力した場合、Sparkエンジンは最後のSQL文のみを実行します。

  • Thriftサーバーを起動するには時間が必要です。 Thriftサーバーの起動に失敗した場合は、しばらく待ってからもう一度お試しください。

シナリオ

  • すべてのデータを返す必要のないデータ計算操作が実行されます。

  • 多数のDDL文を実行する必要があります。

  • DQLステートメントは、送信された直後に実行する必要があります。 DQLステートメントの実行は、リソースの分離に高い要件を課さず、リソースの分離が失敗する可能性があります。

特徴

  • 同じリソースグループ内のSQL文は共有Thriftサーバーによって実行され、最大1,000行の結果データがAnalyticDB for MySQLコンソールに表示されます。

  • リソースはスレッドレベルで分離されます。 複数のユーザーが同じSparkアプリケーションでSQL文を実行すると、SQL文が相互に介入する可能性があります。

  • SQL文を設定すると、スレッドレベルの設定が有効になります。

  • アプリケーションレベルの設定は、Thriftサーバーを再起動した後にのみ有効になります。 アプリケーションレベルの設定を変更するには、Thriftサーバーを停止し、パラメーターを再設定してから、Thriftサーバーを再起動します。 詳細については、「Thriftサーバーの開始と停止」をご参照ください。

起動方法

ジョブリソースグループを使用して対話モードでSQL文を実行する場合は、Thriftサーバーを起動する必要があります。 Thriftサーバーを起動するには、次のいずれかの方法を使用します。

  • [SQLConsole] タブで、Sparkエンジンとジョブリソースグループを選択します。 SQL文を実行したら、表示されるメッセージの [Thrift Serverの開始] をクリックします。

  • [リソースグループ] タブで、Thriftサーバーを起動するジョブリソースグループを見つけ、[操作] 列の [Thriftサーバーの設定] をクリックします。 パラメーターを設定し、[開始] をクリックします。 詳細については、「Thriftサーバーの開始と停止」トピックの「Thriftサーバーの開始」セクションを参照してください。

ジョブリソースグループのThriftサーバーを起動すると、SQL文は対話モードで実行されます。