Azure Stream Analytics からの Azure SQL Database 出力

Azure SQL Database は、本質的にリレーショナルであるデータや、リレーショナル データベースにホストされているコンテンツに依存するアプリケーションの出力として使用できます。 Azure Stream Analytics ジョブは、SQL Database の既存のテーブルに書き込まれます。 テーブル スキーマは、ご自分のジョブの出力内のフィールドとその型に正確に一致する必要があります。 Stream Analytics の Azure portal エクスペリエンスを使用すると、ストリーミング クエリをテストし、ジョブによって生成された結果のスキーマと SQL データベース内のターゲット テーブルのスキーマの間に不一致があるかどうかを検出することもできます。 書き込みのスループットを向上させる方法については、Azure SQL Database を出力として使用する Stream Analytics に関する記事を参照してください。 SQL Database 出力オプションを使用して Azure Synapse Analytics SQL プールを出力として指定することもできますが、最適なパフォーマンスを得るために、専用の Azure Synapse Analytics 出力コネクタを使用することをお勧めします。

Azure SQL Managed Instance を出力として使用することもできます。 SQL Managed Instance でパブリック エンドポイントを構成してから、Azure Stream Analytics で次の設定を手動で構成する必要があります。 データベースがアタッチされた SQL Server が実行されている Azure 仮想マシンも、次の設定を手動で構成することによりサポートされます。

出力の構成

次の表に、SQL Database の出力を作成するためのプロパティの名前とその説明を示します。

プロパティ名 説明
出力エイリアス クエリの出力をこのデータベースに出力するためにクエリで使用されるわかりやすい名前です。
データベース ご自分の出力を送信するデータベースの名前です。
サーバー名 論理 SQL サーバーの名前またはマネージド インスタンスの名前。 SQL Managed Instance の場合は、ポート 3342 を指定する必要があります。 たとえば、sampleserver.public.database.windows.net,3342 のようにします。
ユーザー名 データベースに書き込むためのアクセス権が割り当てられているユーザー名です。 Stream Analytics では、SQL Server 認証、システム割り当てマネージド ID、割り当てマネージド ID の使用という 3 つの認証モードがサポートされています
Password データベースに接続するためのパスワード。
テーブル 出力の書き込み先のテーブル名です。 テーブル名は、大文字と小文字が区別されます。 このテーブルのスキーマは、ご自分のジョブの出力によって生成されるフィールドの数とその型に正確に一致する必要があります。
パーティション構成を継承する ご自分の以前のクエリ ステップのパーティション構成を継承し、テーブルへの複数のライターによる完全な並列トポロジを有効にするためのオプションです。 詳細については、「Azure SQL Database への Azure Stream Analytics の出力」を参照してください。
最大バッチ カウント 各一括挿入トランザクションで送信されるレコード数の推奨される上限です。

Azure Stream Analytics から Azure Synapse Analytics への出力を可能にする 2 つのアダプターがあります。SQL Database と Azure Synapse です。 次のいずれかの条件に該当する場合は、SQL Database アダプターではなく、Azure Synapse Analytics アダプターを選択することをお勧めします。

  • スループット:現在または将来の予想されるスループットが 10 MB/秒を超える場合は、Azure Synapse のパフォーマンスを向上させるための出力オプションを使用します。

  • 入力パーティション数: 入力パーティションが 8 つ以上ある場合は、Azure Synapse のスケールアウトを向上させるための出力オプションを使用します。

パーティション分割

パーティション分割は有効になっている必要があり、クエリの PARTITION BY 句に基づいています。 パーティション分割の継承オプションが有効になっている場合は、完全並列化可能なクエリに対する入力のパーティション分割に従います。 SQL Azure Database にデータを読み込むときの書き込みスループット パフォーマンスの向上の詳細については、「Azure SQL Database への Azure Stream Analytics の出力」を参照してください。

出力バッチ サイズ

最大メッセージ サイズを構成するには、最大バッチ カウントを使用します。 既定の最大値は 10,000 で、既定の最小値は、1 回の一括挿入あたり 100 行です。 詳細については、Azure SQL の制限に関する記事を参照してください。 すべてのバッチは、最初に最大バッチ カウントを使用して一括挿入されます。 バッチは、SQL の再試行可能なエラーに基づいて (最小バッチ カウントに達するまで) 半分に分割されます。

制限事項

Azure Stream Analytics ジョブを VM 上の SQL する場合、自己署名された Secure Sockets Layer (SSL) 証明書はサポートされません。

次のステップ