ODBC を使って Azure Data Explorer に接続する
Open Database Connectivity (ODBC) は、データベース アクセスのために広く受け入れられているアプリケーション プログラミング インターフェイス (API) です。 Azure Data Explorer は、SQL Server 通信プロトコルのサブセット (MS-TDS) と互換性があります。 この互換性により、SQL Server 用 ODBC ドライバーを Azure Data Explorer で使用できるようになります。
そのため、SQL Server 用 ODBC ドライバーのサポートを備えた任意のアプリケーションから Azure Data Explorer への接続を確立できます。
ODBC 接続を作成する方法については、次のビデオをご覧ください。
または、手順に従って、ODBC を使用してクラスターに接続。
Note
可能な限り専用コネクタを使用することをお勧めします。 使用可能なコネクタの一覧については、 Connectors の概要を参照してください。
前提条件
- ご利用のオペレーティング システム用の Microsoft ODBC Driver for SQL Server バージョン 17.2.0.1 以降。
ODBC を使用してクラスターに接続する
クラスターには、次の方法で接続できます。
ODBC 接続をサポートするアプリケーションから、次の形式の接続文字列を使用してクラスターに接続できます。
"Driver={ODBC Driver 17 for SQL Server};Server=mykustocluster.kusto.windows.net;Database=mykustodatabase;Authentication=ActiveDirectoryIntegrated"
Note
Azure Data Explorer は文字列値を NVARCHAR(MAX)
と見なしており、一部の ODBC アプリケーションではうまく機能しない可能性があります。 接続文字列の Language
パラメーターを使用して)
データを NVARCHAR(
n にキャストします。 たとえば、 Language=any@MaxStringSize:5000
は文字列を NVARCHAR(5000)
としてエンコードします。 詳細については、 チューニング オプションを参照してください。
アプリケーション認証
ODBC でアプリケーション プリンシパル認証を使用するには、Microsoft Entra テナント ID を指定する必要があります。 この構成は、接続文字列、Windows レジストリ、またはodbc.ini ファイルで設定できます。 次のタブの例を参照してください。 詳細については、 チューニング オプションを参照してください。
接続文字列でLanguage=any@AadAuthority:<aad_tenant_id>
を使用してアプリケーション プリンシパルを設定します。 <aad_tenant_id>
、<aad_application_id>
、<aad_application_secret>
をそれぞれ Microsoft Entra テナント ID、Microsoft Entra アプリケーション ID、および Microsoft Entra アプリケーション シークレットに置き換えます。
"Driver={ODBC Driver 17 for SQL Server};Server=<adx_cluster_name>.<region_name>.kusto.windows.net;Database=<adx_database_name>;Authentication=ActiveDirectoryServicePrincipal;Language=any@AadAuthority:<aad_tenant_id>;UID=<aad_application_id>;PWD=<aad_application_secret>"