適用対象: SQL Server 2019 (15.x)
この記事では、SQL Server ビッグ データ クラスターにアプリケーションを展開する方法について説明します。 Microsoft Visual Studio Code と App Deploy 拡張機能を使用します。
Important
Microsoft SQL Server 2019 ビッグ データ クラスターは廃止されました。 SQL Server 2019 ビッグ データ クラスターのサポートは、2025 年 2 月 28 日の時点で終了しました。 詳細については、Microsoft SQL Server プラットフォーム の発表ブログ投稿 と ビッグ データ オプションを参照してください。
Prerequisites
Capabilities
App Deploy 拡張機能により、Visual Studio Code での次のタスクがサポートされます。
- SQL Server ビッグ データ クラスターを使用して認証する。
- サポートされているランタイムの展開用に、GitHub リポジトリからアプリケーション テンプレートを取得する。
- ユーザーのワークスペースで現在開かれているアプリケーション テンプレートを管理する。
- YAML 形式の仕様を使用してアプリケーションを展開する。
- 展開したアプリを SQL Server ビッグ データ クラスター内で管理する。
- 展開したすべてのアプリと追加情報をサイド バーに表示する。
- 実行仕様を生成してアプリを使用するか、クラスターからアプリを削除する。
- 展開したアプリを YAML の実行仕様を通じて使用する。
以降のセクションでは、App Deploy のインストールについて説明します。 また、機能の概要も示します。
Visual Studio Code に App Deploy 拡張機能をインストールする方法
Visual Studio Code で、App Deploy 拡張機能をインストールします。
Visual Studio Code の一部として App Deploy をインストールするには、GitHub から拡張機能をダウンロードします。
Visual Studio Code を起動し、[拡張機能] サイド バーに移動します。
サイド バーの上部にある [
…] コンテキスト メニューをクリックし、[Install from vsix](vsix からのインストール) を選択します。
ダウンロードした
sqlservbdc-app-deploy.vsixファイルを検索し、それを選択してインストールします。
App Deploy が正常にインストールされると、Visual Studio Code を再読み込みするように求められます。 Visual Studio Code サイド バーに SQL Server BDC アプリ エクスプローラーが表示されます。
アプリ エクスプローラーを読み込む
サイド バーの拡張機能のアイコンを選択します。 サイド パネルが読み込まれ、アプリ エクスプローラーが表示されます。
クラスター エンドポイントに接続する
クラスター エンドポイントに接続するには、次のいずれかの方法を使用できます。
- 下部にある、[
SQL Server BDC Disconnected](SQL Server BDC が切断されました) と示されているステータス バーをクリックします。 - または、上部にある、出口をさす矢印の付いた
Connect to Cluster[新しい接続] ボタンをクリックします。
Visual Studio Code で、適切なエンドポイント、ユーザー名、パスワードの入力を求められます。
エンドポイント Cluster Management Service にポート 30080 で接続します。
このエンドポイントは、コマンド ラインで次のコマンドを使用して見つけることもできます。
azdata bdc endpoint list
この情報を取得するもう 1 つの方法は、Azure Data Studio でサーバーに移動し、[管理] を右クリックすることです。 サービスのエンドポイントが一覧表示されます。
使用するエンドポイントを見つけて、クラスターに接続します。
接続が成功すると、クラスターに接続されたことが Visual Studio Code から通知されます。 展開されたアプリがサイド バーに表示され、エンドポイントとユーザー名がユーザー プロファイルの一部として ./sqldbc に保存されます。 パスワードやトークンが保存されることはありません。 これ以降のログインでは、保存されたホストとユーザー名がプロンプトに事前に入力されますが、パスワードは常に入力する必要があります。 別のクラスター エンドポイントに接続する場合は、[New Connection] (新しい接続) を選択します。 Visual Studio Code を終了したときと、別のワークスペースを開いたとき、接続は自動的に閉じられます。 その後は再接続する必要があります。
アプリ テンプレートを作成する
Visual Studio Code で、アプリ成果物を保存する場所でワークスペースを開きます。
テンプレートから新しいアプリを展開するには、[App Specifications] (アプリの仕様) ペインの [新しいアプリ テンプレート] ボタンを選択します。 名前、ランタイム、新しいアプリの保存先とするローカル コンピューターの場所を確認するプロンプトが表示されます。 指定する名前とバージョンは、DNS-1035 ラベルとする必要があり、小文字の英数字または '-' で構成されている必要があります。 また、アルファベット文字で始まり、英数字で終わる必要もあります。
現在の Visual Studio Code ワークスペースに拡張機能を配置することをお勧めします。 これにより、拡張機能の完全な機能が提供されます。
完了すると、指定した場所に新しいアプリケーション テンプレートがスキャフォールディングされ、ワークスペースに spec.yaml の展開が開きます。 選択したディレクトリがワークスペース内にある場合は、それが [App Specifications] (アプリの仕様) ペインに表示されます。
このテンプレートは、[App Specifications] (アプリの仕様) ペインで次のようにレイアウトされるシンプルな helloworld アプリです。
-
spec.yaml
- アプリの展開方法をクラスターに指示します
-
run-spec.yaml
- アプリの呼び出し方法をクラスターに指示します
アプリのソース コードはワークスペース フォルダーにあります。
-
ソース ファイル名
- これは、
srcでspec.yamlに指定されているソース コード ファイルです。 -
handlerに示されているように、アプリのentrypointと見なされるspec.yamlという 1 つの関数があります。msgという文字列の入力を受け取り、outという文字列の出力を返します。 これらはinputsのoutputsとspec.yamlで指定されます。
- これは、
アプリを展開するために、スキャフォールディングされたテンプレートではなく spec.yaml を使用するには、[New Deploy Spec] (新しいアプリ テンプレート) ボタンの横にある [New App Template] (新しい展開仕様) ボタンを選択します。 ここで、同じプロセスを繰り返します。
spec.yaml のみを受け取ります。これは自由に変更できます。
アプリをデプロイする
アプリは、Deploy App 内の spec.yaml の CodeLens によってすぐに展開することも、[App specifications] (アプリの仕様) メニューで spec.yaml ファイルの横にある稲妻フォルダーのボタンを選択することもできます。 拡張機能により、spec.yaml を配置したディレクトリ内のすべてのファイルが zip 圧縮されます。 その後、アプリがクラスターに展開されます。
Note
spec.yaml は、アプリのソース コード ディレクトリのルート レベルにある必要があります。 また、すべてのアプリ ファイルが確実に spec.yaml と同じディレクトリにあるようにします。
使用する準備ができると、サイド バーのアプリの状態によって通知されます。
サイド ペインでは、次のことを確認できます。
次のリンクを使用して、展開したすべてのアプリを表示できます。
- 状態
- バージョン
- input parameters
- output parameters
- links
- swagger
- details
links をクリックすると、展開されたアプリの swagger.json にアクセスできることがわかります。 これにより、アプリを呼び出すクライアントを作成できます。
詳細については、ビッグ データ クラスターでのアプリケーションの使用に関するページを参照してください。
アプリを実行する
アプリの準備ができたら、run-spec.yaml で呼び出します。 このファイルは、アプリ テンプレートの一部として提供されます。
hello を置き換える文字列を指定します。 次に、CodeLens のリンクまたはサイド バーの稲妻ボタンを使用して、アプリをもう一度実行します。
run-spec オプションが表示されない場合は、クラスターに展開したアプリから生成します。
実行仕様を編集し終わったら、実行します。 アプリの実行が完了すると、Visual Studio Code によってフィードバックが返されます。
前のスクリーンショットでは、ワークスペースの一時 .json ファイルに出力が表示されます。 この出力を保持する場合は、保存できます。 それ以外の場合は、閉じると削除されます。 ファイルに書き込む出力がアプリにない場合、[Successful App Run] (アプリの正常な実行) の状態通知のみが表示されます。 正常に実行されなかった場合は、問題を特定するのに役立つエラー メッセージが表示されます。
アプリを実行するときは、さまざまな方法でパラメーターを渡すことができます。
.json を使用して、要求されるすべての入力を指定できます。これは次のとおりです。
inputs: ./example.json
展開されたアプリが呼び出され、入力パラメーターがプリミティブでない場合は、パラメーターの種類をインラインで指定します。 そのため、配列、ベクトル、データフレーム、複雑な JSON などについては、次のようになります。
- Vector
inputs:x: [1, 2, 3]
- Matrix
inputs:x: [[A,B,C],[1,2,3]]
- Object
inputs:x: {A: 1, B: 2, C: 3}
または、.txt、.json、または .csv ファイルにアプリで必要とする形式で文字列を渡します。 この場合、ファイルの解析は、Node.js Path library に基づきます。ここでは、ファイル パスは string that contains a / or \ character として定義されています。
必須の入力パラメーターが指定されていない場合は、エラー メッセージが表示されます。 文字列ファイル パスが指定された場合、またはパラメーターが無効であることを示している場合は、誤ったファイル パスが提供されます。 アプリ作成者は、自分が定義するパラメーターを確実に理解する必要があります。
アプリを削除するには、[Deployed Apps] (展開済みアプリ) サイド ペインでアプリに移動し、ごみ箱アイコンを選択します。
Next steps
SQL Server ビッグ データ クラスターに展開されているアプリを独自のアプリケーションに統合する方法の詳細については、ビッグ データ クラスター上でのアプリケーションの使用に関するページを参照してください。 「アプリ展開のサンプル」にある追加のサンプルを参照して、拡張機能を試してみることもできます。
SQL Server ビッグ データ クラスターの詳細については、「SQL Server 2019 ビッグ データ クラスターとは」を参照してください。
私たちの目標は、この拡張機能をお客様にとって有益なものにすることです。フィードバックをお待ちしております。 SQL Server チームまでお送りください。