Data Lake Analytics を使用して Web サイト ログを分析する方法について説明します。特に、Web サイトにアクセスしようとしたときにエラーが発生した参照元を特定する方法について説明します。
重要
Azure Data Lake Analytics は、2024 年 2 月 29 日に廃止されました。 このお知らせでさらに学んでください。
データ分析の場合、組織は Azure Synapse Analytics 使用することも、Microsoft Fabric することもできます。
前提条件
Visual Studio 2015 または Visual Studio 2013
Visual Studio用Data Lakeツール
Data Lake Tools for Visual Studio がインストールされると、Visual Studio の [ツール] メニューに Data Lake 項目が表示されます。
Data Lake Analytics と Data Lake Tools for Visual Studioに関する基本的な知識です。 作業を開始するには、次を参照してください。
- Data Lake tools for Visual Studioを使用して U-SQL スクリプトを開発します。
Data Lake Analytics アカウント。 「Azure Data Lake Analytics アカウントの作成を参照してください。
サンプル データをインストールします。 Azure portal で Data Lake Analytics アカウントを開き、左側のメニュー [サンプル スクリプト] を選択し、[サンプル データのコピー] 選択します。
Azure に接続する
U-SQL スクリプトをビルドしてテストする前に、まず Azure に接続する必要があります。
Data Lake Analytics に接続するには
- Visual Studio を開きます。
- Data Lake > オプションと設定を選択します。
- 「サインイン」または「ユーザー変更」を選択し、指示に従ってください。
- [OK] 選択して、[オプションと設定] ダイアログを閉じます。
Data Lake Analytics アカウントを閲覧するには
- Visual Studio で、Ctrl キー Alt キーを押しながら S キー 押して、サーバー エクスプローラーの を開きます。
- Server Explorerから、Azureを展開し、Data Lake Analyticsを展開します。 Data Lake Analytics アカウントがある場合は、そのアカウントの一覧が表示されます。 スタジオから Data Lake Analytics アカウントを作成することはできません。 アカウントを作成するには、「Azure portal を使用した Azure Data Lake Analytics の概要」または「Azure PowerShell を使用した Azure Data Lake Analytics の概要」参照してください。
U-SQL アプリケーションの開発
U-SQL アプリケーションは、主に U-SQL スクリプトです。 U-SQL の詳細については、「U-SQLの始め方」を参照してください。
追加のユーザー定義演算子をアプリケーションに追加できます。 詳細については、「Data Lake Analytics ジョブの U-SQL ユーザー定義演算子の開発」を参照してください。
Data Lake Analytics ジョブを作成して送信するには
ファイル > 新しい > プロジェクトを選択します。
U-SQL プロジェクトの種類を選択します。
[OK] を選択. Visual Studio では、Script.usql ファイルを使用してソリューションが作成されます。
Script.usql ファイルに次のスクリプトを入力します。
// Create a database for easy reuse, so you don't need to read from a file very time. CREATE DATABASE IF NOT EXISTS SampleDBTutorials; // Create a Table valued function. TVF ensures that your jobs fetch data from he weblog file with the correct schema. DROP FUNCTION IF EXISTS SampleDBTutorials.dbo.WeblogsView; CREATE FUNCTION SampleDBTutorials.dbo.WeblogsView() RETURNS @result TABLE ( s_date DateTime, s_time string, s_sitename string, cs_method string, cs_uristem string, cs_uriquery string, s_port int, cs_username string, c_ip string, cs_useragent string, cs_cookie string, cs_referer string, cs_host string, sc_status int, sc_substatus int, sc_win32status int, sc_bytes int, cs_bytes int, s_timetaken int ) AS BEGIN @result = EXTRACT s_date DateTime, s_time string, s_sitename string, cs_method string, cs_uristem string, cs_uriquery string, s_port int, cs_username string, c_ip string, cs_useragent string, cs_cookie string, cs_referer string, cs_host string, sc_status int, sc_substatus int, sc_win32status int, sc_bytes int, cs_bytes int, s_timetaken int FROM @"/Samples/Data/WebLog.log" USING Extractors.Text(delimiter:' '); RETURN; END; // Create a table for storing referrers and status DROP TABLE IF EXISTS SampleDBTutorials.dbo.ReferrersPerDay; @weblog = SampleDBTutorials.dbo.WeblogsView(); CREATE TABLE SampleDBTutorials.dbo.ReferrersPerDay ( INDEX idx1 CLUSTERED(Year ASC) DISTRIBUTED BY HASH(Year) ) AS SELECT s_date.Year AS Year, s_date.Month AS Month, s_date.Day AS Day, cs_referer, sc_status, COUNT(DISTINCT c_ip) AS cnt FROM @weblog GROUP BY s_date, cs_referer, sc_status;
U-SQL について理解するには、「Data Lake Analytics U-SQL 言語の概要」を参照してください。
新しい U-SQL スクリプトをプロジェクトに追加し、次のように入力します。
// Query the referrers that ran into errors @content = SELECT * FROM SampleDBTutorials.dbo.ReferrersPerDay WHERE sc_status >=400 AND sc_status < 500; OUTPUT @content TO @"/Samples/Outputs/UnsuccessfulResponses.log" USING Outputters.Tsv();
最初の U-SQL スクリプトに戻り、[送信] ボタンの横に、Analytics アカウントを指定します。
ソリューション エクスプローラー で [Script.usql] を右クリックし、[スクリプトのビルド] を選択します。 [出力] ウィンドウで結果を確認します。
ソリューション エクスプローラーで Script.usqlを右選択し、次に [スクリプトの送信]を選択します。
Analytics アカウント がジョブを実行したい場所であることを確認し、[送信]を選択します。 提出の結果とジョブリンクは、提出が完了すると、Data Lake Tools for Visual Studio の結果ウィンドウで使用できます。
ジョブが正常に完了するのを待つ。 ジョブが失敗した場合、ソース ファイルが見つからない可能性が最も高くなります。 このチュートリアルの「前提条件」セクションを参照してください。 トラブルシューティングの詳細については、「Azure Data Lake Analytics ジョブのの監視とトラブルシューティング」を参照してください。
ジョブが完了すると、次の画面が表示されます。
次に、Script1.usqlに対して手順 7 から 10 を繰り返します。
ジョブの出力を表示するには
- Server Explorerから、Azure展開し、Data Lake Analyticsを展開し、自分の Data Lake Analytics アカウントを展開し、ストレージ アカウントを展開して、既定の Data Lake Storage アカウントを右クリックし、Explorerを選択します。
- サンプル をダブルクリックしてフォルダを開き、その後、Outputsをダブルクリックします。
- UnsuccessfulResponses.logをダブルクリックします。
- ジョブのグラフ ビュー内の出力ファイルをダブルクリックして、出力に直接移動することもできます。
次のステップ
さまざまなツールを使用して Data Lake Analytics の使用を開始するには、次を参照してください。
- Azure ポータルを使用して Data Lake Analytics を始める
- Azure PowerShell を使用して Data Lake Analytics を開始する
- .NET SDK を使用して Data Lake Analytics を始める