アプリケーション開発の概要 - SQL Database & SQL Managed InstanceApplication development overview - SQL Database & SQL Managed Instance

適用対象: はいAzure SQL Database はいAzure Synapse Analytics (SQL DW)APPLIES TO: yesAzure SQL Database yesAzure Synapse Analytics (SQL DW)

この記事では、Azure 内のデータベースに接続するコードを記述するときの基本的な考慮事項について説明します。This article walks through the basic considerations that a developer should be aware of when writing code to connect to your database in Azure. この記事は、Azure SQL Database と Azure SQL Managed Instance に当てはまります。This article applies to Azure SQL Database, and Azure SQL Managed Instance.

言語とプラットフォームLanguage and platform

さまざまなプログラミング言語とプラットフォームを使用して、Azure SQL Database に対する接続とクエリを実行することができます。You can use various programming languages and platforms to connect and query Azure SQL Database. Azure SQL データベースに接続するために使用できるサンプル アプリケーションを見つけることができます。You can find sample applications that you can use to connect to the Azure SQL database.

cheetahsql-cliVS コードなどのオープン ソース ツールを活用できます。You can leverage open-source tools like cheetah, sql-cli, VS Code. さらに、Azure SQL Database は、Visual StudioSQL Server Management Studio などの Microsoft ツールと連携しています。Additionally, Azure SQL Database works with Microsoft tools like Visual Studio and SQL Server Management Studio. また、Azure portal、PowerShell、REST API も使用でき、生産性向上に役立ちます。You can also use the Azure portal, PowerShell, and REST APIs help you gain additional productivity.

認証Authentication

Azure SQL Database へのアクセスは、ログインとファイアウォールで保護されます。Access to Azure SQL Database is protected with logins and firewalls. Azure SQL Database では、SQL Server および Azure Active Directory 認証ユーザーとログインの両方がサポートされています。Azure SQL Database supports both SQL Server and Azure Active Directory authentication users and logins. Azure Active Directory ログインは、SQL Managed Instance でのみ使用できます。Azure Active Directory logins are available only in SQL Managed Instance.

詳細については、データベース アクセスとログインの管理に関するページを参照してください。Learn more about managing database access and login.

接続Connections

クライアント接続ロジックの中で、タイムアウトが 30 秒になるように既定値をオーバーライドします。In your client connection logic, override the default timeout to be 30 seconds. 既定では 15 秒ですが、インターネットに依存する接続の場合、それでは短すぎます。The default of 15 seconds is too short for connections that depend on the internet.

接続プールを使用している場合は、プログラムで接続をアクティブに使用しておらず、再使用の準備をしていない時間は、接続を必ず閉じてください。If you are using a connection pool, be sure to close the connection the instant your program is not actively using it, and is not preparing to reuse it.

実行時間の長いトランザクションは避けてください。インフラストラクチャまたは接続のエラーにより、トランザクションがロールバックされる可能性があるためです。Avoid long-running transactions because any infrastructure or connection failure might roll back the transaction. 可能であれば、トランザクションを複数のより小さなトランザクションに分割し、バッチ処理を使用してパフォーマンスを向上させますIf possible, split the transaction in the multiple smaller transactions and use batching to improve performance.

回復性Resiliency

Azure SQL Database はクラウド サービスであり、基になるインフラストラクチャで、またはクラウド エンティティ間の通信で発生する一時エラーが想定される場合があります。Azure SQL Database is a cloud service where you might expect transient errors that happen in the underlying infrastructure or in the communication between cloud entities. Azure SQL Database は推移的なインフラストラクチャ エラーに対する回復性がありますが、これらのエラーが接続に影響する場合があります。Although Azure SQL Database is resilient on the transitive infrastructure failures, these failures might affect your connectivity. SQL Database への接続中に一時エラーが発生した場合は、コードで呼び出しを再試行する必要があります。When a transient error occurs while connecting to SQL Database, your code should retry the call. 再試行ロジックでは、複数のクライアントが同時に再試行することで SQL データベースに過大な負荷がかかるのを防ぐために、バックオフ ロジックを使用することをお勧めします。We recommend that retry logic use backoff logic, so that it does not overwhelm the SQL database with multiple clients retrying simultaneously. 再試行ロジックは、SQL Database クライアント プログラムのエラー メッセージによって異なります。Retry logic depends on the error messages for SQL Database client programs.

Azure SQL Database の計画メンテナンス イベントに備える方法の詳細については、「Azure SQL Database での Azure メンテナンス イベントの計画」を参照してください。For more information about how to prepare for planned maintenance events on your Azure SQL Database, see planning for Azure maintenance events in Azure SQL Database.

ネットワークに関する考慮事項Network considerations

次のステップNext steps

SQL DatabaseSQL Managed Instance の機能すべてを確認します。Explore all the capabilities of SQL Database and SQL Managed Instance.

作業を開始するには、Azure SQL Database および Azure SQL Managed Instance のガイドを参照してください。To get started, see the guides for Azure SQL Database and Azure SQL Managed Instances.