SQL Server ビッグ データ クラスターにアプリを展開する方法
適用対象: SQL Server 2019 (15.x)
重要
Microsoft SQL Server 2019 ビッグ データ クラスターのアドオンは廃止されます。 SQL Server 2019 ビッグ データ クラスターのサポートは、2025 年 2 月 28 日に終了します。 ソフトウェア アシュアランス付きの SQL Server 2019 を使用する既存の全ユーザーはプラットフォームで完全にサポートされ、ソフトウェアはその時点まで SQL Server の累積更新プログラムによって引き続きメンテナンスされます。 詳細については、お知らせのブログ記事と「Microsoft SQL Server プラットフォームのビッグ データ オプション」を参照してください。
アプリケーションを SQL Server ビッグ データ クラスターに展開すると、クラスターの計算機能などの多くのベネフィットを活用できるだけでなく、クラスターで使用可能なデータにアクセスすることもできます。 アプリはデータが存在するのと同じクラスターに配置されるため、パフォーマンスが劇的に向上します。
アプリケーションは Azure Data CLI (azdata
) を使用してデプロイおよび管理されます。
この記事では、SQL Server ビッグ データ クラスター内のコマンド ラインからアプリを展開する方法の例を示します。 Visual Studio Code でこれを使用する方法については、Visual Studio Code 拡張機能に関する記事を参照してください。
前提条件
機能
SQL Server 2019 では、アプリケーションの作成、削除、説明、初期化、一覧の実行、更新を行うことができます。 次の表では、azdata で使用できるアプリケーションの展開コマンドについて説明します。
コマンド | 説明 |
---|---|
azdata login |
SQL Server ビッグ データ クラスターにサインインします |
azdata app create |
アプリケーションを作成します。 |
azdata app delete |
アプリケーションを削除します。 |
azdata app describe |
アプリケーションについて記述します。 |
azdata app init |
新しいアプリケーションのスケルトンを開始します。 |
azdata app list |
アプリケーションを一覧表示します。 |
azdata app run |
アプリケーションを実行します。 |
azdata app update |
アプリケーションを更新します。 |
次の例のように、--help
パラメーターを使用してヘルプを取得できます。
azdata app create --help
以下のセクションでは、これらのコマンドについて詳しく説明します。
サインイン
アプリケーションを展開または操作する前に、まず、azdata login
コマンドを使用して SQL Server ビッグ データ クラスターにサインインします。 controller-svc-external
サービスの外部 IP アドレス (例: https://ip-address:30080
) を、クラスターのユーザー名とパスワードと共に指定します。
azdata login --controller-endpoint https://<ip-address-of-controller-svc-external>:30080 --controller-username <user-name>
Azure Kubernetes Service (AKS)
AKS を使用している場合は、次のコマンドを実行し、Bash または cmd ウィンドウで次のコマンドを実行することで controller-svc-external
サービスの IP アドレスを取得します。
kubectl get svc controller-svc-external -n <name of your big data cluster>
Kubeadm で作成された Kubernetes クラスター
次のコマンドを実行して、クラスターにサインインするための IP アドレスを取得します
kubectl get node --selector='node-role.kubernetes.io/master'
アプリのスケルトンを作成する
azdata app init コマンドには、アプリの展開に必要な関連する成果物を含むスキャフォールディングが用意されています。 次の例では、次のコマンドを実行して、これを実行できる add-app を作成します。
azdata app init --name add-app --version v1 --template python
これにより、hello という名前のフォルダーが作成されます。 cd
コマンドを使用してディレクトリに移動し、フォルダー内に生成されたファイルを調べることができます。 spec.yaml には、名前、バージョン、ソース コードなどのアプリが定義されています。 仕様を編集して、名前、バージョン、入力、および出力を変更することができます。
フォルダーに表示される init コマンドからの出力例を次に示します。
add-app.py
run-spec.yaml
spec.yaml
アプリを作成する
アプリケーションを作成するには、Azure Data CLI (azdata
) コマンドと共に app create
を使用します。 これらのファイルは、アプリを作成するマシンのローカルに展開されます。
ビッグ データ クラスターに新しいアプリを作成するには、次の構文を使用します。
azdata app create --spec <directory containing spec file>
次のコマンドは、このコマンドの例を示しています。
azdata app create --spec ./addpy
これは、アプリケーションが addpy
フォルダーに格納されていることを前提としています。 このフォルダーには、spec.yaml
というアプリケーションの仕様ファイルも含まれています。 詳細については、アプリケーションの展開に関するページで spec.yaml
ファイルを参照してください。
このアプリ サンプル アプリを展開するには、addpy
というディレクトリに次のファイルを作成します。
add.py
. 次の Python コードをこのファイルにコピーします。#add.py def add(x, y): result = x+y return result result=add(x,y)
spec.yaml
. 次のコードをこのファイルにコピーします。#spec.yaml name: add-app #name of your python script version: v1 #version of the app runtime: Python #the language this app uses (R or Python) src: ./add.py #full path to the location of the app entrypoint: add #the function that will be called upon execution replicas: 1 #number of replicas needed poolsize: 1 #the pool size that you need your app to scale inputs: #input parameters that the app expects and the type x: int y: int output: #output parameter the app expects and the type result: int
次に、次のコマンドを実行します。
azdata app create --spec ./addpy
list コマンドを使用してアプリが展開されているかどうかを確認できます。
azdata app list
展開が完了していない場合は、次の例のように state
に WaitingforCreate
が表示されます。
[
{
"name": "add-app",
"state": "WaitingforCreate",
"version": "v1"
}
]
展開が正常に完了すると、state
は Ready
状態に変わります。
[
{
"name": "add-app",
"state": "Ready",
"version": "v1"
}
]
アプリを一覧表示する
app list
コマンドを使用して、正常に作成されたすべてのアプリを一覧表示できます。
次のコマンドで、ビッグ データ クラスターで使用できるすべてのアプリケーションが一覧表示されます。
azdata app list
名前とバージョンを指定すると、その特定のアプリとその状態 (Creating または Ready) が一覧表示されます。
azdata app list --name <app_name> --version <app_version>
このコマンドについて次の例を示します。
azdata app list --name add-app --version v1
次の例のような出力が表示されます。
[
{
"name": "add-app",
"state": "Ready",
"version": "v1"
}
]
アプリを削除する
ビッグ データ クラスターからアプリを削除するには、次の構文を使用します。
azdata app delete --name add-app --version v1
関連するコンテンツ
SQL Server ビッグ データ クラスターに展開されているアプリをご使用のアプリケーションに統合する方法の詳細については、ビッグ データ クラスター上でのアプリケーションの実行に関するページとビッグ データ クラスター上のアプリケーションの使用に関するページを参照してください。 その他のサンプルにはついては、アプリの展開サンプルに関するページを参照してください。
SQL Server ビッグ データ クラスターの詳細については、「SQL Server 2019 ビッグ データ クラスターとは」を参照してください。