Démarrage rapide : Créer un pool SQL dédié Azure Synapse Analytics (anciennement SQL DW) au moyen d’un modèle ARM

Conseil / Astuce

Microsoft Fabric Data Warehouse est un entrepôt relationnel à l’échelle de l’entreprise sur une base de lac de données, avec une architecture future, une IA intégrée et de nouvelles fonctionnalités. Si vous débutez avec l'entreposage de données, commencez par Fabric Data Warehouse. Les charges de travail de pool SQL existantes dédicées peuvent être mises à niveau vers Fabric pour accéder à de nouvelles fonctionnalités dans la science des données, l’analytique en temps réel et la création de rapports.

Ce modèle Azure Resource Manager (modèle ARM) crée un pool SQL dédié (anciennement SQL DW) avec Transparent Data Encryption activé. Le pool SQL dédié (anciennement SQL DW) fait référence aux fonctionnalités d’entreposage de données d’entreprise qui sont généralement disponibles dans Azure Synapse.

Un modèle Azure Resource Manager est un fichier JSON (JavaScript Object Notation) qui définit l’infrastructure et la configuration de votre projet. Le modèle utilise la syntaxe déclarative. Vous décrivez votre déploiement prévu sans écrire la séquence de commandes de programmation pour créer le déploiement.

Si votre environnement remplit les prérequis et que vous êtes déjà familiarisé avec l’utilisation des modèles ARM, sélectionnez le bouton Déployer sur Azure. Le modèle s’ouvre dans le portail Azure.

Bouton pour déployer le modèle Resource Manager sur Azure.

Prérequis

Si vous n’avez pas d’abonnement Azure, créez un compte gratuit avant de commencer.

Vérifier le modèle

Le modèle utilisé dans ce démarrage rapide est tiré des modèles de démarrage rapide 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'))]"
    }
  }
}

Le modèle définit une ressource :

Déployer le modèle

  1. Sélectionnez l’image ci-après pour vous connecter à Azure et ouvrir le modèle. Ce modèle crée un pool SQL dédié (anciennement SQL DW).

    Bouton pour déployer le modèle Resource Manager sur Azure.

  2. Entrez ou mettez à jour les valeurs suivantes :

    • Abonnement: Sélectionnez un abonnement Azure.
    • Groupe de ressources : Sélectionnez Créer, entrez un nom unique pour le groupe de ressources et sélectionnez OK. La création d’un nouveau groupe de ressources facilitera le nettoyage des ressources.
    • Région : Sélectionnez une région. Par exemple, USA Centre.
    • Nom du serveur SQL : acceptez le nom par défaut ou entrez un nom pour le serveur SQL.
    • Connexion de l’administrateur SQL : entrez le nom d’administrateur pour le serveur SQL.
    • Mot de passe de l’administrateur SQL : entrez le mot de passe d’administrateur pour le serveur SQL.
    • Nom de l’entrepôt de données : entrez le nom d’un pool SQL dédié.
    • Chiffrement transparent des données : conservez la valeur par défaut, Activé.
    • Objectif de niveau de service : acceptez la valeur par défaut, DW400c.
    • Emplacement : acceptez l’emplacement par défaut du groupe de ressources.
    • Examiner et créer : cochez la case.
    • Créer : cochez la case.

Vérifier les ressources déployées

Vous pouvez utiliser le portail Azure pour vérifier les ressources déployées, ou Azure CLI ou un script Azure PowerShell pour lister les ressources déployées.

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

Nettoyer les ressources

Quand vous n’en avez plus besoin, supprimez le groupe de ressources avec Azure CLI ou Azure PowerShell :

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

Étapes suivantes

Dans le cadre de ce guide de démarrage rapide, vous avez créé un pool SQL dédié (anciennement SQL DW) en utilisant un modèle Azure Resource Manager, puis vous avez vérifié le déploiement. Pour en apprendre davantage sur Azure Synapse Analytics et Azure Resource Manager, consultez les articles ci-dessous.