Avvio rapido: creare un pool SQL dedicato (in precedenza SQL Data Warehouse) di Azure Synapse Analytics con un modello di ARM (Azure Resource Manager)

Tip

Microsoft Fabric Data Warehouse è un data warehouse relazionale su scala aziendale su una base data lake, con un'architettura futura, un'intelligenza artificiale predefinita e nuove funzionalità. Se non si ha familiarità con il data warehousing, iniziare con Fabric Data Warehouse. I carichi di lavoro esistenti del pool SQL dedicated possono eseguire l'aggiornamento a Fabric per accedere a nuove funzionalità tra data science, analisi in tempo reale e creazione di report.

Questo modello di Azure Resource Manager creerà un pool SQL dedicato (in precedenza SQL Data Warehouse) con la funzionalità Transparent Data Encryption abilitata. Per pool SQL dedicato (in precedenza SQL Data Warehouse) si intendono le funzionalità di data warehousing aziendali disponibili a livello generale in Azure Synapse.

Un modello di Azure Resource Manager è un file JSON (JavaScript Object Notation) che definisce l'infrastruttura e la configurazione del progetto. Il modello utilizza la sintassi dichiarativa. Si descrive la distribuzione prevista senza scrivere la sequenza di comandi di programmazione necessari per creare la distribuzione.

Se il tuo ambiente soddisfa i prerequisiti e hai familiarità con l'uso dei modelli ARM, seleziona il pulsante Distribuisci in Azure. Il modello verrà aperto nel portale di Azure.

Pulsante per distribuire il modello di Resource Manager in Azure.

Prerequisiti

Se non si ha una sottoscrizione di Azure, creare un account gratuito prima di iniziare.

Rivedere il modello

Il modello usato in questo avvio rapido proviene dai modelli di avvio rapido di Azure.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "metadata": {
    "_generator": {
      "name": "bicep",
      "version": "0.26.54.24096",
      "templateHash": "15855786620646717380"
    }
  },
  "parameters": {
    "sqlServerName": {
      "type": "string",
      "defaultValue": "[format('sql{0}', uniqueString(resourceGroup().id))]",
      "metadata": {
        "description": "The SQL Logical Server name."
      }
    },
    "sqlAdministratorLogin": {
      "type": "string",
      "metadata": {
        "description": "The administrator username of the SQL Server."
      }
    },
    "sqlAdministratorPassword": {
      "type": "securestring",
      "metadata": {
        "description": "The administrator password of the SQL Server."
      }
    },
    "databasesName": {
      "type": "string",
      "metadata": {
        "description": "The name of the Database."
      }
    },
    "transparentDataEncryption": {
      "type": "string",
      "defaultValue": "Enabled",
      "allowedValues": [
        "Enabled",
        "Disabled"
      ],
      "metadata": {
        "description": "Enable/Disable Transparent Data Encryption"
      }
    },
    "capacity": {
      "type": "int",
      "minValue": 900,
      "maxValue": 54000,
      "metadata": {
        "description": "DW Performance Level expressed in DTU (i.e. 900 DTU = DW100c)"
      }
    },
    "databaseCollation": {
      "type": "string",
      "defaultValue": "SQL_Latin1_General_CP1_CI_AS",
      "metadata": {
        "description": "The SQL Database collation."
      }
    },
    "location": {
      "type": "string",
      "defaultValue": "[resourceGroup().location]",
      "metadata": {
        "description": "Resource location"
      }
    }
  },
  "resources": [
    {
      "type": "Microsoft.Sql/servers",
      "apiVersion": "2023-08-01-preview",
      "name": "[parameters('sqlServerName')]",
      "location": "[parameters('location')]",
      "properties": {
        "administratorLogin": "[parameters('sqlAdministratorLogin')]",
        "administratorLoginPassword": "[parameters('sqlAdministratorPassword')]",
        "version": "12.0",
        "publicNetworkAccess": "Enabled",
        "minimalTlsVersion": "1.2",
        "restrictOutboundNetworkAccess": "Disabled"
      }
    },
    {
      "type": "Microsoft.Sql/servers/databases",
      "apiVersion": "2023-08-01-preview",
      "name": "[format('{0}/{1}', parameters('sqlServerName'), parameters('databasesName'))]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "DataWarehouse",
        "tier": "DataWarehouse",
        "capacity": "[parameters('capacity')]"
      },
      "properties": {
        "collation": "[parameters('databaseCollation')]",
        "catalogCollation": "[parameters('databaseCollation')]",
        "readScale": "Disabled",
        "requestedBackupStorageRedundancy": "Geo",
        "isLedgerOn": false
      },
      "dependsOn": [
        "[resourceId('Microsoft.Sql/servers', parameters('sqlServerName'))]"
      ]
    },
    {
      "type": "Microsoft.Sql/servers/databases/transparentDataEncryption",
      "apiVersion": "2023-08-01-preview",
      "name": "[format('{0}/{1}/{2}', parameters('sqlServerName'), parameters('databasesName'), 'current')]",
      "properties": {
        "state": "[parameters('transparentDataEncryption')]"
      },
      "dependsOn": [
        "[resourceId('Microsoft.Sql/servers/databases', parameters('sqlServerName'), parameters('databasesName'))]"
      ]
    },
    {
      "type": "Microsoft.Sql/servers/securityAlertPolicies",
      "apiVersion": "2023-08-01-preview",
      "name": "[format('{0}/{1}', parameters('sqlServerName'), 'default')]",
      "properties": {
        "state": "Enabled"
      },
      "dependsOn": [
        "[resourceId('Microsoft.Sql/servers', parameters('sqlServerName'))]"
      ]
    },
    {
      "type": "Microsoft.Sql/servers/auditingSettings",
      "apiVersion": "2023-08-01-preview",
      "name": "[format('{0}/{1}', parameters('sqlServerName'), 'default')]",
      "properties": {
        "isAzureMonitorTargetEnabled": true,
        "state": "Enabled",
        "retentionDays": 7,
        "auditActionsAndGroups": [
          "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP",
          "FAILED_DATABASE_AUTHENTICATION_GROUP",
          "BATCH_COMPLETED_GROUP"
        ]
      },
      "dependsOn": [
        "[resourceId('Microsoft.Sql/servers', parameters('sqlServerName'))]"
      ]
    }
  ],
  "outputs": {
    "location": {
      "type": "string",
      "value": "[parameters('location')]"
    },
    "name": {
      "type": "string",
      "value": "[parameters('sqlServerName')]"
    },
    "resourceGroupName": {
      "type": "string",
      "value": "[resourceGroup().name]"
    },
    "resourceId": {
      "type": "string",
      "value": "[resourceId('Microsoft.Sql/servers', parameters('sqlServerName'))]"
    }
  }
}

Il modello definisce una risorsa:

Distribuire il modello

  1. Selezionare l'immagine seguente per accedere ad Azure e aprire un modello. Questo modello crea un pool SQL dedicato (in precedenza SQL Data Warehouse).

    Pulsante per distribuire il modello di Resource Manager in Azure.

  2. Immettere o aggiornare i valori seguenti:

    • Sottoscrizione: selezionare una sottoscrizione di Azure.
    • Gruppo di risorse: selezionare Crea nuovo, immettere un nome univoco per il gruppo di risorse e selezionare OK. Un nuovo gruppo di risorse faciliterà la pulizia delle risorse.
    • Area geografica: selezionare un'area geografica. Ad esempio Stati Uniti centrali.
    • Nome SQL Server: accettare il nome predefinito o immetterne uno nuovo per SQL Server.
    • Accesso amministratore SQL: immettere il nome utente dell'amministratore di SQL Server.
    • Password amministratore SQL: immettere la password dell'amministratore di SQL Server.
    • Nome Data Warehouse: immettere un nome del pool SQL dedicato.
    • Transparent Data Encryption: accettare l'impostazione predefinita, abilitata.
    • Obiettivo del livello di servizio: accettare il valore predefinito DW400c.
    • Posizione: accettare la posizione predefinita del gruppo di risorse.
    • Rivedi e crea: seleziona.
    • Crea: selezionare.

Esaminare le risorse distribuite

Per controllare le risorse distribuite, è possibile usare il portale di Azure, l'interfaccia della riga di comando di Azure o lo script di Azure PowerShell.

echo "Enter the resource group where your dedicated SQL pool (formerly SQL DW) exists:" &&
read resourcegroupName &&
az resource list --resource-group $resourcegroupName

Pulire le risorse

Quando non è più necessario, eliminare il gruppo di risorse con l'interfaccia della riga di comando di Azure o con Azure PowerShell:

echo "Enter the Resource Group name:" &&
read resourceGroupName &&
az group delete --name $resourceGroupName &&
echo "Press [ENTER] to continue ..."

Passaggi successivi

In questo avvio rapido, hai creato un pool SQL dedicato (in precedenza SQL Data Warehouse) usando un modello di Azure Resource Manager e hai convalidato la distribuzione. Per altre informazioni su Azure Synapse Analytics e Azure Resource Manager, vedere gli articoli seguenti.