Nastavení kanálu CI/CD pro Azure Data Lake Analytics
V tomto článku se dozvíte, jak nastavit kanál kontinuální integrace a průběžného nasazování (CI/CD) pro úlohy U-SQL a databáze U-SQL.
Důležité
Azure Data Lake Analytics vyřazena 29. února 2024. Další informace najdete v tomto oznámení.
K analýze dat může vaše organizace použít Azure Synapse Analytics nebo Microsoft Fabric.
Poznámka
Při práci s Azure doporučujeme používat modul Azure Az PowerShellu. Začněte tím, že si projdete téma Instalace Azure PowerShellu. Informace o tom, jak migrovat na modul Az PowerShell, najdete v tématu Migrace Azure PowerShellu z AzureRM na Az.
Použití CI/CD pro úlohy U-SQL
Nástroje Azure Data Lake pro Visual Studio poskytuje typ projektu U-SQL, který vám pomůže uspořádat skripty U-SQL. Použití projektu U-SQL ke správě kódu U-SQL usnadňuje další scénáře CI/CD.
Sestavení projektu U-SQL
Projekt U-SQL je možné sestavit pomocí Microsoft Build Engine (MSBuild) předáním odpovídajících parametrů. Postupujte podle kroků v tomto článku a nastavte proces sestavení pro projekt U-SQL.
Migrace projektu
Před nastavením úlohy sestavení pro projekt U-SQL se ujistěte, že máte nejnovější verzi projektu U-SQL. Otevřete soubor projektu U-SQL v editoru a ověřte, že máte tyto položky importu:
<!-- check for SDK Build target in current path then in USQLSDKPath-->
<Import Project="UsqlSDKBuild.targets" Condition="Exists('UsqlSDKBuild.targets')" />
<Import Project="$(USQLSDKPath)\UsqlSDKBuild.targets" Condition="!Exists('UsqlSDKBuild.targets') And '$(USQLSDKPath)' != '' And Exists('$(USQLSDKPath)\UsqlSDKBuild.targets')" />
Pokud ne, máte dvě možnosti migrace projektu:
- Možnost 1: Změňte starou položku importu na předchozí položku.
- Možnost 2: Otevřete starý projekt v Nástroje Azure Data Lake pro Visual Studio. Použijte novější verzi než 2.3.3000.0. Stará šablona projektu se automaticky upgraduje na nejnovější verzi. Nové projekty vytvořené s novějšími verzemi než 2.3.3000.0 používají novou šablonu.
Získat NuGet
NÁSTROJ MSBuild neposkytuje integrovanou podporu pro projekty U-SQL. Pokud chcete získat tuto podporu, musíte přidat referenční informace pro vaše řešení do balíčku NuGet Microsoft.Azure.DataLake.USQL.SDK , který přidá požadovanou službu jazyka.
Pokud chcete přidat odkaz na balíček NuGet, klikněte pravým tlačítkem na řešení v sadě Visual Studio Průzkumník řešení a zvolte Spravovat balíčky NuGet. Nebo můžete do složky řešení přidat soubor s názvem packages.config
a vložit do něj následující obsah:
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Microsoft.Azure.DataLake.USQL.SDK" version="1.3.180620" targetFramework="net452" />
</packages>
Správa odkazů na databáze U-SQL
Skripty U-SQL v projektu U-SQL můžou obsahovat příkazy dotazů pro databázové objekty U-SQL. V takovém případě musíte před sestavením projektu U-SQL odkazovat na odpovídající projekt databáze U-SQL, který obsahuje definici objektů. Příkladem je dotazování tabulky U-SQL nebo odkazování na sestavení.
Přečtěte si další informace o projektu databáze U-SQL.
Poznámka
Příkaz DROP může způsobit náhodné odstranění. Chcete-li povolit příkaz DROP, je nutné explicitně zadat argumenty NÁSTROJE MSBuild. AllowDropStatement povolí operaci DROP nesouvisenou s daty, jako je například funkce drop assembly a drop table valued. AllowDataDropStatement povolí operaci DROP související s daty, jako je vyřazení tabulky a přetažení schématu. Před použitím funkce AllowDataDropStatement musíte povolit funkci AllowDropStatement.
Sestavení projektu U-SQL pomocí příkazového řádku MSBuild
Nejprve migrujte projekt a získejte balíček NuGet. Pak zavolejte standardní příkazový řádek MSBuild s následujícími argumenty k sestavení projektu U-SQL:
msbuild USQLBuild.usqlproj /p:USQLSDKPath=packages\Microsoft.Azure.DataLake.USQL.SDK.1.3.180615\build\runtime;USQLTargetType=SyntaxCheck;DataRoot=datarootfolder;/p:EnableDeployment=true
Definice argumentů a hodnoty jsou následující:
USQLSDKPath=<U-SQL NuGet package>\build\runtime. Tento parametr odkazuje na instalační cestu balíčku NuGet pro službu jazyka U-SQL.
USQLTargetType=Merge nebo SyntaxCheck:
Sloučit. Režim sloučení kompiluje soubory kódu na pozadí. Příkladem jsou soubory .cs, .py a .r . Do skriptu U-SQL včte výslednou knihovnu kódu definovanou uživatelem. Příkladem může být binární kód knihovny DLL, Python nebo kód jazyka R.
Kontrola syntaxe Režim SyntaxCheck nejprve sloučí soubory kódu na pozadí do skriptu U-SQL. Pak zkompiluje skript U-SQL pro ověření vašeho kódu.
DataRoot=<Cesta> dataRoot. DataRoot je potřeba pouze pro režim SyntaxCheck. Když sestaví skript s režimem SyntaxCheck, nástroj MSBuild zkontroluje odkazy na databázové objekty ve skriptu. Před sestavením nastavte odpovídající místní prostředí, které obsahuje odkazované objekty z databáze U-SQL ve složce DataRoot počítače sestavení. Tyto závislosti databáze můžete spravovat také odkazem na projekt databáze U-SQL. Nástroj MSBuild pouze kontroluje odkazy na objekty databáze, nikoli soubory.
EnableDeployment=true nebo false. EnableDeployment označuje, jestli je během procesu sestavení povoleno nasazovat odkazované databáze U-SQL. Pokud odkazujete na projekt databáze U-SQL a využíváte databázové objekty ve skriptu U-SQL, nastavte tento parametr na hodnotu true.
Průběžná integrace prostřednictvím Azure Pipelines
Kromě příkazového řádku můžete k vytváření projektů U-SQL v Azure Pipelines použít také visual studio build nebo úlohu MSBuild. Pokud chcete nastavit kanál buildu, nezapomeňte do kanálu buildu přidat dvě úlohy: úlohu obnovení NuGet a úlohu MSBuild.
Přidáním úlohy obnovení NuGet získáte balíček NuGet odkazovaný na řešení, který obsahuje
Azure.DataLake.USQL.SDK
, aby nástroj MSBuild mohl najít cíle jazyka U-SQL. Pokud chcete použít ukázku argumentů NÁSTROJE MSBuild přímo v kroku 2, nastavte rozšířený>cílový adresář na$(Build.SourcesDirectory)/packages
hodnotu .Nastavte argumenty MSBuild v nástrojích sestavení sady Visual Studio nebo v úloze MSBuild, jak je znázorněno v následujícím příkladu. Nebo můžete pro tyto argumenty definovat proměnné v kanálu buildu Azure Pipelines.
/p:USQLSDKPath=$(Build.SourcesDirectory)/packages/Microsoft.Azure.DataLake.USQL.SDK.1.3.180615/build/runtime /p:USQLTargetType=SyntaxCheck /p:DataRoot=$(Build.SourcesDirectory) /p:EnableDeployment=true
Výstup sestavení projektu U-SQL
Po spuštění sestavení se všechny skripty v projektu U-SQL sestaví a vyjdou do souboru ZIP s názvem USQLProjectName.usqlpack
. Struktura složek ve vašem projektu se uchovává ve výstupu komprimovaného sestavení.
Poznámka
Soubory kódu na pozadí pro každý skript U-SQL se sloučí jako vložený příkaz do výstupu sestavení skriptu.
Testování skriptů U-SQL
Azure Data Lake poskytuje projekty testů pro skripty U-SQL a UDO/UDAG/UDF v jazyce C#:
Informace o přidání testovacích případů pro skripty U-SQL a rozšířený kód jazyka C#
Naučte se spouštět testovací případy v Azure Pipelines.
Nasazení úlohy U-SQL
Po ověření kódu prostřednictvím procesu sestavení a testování můžete odesílat úlohy U-SQL přímo ze služby Azure Pipelines prostřednictvím úlohy Azure PowerShell. Skript můžete také nasadit do Azure Data Lake Store nebo Azure Blob Storage a spustit naplánované úlohy prostřednictvím Azure Data Factory.
Odesílání úloh U-SQL prostřednictvím Azure Pipelines
Výstupem sestavení projektu U-SQL je soubor zip s názvem USQLProjectName.usqlpack. Soubor zip obsahuje všechny skripty U-SQL v projektu. K odesílání úloh U-SQL přímo z Azure Pipelines můžete použít úlohu Azure PowerShell v Pipelines s následujícím ukázkovým skriptem PowerShellu.
<#
This script can be used to submit U-SQL Jobs with given U-SQL project build output(.usqlpack file).
This will unzip the U-SQL project build output, and submit all scripts one-by-one.
Note: the code behind file for each U-SQL script will be merged into the built U-SQL script in build output.
Example :
USQLJobSubmission.ps1 -ADLAAccountName "myadlaaccount" -ArtifactsRoot "C:\USQLProject\bin\debug\" -DegreeOfParallelism 2
#>
param(
[Parameter(Mandatory=$true)][string]$ADLAAccountName, # ADLA account name to submit U-SQL jobs
[Parameter(Mandatory=$true)][string]$ArtifactsRoot, # Root folder of U-SQL project build output
[Parameter(Mandatory=$false)][string]$DegreeOfParallelism = 1
)
function Unzip($USQLPackfile, $UnzipOutput)
{
$USQLPackfileZip = Rename-Item -Path $USQLPackfile -NewName $([System.IO.Path]::ChangeExtension($USQLPackfile, ".zip")) -Force -PassThru
Expand-Archive -Path $USQLPackfileZip -DestinationPath $UnzipOutput -Force
Rename-Item -Path $USQLPackfileZip -NewName $([System.IO.Path]::ChangeExtension($USQLPackfileZip, ".usqlpack")) -Force
}
## Get U-SQL scripts in U-SQL project build output(.usqlpack file)
Function GetUsqlFiles()
{
$USQLPackfiles = Get-ChildItem -Path $ArtifactsRoot -Include *.usqlpack -File -Recurse -ErrorAction SilentlyContinue
$UnzipOutput = Join-Path $ArtifactsRoot -ChildPath "UnzipUSQLScripts"
foreach ($USQLPackfile in $USQLPackfiles)
{
Unzip $USQLPackfile $UnzipOutput
}
$USQLFiles = Get-ChildItem -Path $UnzipOutput -Include *.usql -File -Recurse -ErrorAction SilentlyContinue
return $USQLFiles
}
## Submit U-SQL scripts to ADLA account one-by-one
Function SubmitAnalyticsJob()
{
$usqlFiles = GetUsqlFiles
Write-Output "$($usqlFiles.Count) jobs to be submitted..."
# Submit each usql script and wait for completion before moving ahead.
foreach ($usqlFile in $usqlFiles)
{
$scriptName = "[Release].[$([System.IO.Path]::GetFileNameWithoutExtension($usqlFile.fullname))]"
Write-Output "Submitting job for '{$usqlFile}'"
$jobToSubmit = Submit-AzDataLakeAnalyticsJob -Account $ADLAAccountName -Name $scriptName -ScriptPath $usqlFile -DegreeOfParallelism $DegreeOfParallelism
LogJobInformation $jobToSubmit
Write-Output "Waiting for job to complete. Job ID:'{$($jobToSubmit.JobId)}', Name: '$($jobToSubmit.Name)' "
$jobResult = Wait-AzDataLakeAnalyticsJob -Account $ADLAAccountName -JobId $jobToSubmit.JobId
LogJobInformation $jobResult
}
}
Function LogJobInformation($jobInfo)
{
Write-Output "************************************************************************"
Write-Output ([string]::Format("Job Id: {0}", $(DefaultIfNull $jobInfo.JobId)))
Write-Output ([string]::Format("Job Name: {0}", $(DefaultIfNull $jobInfo.Name)))
Write-Output ([string]::Format("Job State: {0}", $(DefaultIfNull $jobInfo.State)))
Write-Output ([string]::Format("Job Started at: {0}", $(DefaultIfNull $jobInfo.StartTime)))
Write-Output ([string]::Format("Job Ended at: {0}", $(DefaultIfNull $jobInfo.EndTime)))
Write-Output ([string]::Format("Job Result: {0}", $(DefaultIfNull $jobInfo.Result)))
Write-Output "************************************************************************"
}
Function DefaultIfNull($item)
{
if ($item -ne $null)
{
return $item
}
return ""
}
Function Main()
{
Write-Output ([string]::Format("ADLA account: {0}", $ADLAAccountName))
Write-Output ([string]::Format("Root folde for usqlpack: {0}", $ArtifactsRoot))
Write-Output ([string]::Format("AU count: {0}", $DegreeOfParallelism))
Write-Output "Starting USQL script deployment..."
SubmitAnalyticsJob
Write-Output "Finished deployment..."
}
Main
Poznámka
Příkazy a Submit-AzDataLakeAnalyticsJob
Wait-AzDataLakeAnalyticsJob
jsou Azure PowerShell rutinami pro Azure Data Lake Analytics v architektuře Azure Resource Manager. Budete potřebovat pracovní stanici s nainstalovaným Azure PowerShell. Další příkazy a příklady najdete v seznamu příkazů .
Nasazení úloh U-SQL prostřednictvím Azure Data Factory
Úlohy U-SQL můžete odesílat přímo z Azure Pipelines. Nebo můžete vytvořené skripty nahrát do Azure Data Lake Store nebo Azure Blob Storage a spouštět naplánované úlohy prostřednictvím Azure Data Factory.
Pomocí úlohy Azure PowerShell v Azure Pipelines s následujícím ukázkovým skriptem PowerShellu nahrajte skripty U-SQL do účtu Azure Data Lake Store:
<#
This script can be used to upload U-SQL files to ADLS with given U-SQL project build output(.usqlpack file).
This will unzip the U-SQL project build output, and upload all scripts to ADLS one-by-one.
Example :
FileUpload.ps1 -ADLSName "myadlsaccount" -ArtifactsRoot "C:\USQLProject\bin\debug\"
#>
param(
[Parameter(Mandatory=$true)][string]$ADLSName, # ADLS account name to upload U-SQL scripts
[Parameter(Mandatory=$true)][string]$ArtifactsRoot, # Root folder of U-SQL project build output
[Parameter(Mandatory=$false)][string]$DestinationFolder = "USQLScriptSource" # Destination folder in ADLS
)
Function UploadResources()
{
Write-Host "************************************************************************"
Write-Host "Uploading files to $ADLSName"
Write-Host "***********************************************************************"
$usqlScripts = GetUsqlFiles
$files = @(get-childitem $usqlScripts -recurse)
foreach($file in $files)
{
Write-Host "Uploading file: $($file.Name)"
Import-AzDataLakeStoreItem -AccountName $ADLSName -Path $file.FullName -Destination "/$(Join-Path $DestinationFolder $file)" -Force
}
}
function Unzip($USQLPackfile, $UnzipOutput)
{
$USQLPackfileZip = Rename-Item -Path $USQLPackfile -NewName $([System.IO.Path]::ChangeExtension($USQLPackfile, ".zip")) -Force -PassThru
Expand-Archive -Path $USQLPackfileZip -DestinationPath $UnzipOutput -Force
Rename-Item -Path $USQLPackfileZip -NewName $([System.IO.Path]::ChangeExtension($USQLPackfileZip, ".usqlpack")) -Force
}
Function GetUsqlFiles()
{
$USQLPackfiles = Get-ChildItem -Path $ArtifactsRoot -Include *.usqlpack -File -Recurse -ErrorAction SilentlyContinue
$UnzipOutput = Join-Path $ArtifactsRoot -ChildPath "UnzipUSQLScripts"
foreach ($USQLPackfile in $USQLPackfiles)
{
Unzip $USQLPackfile $UnzipOutput
}
return Get-ChildItem -Path $UnzipOutput -Include *.usql -File -Recurse -ErrorAction SilentlyContinue
}
UploadResources
CI/CD pro databázi U-SQL
Nástroje Azure Data Lake pro Visual Studio poskytuje šablony projektů databáze U-SQL, které vám pomůžou vyvíjet, spravovat a nasazovat databáze U-SQL. Přečtěte si další informace o projektu databáze U-SQL.
Sestavení projektu databáze U-SQL
Získání balíčku NuGet
NÁSTROJ MSBuild neposkytuje integrovanou podporu pro databázové projekty U-SQL. Pokud chcete tuto možnost získat, musíte do balíčku NuGet Microsoft.Azure.DataLake.USQL.SDK přidat odkaz na vaše řešení, který přidá požadovanou službu jazyka.
Pokud chcete přidat odkaz na balíček NuGet, klikněte pravým tlačítkem na řešení v sadě Visual Studio Průzkumník řešení. Zvolte Spravovat balíčky NuGet. Pak vyhledejte a nainstalujte balíček NuGet. Nebo můžete do složky řešení přidat soubor s názvempackages.config a vložit do něj následující obsah:
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Microsoft.Azure.DataLake.USQL.SDK" version="1.3.180615" targetFramework="net452" />
</packages>
Sestavení databázového projektu U-SQL pomocí příkazového řádku NÁSTROJE MSBuild
Pokud chcete sestavit projekt databáze U-SQL, zavolejte standardní příkazový řádek MSBuild a jako další argument předejte odkaz na balíček NuGet sady U-SQL SDK. Prohlédněte si následující příklad:
msbuild DatabaseProject.usqldbproj /p:USQLSDKPath=packages\Microsoft.Azure.DataLake.USQL.SDK.1.3.180615\build\runtime
Argument USQLSDKPath=<U-SQL Nuget package>\build\runtime
odkazuje na instalační cestu balíčku NuGet pro službu jazyka U-SQL.
Průběžná integrace s využitím Azure Pipelines
Kromě příkazového řádku můžete k vytváření databázových projektů U-SQL v Azure Pipelines použít visual Studio Build nebo úlohu MSBuild. Pokud chcete nastavit úlohu sestavení, nezapomeňte do kanálu sestavení přidat dva úkoly: úlohu obnovení NuGet a úlohu MSBuild.
Přidáním úlohy obnovení NuGet získáte balíček NuGet odkazovaný na řešení, který obsahuje
Azure.DataLake.USQL.SDK
, aby nástroj MSBuild mohl najít cíle jazyka U-SQL. Pokud chcete použít ukázku argumentů NÁSTROJE MSBuild přímo v kroku 2, nastavte rozšířený>cílový adresář na$(Build.SourcesDirectory)/packages
hodnotu .Nastavte argumenty NÁSTROJE MSBuild v nástrojích sestavení sady Visual Studio nebo v úloze NÁSTROJE MSBuild, jak je znázorněno v následujícím příkladu. Nebo můžete pro tyto argumenty definovat proměnné v kanálu sestavení Azure Pipelines.
/p:USQLSDKPath=$(Build.SourcesDirectory)/packages/Microsoft.Azure.DataLake.USQL.SDK.1.3.180615/build/runtime
Výstup sestavení projektu databáze U-SQL
Výstupem sestavení pro projekt databáze U-SQL je balíček nasazení databáze U-SQL s názvem s příponou .usqldbpack
. Balíček .usqldbpack
je soubor zip, který obsahuje všechny příkazy DDL v jednom skriptu U-SQL ve složce DDL. Obsahuje všechny knihovny DLL a další soubory pro sestavení v dočasné složce.
Testování funkcí s hodnotou tabulky a uložených procedur
Přidání testovacích případů pro funkce s hodnotou tabulky a uložené procedury přímo není v současné době podporováno. Alternativním řešením je vytvořit projekt U-SQL, který obsahuje skripty U-SQL, které tyto funkce volají a zapisují pro ně testovací případy. Pomocí následujících kroků nastavte testovací případy pro funkce s hodnotou tabulky a uložené procedury definované v projektu databáze U-SQL:
Vytvořte projekt U-SQL pro účely testování a pište skripty U-SQL, které volají funkce s hodnotou tabulky a uložené procedury.
Přidejte odkaz na databázi do projektu U-SQL. Pokud chcete získat funkci s hodnotou tabulky a definici uložené procedury, musíte odkazovat na databázový projekt, který obsahuje příkaz DDL. Přečtěte si další informace o odkazech na databáze.
Přidejte testovací případy pro skripty U-SQL, které volají funkce s hodnotou tabulky a uložené procedury. Zjistěte, jak přidat testovací případy pro skripty U-SQL.
Nasazení databáze U-SQL prostřednictvím Azure Pipelines
PackageDeploymentTool.exe
poskytuje programovací rozhraní a rozhraní příkazového řádku, která pomáhají nasadit balíčky nasazení databáze U-SQL , .usqldbpack. Sada SDK je součástí balíčku NuGet sady U-SQL SDK, který se nachází na adrese build/runtime/PackageDeploymentTool.exe. Pomocí nástroje PackageDeploymentTool.exe
můžete nasadit databáze U-SQL do účtů Azure Data Lake Analytics i místních účtů.
Poznámka
Podpora příkazového řádku PowerShellu a úloha verze Azure Pipelines pro nasazení databáze U-SQL momentálně čeká na vyřízení.
Pomocí následujících kroků nastavte úlohu nasazení databáze v Azure Pipelines:
Přidejte úlohu skriptu PowerShellu do kanálu sestavení nebo verze a spusťte následující skript PowerShellu. Tato úloha pomáhá získat závislosti sady Azure SDK pro
PackageDeploymentTool.exe
aPackageDeploymentTool.exe
. Můžete nastavit parametry -AzureSDK a -DBDeploymentTool a načíst závislosti a nástroj nasazení do konkrétních složek. V kroku 2 předejte cestuPackageDeploymentTool.exe
-AzureSDK do jako parametr -AzureSDKPath.<# This script is used for getting dependencies and SDKs for U-SQL database deployment. PowerShell command line support for deploying U-SQL database package(.usqldbpack file) will come soon. Example : GetUSQLDBDeploymentSDK.ps1 -AzureSDK "AzureSDKFolderPath" -DBDeploymentTool "DBDeploymentToolFolderPath" #> param ( [string]$AzureSDK = "AzureSDK", # Folder to cache Azure SDK dependencies [string]$DBDeploymentTool = "DBDeploymentTool", # Folder to cache U-SQL database deployment tool [string]$workingfolder = "" # Folder to execute these command lines ) if ([string]::IsNullOrEmpty($workingfolder)) { $scriptpath = $MyInvocation.MyCommand.Path $workingfolder = Split-Path $scriptpath } cd $workingfolder echo "workingfolder=$workingfolder, outputfolder=$outputfolder" echo "Downloading required packages..." iwr https://www.nuget.org/api/v2/package/Microsoft.Azure.Management.DataLake.Analytics/3.5.1-preview -outf Microsoft.Azure.Management.DataLake.Analytics.3.5.1-preview.zip iwr https://www.nuget.org/api/v2/package/Microsoft.Azure.Management.DataLake.Store/2.4.1-preview -outf Microsoft.Azure.Management.DataLake.Store.2.4.1-preview.zip iwr https://www.nuget.org/api/v2/package/Microsoft.IdentityModel.Clients.ActiveDirectory/2.28.3 -outf Microsoft.IdentityModel.Clients.ActiveDirectory.2.28.3.zip iwr https://www.nuget.org/api/v2/package/Microsoft.Rest.ClientRuntime/2.3.11 -outf Microsoft.Rest.ClientRuntime.2.3.11.zip iwr https://www.nuget.org/api/v2/package/Microsoft.Rest.ClientRuntime.Azure/3.3.7 -outf Microsoft.Rest.ClientRuntime.Azure.3.3.7.zip iwr https://www.nuget.org/api/v2/package/Microsoft.Rest.ClientRuntime.Azure.Authentication/2.3.3 -outf Microsoft.Rest.ClientRuntime.Azure.Authentication.2.3.3.zip iwr https://www.nuget.org/api/v2/package/Newtonsoft.Json/6.0.8 -outf Newtonsoft.Json.6.0.8.zip iwr https://www.nuget.org/api/v2/package/Microsoft.Azure.DataLake.USQL.SDK/ -outf USQLSDK.zip echo "Extracting packages..." Expand-Archive Microsoft.Azure.Management.DataLake.Analytics.3.5.1-preview.zip -DestinationPath Microsoft.Azure.Management.DataLake.Analytics.3.5.1-preview -Force Expand-Archive Microsoft.Azure.Management.DataLake.Store.2.4.1-preview.zip -DestinationPath Microsoft.Azure.Management.DataLake.Store.2.4.1-preview -Force Expand-Archive Microsoft.IdentityModel.Clients.ActiveDirectory.2.28.3.zip -DestinationPath Microsoft.IdentityModel.Clients.ActiveDirectory.2.28.3 -Force Expand-Archive Microsoft.Rest.ClientRuntime.2.3.11.zip -DestinationPath Microsoft.Rest.ClientRuntime.2.3.11 -Force Expand-Archive Microsoft.Rest.ClientRuntime.Azure.3.3.7.zip -DestinationPath Microsoft.Rest.ClientRuntime.Azure.3.3.7 -Force Expand-Archive Microsoft.Rest.ClientRuntime.Azure.Authentication.2.3.3.zip -DestinationPath Microsoft.Rest.ClientRuntime.Azure.Authentication.2.3.3 -Force Expand-Archive Newtonsoft.Json.6.0.8.zip -DestinationPath Newtonsoft.Json.6.0.8 -Force Expand-Archive USQLSDK.zip -DestinationPath USQLSDK -Force echo "Copy required DLLs to output folder..." mkdir $AzureSDK -Force mkdir $DBDeploymentTool -Force copy Microsoft.Azure.Management.DataLake.Analytics.3.5.1-preview\lib\net452\*.dll $AzureSDK copy Microsoft.Azure.Management.DataLake.Store.2.4.1-preview\lib\net452\*.dll $AzureSDK copy Microsoft.IdentityModel.Clients.ActiveDirectory.2.28.3\lib\net45\*.dll $AzureSDK copy Microsoft.Rest.ClientRuntime.2.3.11\lib\net452\*.dll $AzureSDK copy Microsoft.Rest.ClientRuntime.Azure.3.3.7\lib\net452\*.dll $AzureSDK copy Microsoft.Rest.ClientRuntime.Azure.Authentication.2.3.3\lib\net452\*.dll $AzureSDK copy Newtonsoft.Json.6.0.8\lib\net45\*.dll $AzureSDK copy USQLSDK\build\runtime\*.* $DBDeploymentTool
Přidejte úlohu příkazového řádku do kanálu sestavení nebo verze a vyplňte skript voláním
PackageDeploymentTool.exe
příkazu .PackageDeploymentTool.exe
se nachází ve složce definované $DBDeploymentTool . Ukázkový skript je následující:Místní nasazení databáze U-SQL:
PackageDeploymentTool.exe deploylocal -Package <package path> -Database <database name> -DataRoot <data root path>
Použití režimu interaktivního ověřování k nasazení databáze U-SQL do účtu Azure Data Lake Analytics:
PackageDeploymentTool.exe deploycluster -Package <package path> -Database <database name> -Account <account name> -ResourceGroup <resource group name> -SubscriptionId <subscript id> -Tenant <tenant name> -AzureSDKPath <azure sdk path> -Interactive
K nasazení databáze U-SQL do účtu Azure Data Lake Analytics použijte ověřování tajných klíčů:
PackageDeploymentTool.exe deploycluster -Package <package path> -Database <database name> -Account <account name> -ResourceGroup <resource group name> -SubscriptionId <subscript id> -Tenant <tenant name> -ClientId <client id> -Secrete <secrete>
K nasazení databáze U-SQL do účtu Azure Data Lake Analytics použijte ověřování certFile:
PackageDeploymentTool.exe deploycluster -Package <package path> -Database <database name> -Account <account name> -ResourceGroup <resource group name> -SubscriptionId <subscript id> -Tenant <tenant name> -ClientId <client id> -Secrete <secrete> -CertFile <certFile>
popisy parametrů PackageDeploymentTool.exe
Běžné parametry
Parametr | Popis | Výchozí hodnota | Vyžadováno |
---|---|---|---|
Balíček | Cesta k balíčku nasazení databáze U-SQL, který se má nasadit. | null | true |
Databáze | Název databáze, do které se má nasadit nebo vytvořit. | master | false (nepravda) |
Logfile | Cesta k souboru pro protokolování. Výchozí hodnota je standardní (konzola). | null | false (nepravda) |
LogLevel | Úroveň protokolu: Podrobné, Normální, Upozornění nebo Chyba. | LogLevel.Normal | false (nepravda) |
Parametr pro místní nasazení
Parametr | Popis | Výchozí hodnota | Vyžadováno |
---|---|---|---|
DataRoot | Cesta k místní kořenové složce dat. | null | true |
Parametry nasazení azure Data Lake Analytics
Parametr | Popis | Výchozí hodnota | Vyžadováno |
---|---|---|---|
Účet | Určuje, do kterého účtu Azure Data Lake Analytics se má nasadit podle názvu účtu. | null | true |
ResourceGroup | Název skupiny prostředků Azure pro účet Azure Data Lake Analytics. | null | true |
SubscriptionId | ID předplatného Azure pro účet Azure Data Lake Analytics. | null | true |
Tenant | Název tenanta je název Microsoft Entra domény. Najdete ho na stránce správy předplatného v Azure Portal. | null | true |
AzureSDKPath | Cesta k vyhledávání závislých sestavení v sadě Azure SDK. | null | true |
Interaktivní | Určuje, jestli se má k ověřování používat interaktivní režim. | false (nepravda) | false (nepravda) |
ClientId | MICROSOFT ENTRA ID aplikace požadované pro neinteraktivní ověřování. | null | Vyžaduje se pro neinteraktivní ověřování. |
Tajný kód | Tajný kód nebo heslo pro neinteraktivní ověřování. Měl by se používat pouze v důvěryhodném a zabezpečeném prostředí. | null | Vyžaduje se pro neinteraktivní ověřování, jinak použijte SecreteFile. |
Soubor tajných kódů | Soubor uloží tajný kód nebo heslo pro neinteraktivní ověřování. Ujistěte se, že je čitelný jenom pro aktuálního uživatele. | null | Vyžaduje se pro neinteraktivní ověřování, jinak použijte tajný kód. |
Soubor certifikátu | Soubor uloží certifikaci X.509 pro neinteraktivní ověřování. Ve výchozím nastavení se používá ověřování pomocí tajného klíče klienta. | null | false (nepravda) |
JobPrefix | Předpona pro nasazení databáze úlohy U-SQL DDL. | Deploy_ + DateTime.Now | false (nepravda) |