SQL Server のカーソルの動作について、理解が薄い個所がありましたので、調べた内容をまとめておこうと思います。
カーソルについては次の情報を参考にするのが最初のステップとなるかと思います。
SQL Server の情報をメインに Microsoft 製品の勉強内容を日々投稿
SQL Server のカーソルの動作について、理解が薄い個所がありましたので、調べた内容をまとめておこうと思います。
カーソルについては次の情報を参考にするのが最初のステップとなるかと思います。
以前、SQL Server エージェントで Transact-SQL を実行する際に使用されるログインについて という投稿を書きました。
この投稿の中では、sysadmin ロールに含まれていないログインをジョブの所有者に設定した場合の挙動に触れてみました。
ジョブの所有者が sysadmin ロール以外で、Windows 認証のログインを使用している場合、OS 側のログインが無効の状態になっている場合、どのような挙動となるかについて確認する必要がありましたので、その内容をまとめておきたいと思います。
ローカルアカウントではなく、ドメインアカウントを対象としたものについては、次の情報を確認してください。
Azure StackHCI では「SDDC グループ」(SDDC: Software-Defined Data Center) のクラスターグループ内で「ヘルスサービス」リソースが動作しており、Azure Stack HCI の稼働状況の監視が自動的に行われています。
ヘルスサービスによって確認された情報は、イベントログの「Microsoft-Windows-Health/Operational」に出力が行われており、この情報の活用については、Azure Monitor を使用してヘルス サービスのエラーの電子メールを送信する に記載されています。
Azure Stack HCI では、Azure ポータルから「分析情報 (Insights)」 を有効にすることで、Azure Monitor Agent (AMA) が導入され、Insights の構成 に記載されている情報がデフォルトで取得されます。
取得される情報については、前述の「Microsoft-Windows-Health/Operational」も含まれているのですが、この情報を Log Analytics ワークスペース に対しての KQL で取得しようとした場合には、多少加工が必要なようでしたので情報を残しておきたいと思います。
ストレージ: Azure VM 上の SQL Server のパフォーマンスに関するベスト プラクティス に記載されていますが、SQL Server を Azure VM で実行する場合、Premium SSD v2 の利用が推奨されるケースがあります。
- データ ドライブには、Premium P30 と P40 あるいはそれより小さいディスクを使用して、キャッシュ サポートの可用性を確保します。 Ebdsv5 VM シリーズを使用する場合は、高い IOPS と I/O スループットを必要とするワークロードの価格パフォーマンスを向上させる Premium SSD v2 を使用します。
- ログ ドライブについては、Premium SSD v2 または Premium SSD P30 – P80 ディスクのどちらかを評価しながら、容量を計画し、コスト パフォーマンスをテストします
「東日本」でも Premium SSD v2 が使用できるようになりましたが、今まで特性をきちんと調べたことが無かったので、SR で確認をさせていただいた内容を含めながら情報をまとめておきたいと思います。
Azure SQL Database の価格 / リソースの制限の比較 で確認し 料金計算ツール で計算すれば問題はないのですが、Single Database モデルの利用料金の考え方について。
基本的な利用料金については、DTU / vCore / Hyperscale によって考え方が変わる部分と共通的な部分があります。
本投稿の内容が不正確なものだったとしても一切の責任を負うことはできませんので、あらかじめご了承ください。
利用料金の正確な内容については Microsoft の公式の情報が正しいものとなり、本投稿の情報は自分が後から見直すためのメモです。
SQL Server 2022 / SQL Database / Managed Instance では、データベースのファイルサイズを削減するためのコマンドである、DBCC SHRINKFILE に WAIT_AT_LOWPRIORITY というオプションが追加されました。
このオプションを使用した場合のデータファイルのサイズ縮小について動作を把握しておきたかったので、調べてみました。
今月 Vector Similarity Search with Azure SQL database and OpenAI という記事が公開されました。
Azure のデータストアでは次のような機能のベクター検索が提供されています。
Azure SQL Database では、ベクターデータの生成 / 格納するためのデータ型 / ベクターインデックスや、ベクトルの類似性検索を行うためのライブラリはないのですが、この記事では JSON 形式のデータや、Azure OpenAI を組み合わせることでベクトルの類似性検索を行っており、勉強になったのでポイントとなると思った箇所をまとめておこうと思います。
SQL Server でコネクションタイムアウトを発生させる方法としては、
を実行することでコネクションタイムアウトを発生させるという方法があります。
これらの方法では初期の接続ができないためエラーとなりますが、運用環境でコネクションタイムアウトが発生するケースとしては接続プロセスの途中で、タイムアウトの設定秒数に達したため、コネクションタイムアウトが発生するということがあります。
このコネクションタイムアウトの状態を意図的に発生させるための方法を残しておきたいと思います。
Azure のリソースのメトリックは、各リソースの「メトリック」で確認をすることや、 ![]()
メトリック エクスプローラー (すべてのサービスのメトリックまたは、Azure Monitor のブレードのメトリック) から確認することができます。 ![]()
Azure ではデフォルトで Azure Monitor による情報の取得が行われており、Azure Monitor で使用する監視データのソース にデータソースとして使用できる情報が記載されています。
パフォーマンス情報のようなメトリックについては「プラットフォーム メトリック」として、各リソースの診断設定を設定しなくても情報の取得が行われています。
このプラットフォームメトリックについての情報を確認する際には、どの情報を確認すればよいかをよく忘れてしまうので、まとめておきたいと思います。
Bob Ward の SQL Server 2022 Hidden Gems で解説されているのですが、SQL Server 2022 ならびに Azure SQL Database では、query_antipattern という拡張イベントが追加されています。
MS のブログでも紹介されており、最近、新しい記事も公開されました。
この拡張イベントについて、本ブログでも触れておきたいと思います。