This page contains Windows bias

About This Page

This page is part of the Azure documentation. It contains code examples and configuration instructions for working with Azure services.

Bias Analysis

Bias Types:
⚠️ powershell_heavy
⚠️ windows_tools
⚠️ missing_linux_example
Summary:
The documentation provides detailed PowerShell examples and instructions for Azure Data Lake Storage query acceleration, but does not offer equivalent command-line examples for Linux or cross-platform shells (e.g., Bash, Azure CLI). The PowerShell sections are present throughout, and installation/setup steps reference Windows-centric tools (PowerShell, Az module) without Linux alternatives. There are no Bash, Azure CLI, or Linux shell script examples, and no mention of Linux-specific tools or patterns.
Recommendations:
  • Add equivalent Azure CLI examples for all PowerShell code snippets, demonstrating how to perform the same operations from Bash or other cross-platform shells.
  • Include instructions for installing and using the Azure CLI on Linux/macOS in the prerequisites and setup sections.
  • Where PowerShell is referenced, clarify that it is available cross-platform, or provide Bash alternatives where possible.
  • Ensure that any references to temporary file creation, file manipulation, or scripting are also shown using Linux shell commands (e.g., mktemp, cat, etc.).
  • Consider adding a 'Linux/macOS' or 'Bash' tab alongside the existing PowerShell tab for parity.
  • Explicitly mention that the SDK examples (.NET, Java, Python, Node.js) are cross-platform, and provide any necessary Linux-specific notes (e.g., package installation commands for apt/yum/pip).
GitHub Create pull request

Scan History

Date Scan ID Status Bias Status
2025-08-19 00:01 #85 completed ✅ Clean
2025-07-13 21:37 #48 completed ❌ Biased
2025-07-12 23:44 #41 in_progress ❌ Biased

Flagged Code Snippets

Install-Module -Name Az -Repository PSGallery -Force
Update-Module -Name Az
Function Get-QueryCsv($ctx, $container, $blob, $query, $hasheaders) { $tempfile = New-TemporaryFile $informat = New-AzStorageBlobQueryConfig -AsCsv -HasHeader:$hasheaders Get-AzStorageBlobQueryResult -Context $ctx -Container $container -Blob $blob -InputTextConfiguration $informat -OutputTextConfiguration (New-AzStorageBlobQueryConfig -AsCsv -HasHeader) -ResultFile $tempfile.FullName -QueryString $query -Force Get-Content $tempfile.FullName } $container = "data" $blob = "csv/csv-general/seattle-library.csv" Get-QueryCsv $ctx $container $blob "SELECT * FROM BlobStorage WHERE _3 = 'Hemingway, Ernest, 1899-1961'" $false
static async Task QueryHemingway(BlockBlobClient blob) { string query = @"SELECT * FROM BlobStorage WHERE _3 = 'Hemingway, Ernest, 1899-1961'"; await DumpQueryCsv(blob, query, false); } private static async Task DumpQueryCsv(BlockBlobClient blob, string query, bool headers) { try { var options = new BlobQueryOptions() { InputTextConfiguration = new BlobQueryCsvTextOptions() { HasHeaders = true, RecordSeparator = "\n", ColumnSeparator = ",", EscapeCharacter = '\\', QuotationCharacter = '"' }, OutputTextConfiguration = new BlobQueryCsvTextOptions() { HasHeaders = true, RecordSeparator = "\n", ColumnSeparator = ",", EscapeCharacter = '\\', QuotationCharacter = '"' }, ProgressHandler = new Progress<long>((finishedBytes) => Console.Error.WriteLine($"Data read: {finishedBytes}")) }; options.ErrorHandler += (BlobQueryError err) => { Console.ForegroundColor = ConsoleColor.Red; Console.Error.WriteLine($"Error: {err.Position}:{err.Name}:{err.Description}"); Console.ResetColor(); }; // BlobDownloadInfo exposes a Stream that will make results available when received rather than blocking for the entire response. using (var reader = new StreamReader((await blob.QueryAsync( query, options)).Value.Content)) { using (var parser = new CsvReader (reader, new CsvConfiguration(CultureInfo.CurrentCulture) { HasHeaderRecord = true })) { while (await parser.ReadAsync()) { Console.Out.WriteLine(String.Join(" ", parser.Parser.Record)); } } } } catch (Exception ex) { System.Windows.Forms.MessageBox.Show("Exception: " + ex.ToString()); } }
Function Get-QueryCsv($ctx, $container, $blob, $query, $hasheaders) { $tempfile = New-TemporaryFile $informat = New-AzStorageBlobQueryConfig -AsCsv -HasHeader:$hasheaders Get-AzStorageBlobQueryResult -Context $ctx -Container $container -Blob $blob -InputTextConfiguration $informat -OutputTextConfiguration (New-AzStorageBlobQueryConfig -AsCsv -HasHeader) -ResultFile $tempfile.FullName -QueryString $query -Force Get-Content $tempfile.FullName } $container = "data" $blob = "csv/csv-general/seattle-library-with-headers.csv" Get-QueryCsv $ctx $container $blob "SELECT BibNum FROM BlobStorage" $true
Get-QueryCsv $ctx $container $blob $query $true Function Get-QueryCsv($ctx, $container, $blob, $query, $hasheaders) { $tempfile = New-TemporaryFile $informat = New-AzStorageBlobQueryConfig -AsCsv -HasHeader:$hasheaders Get-AzStorageBlobQueryResult -Context $ctx -Container $container -Blob $blob -InputTextConfiguration $informat -OutputTextConfiguration (New-AzStorageBlobQueryConfig -AsCsv -HasHeader) -ResultFile $tempfile.FullName -QueryString $query -Force Get-Content $tempfile.FullName } $container = "data" $query = "SELECT BibNum, Title, Author, ISBN, Publisher, ItemType FROM BlobStorage WHERE ItemType IN ('acdvd', 'cadvd', 'cadvdnf', 'calndvd', 'ccdvd', 'ccdvdnf', 'jcdvd', 'nadvd', 'nadvdnf', 'nalndvd', 'ncdvd', 'ncdvdnf')"